<%
/******************************************************************************
 * Copyright (c) 2000-2010 e-Deal
 *
 * e-Deal S.A.
 * 55 rue Brillat Savarin
 * 75013 Paris
 * France
 *
 * T: +33 (0)1 53 80 80 30
 * F: +33 (0)1 73 01 69 77
 * http://www.e-deal.com
 * 
 * La diffusion de ce code source sous quelque forme que ce soit sans
 * l'autorisation de E-DEAL est interdite.
 *
 * Vous êtes autorisés à modifier ce code source uniquement pour votre usage
 * propre et sous réserve que les mentions de copyright demeurent intactes.
 *
 * Ce code est fourni en l'état. Aucune garantie d'aucune sorte, explicite ou
 * implicite n'est donnée. En aucun cas E-DEAL ne pourra être tenu pour
 * responsable des dommages pouvant résulter de l'utilisation de ce code
 * source.
 ******************************************************************************/
%>
<%@page session="true"%>
<%@ page import="com.edeal.frontline.navigation.FlRequest" %>
<%@ page import="com.edeal.frontline.FlContext" %>
<%@ page import="com.edeal.frontline.DataDictionary" %>
<%@ page import="com.edeal.frontline.Utils" %>
<%@ page import="com.edeal.frontline.FieldNotInitializedException" %>
<%@ page import="com.edeal.frontline.BasicBean" %>
<%@ page import="java.util.Vector" %>
<%@taglib uri="http://www.e-deal.com/taglib/fl" prefix="fl" %>
<jsp:useBean class="com.edeal.frontline.PublicationOutletBean" id="PublicationOutlet" scope="request"/>
<%
	final org.apache.commons.logging.Log logger = org.apache.commons.logging.LogFactory.getLog(getClass());
	FlRequest flRequest = new FlRequest(request);
	FlContext context = flRequest.getContext();
	DataDictionary dico = context.getDataDictionary();
	String id = null;
	try {
		id = PublicationOutlet.getPboID();
	} catch (FieldNotInitializedException fnie) {
	}
	
	String token = flRequest.getRequestParameterOrAttribute("initToken");
	if (token != null)PublicationOutlet.setPboToken(token);
	else{
		try {
			token = PublicationOutlet.getPboToken();
		} catch (FieldNotInitializedException fnie) {
		}
		
	}
	
	String tokenSecret = flRequest.getRequestParameterOrAttribute("initTokenSecret");
	if (tokenSecret != null)PublicationOutlet.setPboTokenSecret(tokenSecret);
	else{
		try {
			tokenSecret = PublicationOutlet.getPboTokenSecret();
		} catch (FieldNotInitializedException fnie) {
		}
		
	}
	
	String pboPageID = null;
	try {
		pboPageID = PublicationOutlet.getPboPageID();
	} catch (FieldNotInitializedException fnie) {
		pboPageID = "";
	}
	
	String outlet = flRequest.getRequestParameterOrAttribute("outlet");
	if(outlet != null){
		String outletID = dico.getRefIdByCode("out", "Te1", outlet);
		if (outletID != null)PublicationOutlet.setPboOutletType(outletID);
	}
	
	int nbRoles = 0;
	try{
		Vector pboRoles = dico.getRefCodeList("PboAuthRoles");
		nbRoles = pboRoles.size();
	}catch(FieldNotInitializedException fnie){}
	
%>
<script type="text/javascript">
	function get_url(page){
		url = window.location.href;
		url = url.replace("edit_publicationoutlet",page);
		url = url.replace("create_publicationoutlet",page);
		url = url.split("?")[0];
		url = encodeURIComponent(url);
		return url;
	}

	function get_token(){
		outlet = $("#PboOutletType :selected").text();
		window.open('<fl:webapp/>/get_token.fl?outlet='+outlet+'&url='+get_url("load_token"), 'Token', 'menubar=no,status=no,toolbar=no,scrollbars=yes,resizable=yes,width=1000,height=500');
	}

	//Only for FACEBOOK
	function authorize_page(){
		window.open('<fl:webapp/>/get_token.fl?outlet=FACEBOOK&url='+get_url("authorize_page")+'&page_id=true', 'Token', 'menubar=no,status=no,toolbar=no,scrollbars=yes,resizable=yes,width=1000,height=500');
	}

	function showhide_page(){
		if($("#PboOutletType :selected").text() == "facebook"){
			$("#page").show();
		}else{
			$("#page").hide();
		}
	}
	function doOnLoad(){
		showhide_page();
	}

	function doChangePboAuthRoles(){
		if($('#PboAuthAllActors').get(0).checked){
			for(i=0; i<<%=nbRoles%>; i++){
				$('#PboAuthRoles_'+i).attr("checked", false);
			}
		}			
	}

	function doChangePboAuthAllActors(){
		for(i=0; i<<%=nbRoles%>; i++){
			if($('#PboAuthRoles_'+i).get(0).checked){
				$('#PboAuthAllActors').attr("checked", false);
				return;
			}
		}		
	}
</script>
<link href="<fl:webapp/>/css/smalltabs_css.jsp" rel="stylesheet" type="text/css">
<fl:form action="/save_publicationoutlet.fl" bean="PublicationOutlet">
	<input type="hidden" name="PboPageAuthorized" id="PboPageAuthorized" onchange="$('#')"/>
	<fl:bigTabs objectTitle="<%= Utils.getMessage(session, \"L7044\", \"Réseau social\") %>" listTitle="<%= Utils.getMessage(session, \"L7045\", false, true, \"Liste des réseaux sociaux\") %>" ou="<%= \"/edit_publicationoutlet.fl\" + (id != null ? \"?id=\" + id : \"\") %>">
		<table class="container" cellpadding="0">
			<tr>
				<td class="labelTitreFiche"><fl:label field="PboTitle" code="F2016"/></td>
				<td style="padding-left: 10px;">
					<fl:input name="PublicationOutlet" property="PboTitle" mandatoryMsgCode="L63DC" />
				</td>
			</tr>
			<tr class="ligne_separation"><td colspan="4"></td></tr>
		</table>
		<table class="container" cellpadding="0">
			<tr><td colspan="5" class="ligne_separation"/></tr>
			<tr>
				<td class="column2">
					<table class="container" cellpadding="0">
						<fl:fieldEdit property="PboCode" unicityMsgCode="M60CE" mandatoryMsgCode="M2001"/>
						<%if(id != null || token != null || tokenSecret != null){%><fl:fieldEdit property="PboOutletType" readOnly="true" onchange="showhide_page()"/><%}
						else{%><fl:fieldEdit property="PboOutletType" onchange="showhide_page()"/><%} %>	
						<fl:fieldEdit property="PboLogin"/>
						<fl:fieldEdit property="PboPassword"/>	
						<fl:fieldEdit property="PboEnabled"/>																
					</table>
				</td>
				<td class="separation"><div class="separation"></div></td>
				<td class="column2">
					<table class="container" cellpadding="0">
						<tr class="fieldline">
							<td class="dataLabel" id="PboToken_label">
								<div><fl:label field="PboToken" code="F705A"/></div>
								<div title="<fl:getMessage code="L704B" alt="Obtenir un token"/>"><a href="javascript:get_token()"><img src="<fl:webapp/>/icons/ico/executer.gif" alt=""/></a></div>
							</td>
							<td class="dataValue" id="PboToken_value"><div class="input text"><input type="hidden" value="PboToken" name="mandatory"><input type="hidden" value="Code" name="mandatory.PboToken" id="mandatory.PboToken"><input type="text" class="input text chpsTextObligatoire" maxlength="140" value="<%=(token != null)? token : ""%>" name="PboToken" id="PboToken"><span style="display: none;" class="mandatory_alert" id="PboToken_msg">!</span></div></td>
						</tr>
						<fl:fieldEdit property="PboTokenSecret" mandatoryMsgCode="F2000"/>	
						<tr class="fieldline" id="page">
							<td class="dataLabel" id="PboPageID_label">
								<div><fl:label field="PboPageID" code="F7071"/></div>
								<div title="<fl:getMessage code="F7072" alt="Autoriser la publication sur cette page"/>"><a href="javascript:authorize_page()"><img src="<fl:webapp/>/icons/ico/executer.gif" alt=""/></a></div>
							</td>
							<td class="dataValue" id="PboPageID_value"><div class="input text"><input type="text" class="input text" maxlength="50" value="<%=pboPageID %>" name="PboPageID" id="PboPageID"></div></td>
						</tr>
						<fl:fieldEdit property="PboPublicUrl"/>					
					</table>
				</td>
			</tr>
		</table>
		<table class="container" cellpadding="0">
			<tr>
				<td class="column2" colspan="5">
					<table class="container" cellpadding="1">
						<tr><td><fl:label field="PboDescription" code="L2007"/></td></tr>
						<tr><td><fl:input name="PublicationOutlet" property="PboDescription" alt=""/></td></tr>
					</table>
				</td>
			</tr>
		</table>
		<table class="container" cellpadding="0">
			<tr class="ligne_separation"><td></td></tr>
			<tr class="ligne_separation_couleur"><td></td></tr>
			<tr class="ligne_separation"><td></td></tr>
		</table>
		<fl:smallTabs name="PboRead">	
			<fl:sTab id="ROLE" title="<%= Utils.getMessage(session, \"L7048\", \"Autorisation\") %>">
			<table class="container" cellpadding="0">
				<tr><td colspan="5" class="ligne_separation"/></tr>
				<tr>
				<td class="column2">
					<table class="container" cellpadding="0">
						<fl:fieldEdit property="PboAuthAllActors" onclick="doChangePboAuthRoles()"/>
						<fl:fieldEdit property="PboAuthRoles" onclick="doChangePboAuthAllActors()"/>																	
					</table>
				</td>
				<td class="separation"><div class="separation"></div></td>
				<td class="column2">
					<table class="container" cellpadding="0">
						<fl:fieldEdit property="PboAuthActors"/>	
					</table>
				</td>
				</tr>
			</table>	
			</fl:sTab>
		</fl:smallTabs>
	</fl:bigTabs>
</fl:form>