r3498 - in trunk/pollen-ui-struts2/src/main: resources/i18n webapp/WEB-INF/jsp/poll webapp/js
Author: tchemit Date: 2012-06-16 23:57:35 +0200 (Sat, 16 Jun 2012) New Revision: 3498 Url: http://chorem.org/repositories/revision/pollen/3498 Log: improve + clean create poll form javascript and prefer use css class to mark some widgets to disable when vote started Modified: trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_en_GB.properties trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_fr_FR.properties trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/create.jsp trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/createPoll_choices.jsp trunk/pollen-ui-struts2/src/main/webapp/js/createPoll.js Modified: trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_en_GB.properties =================================================================== --- trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_en_GB.properties 2012-06-16 21:50:27 UTC (rev 3497) +++ trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_en_GB.properties 2012-06-16 21:57:35 UTC (rev 3498) @@ -319,10 +319,7 @@ pollen.security.error.creator_required=Only the poll creator or an administrator can access this page. pollen.security.error.illegal_access=You are not authorise to access this page for following reason\: pollen.security.error.no.pollId=No poll id given -pollen.security.error.poll.not.closed.and.results.not.continuous=The poll is not closed and results are not continuous pollen.security.error.poll.not.found=Poll not found with this id -pollen.security.error.poll.not.free.and.access.not.granted=You can not access to this non free poll -pollen.security.error.poll.result.private.and.access.not.granted=Results of the poll are private and you do not have credentials to see them pollen.security.error.poll_access_required=You are not authorise to access this poll page. pollen.security.error.poll_required=No poll found with the given url. pollen.security.error.result_access_required=You are not authorise to access this result page. Modified: trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_fr_FR.properties =================================================================== --- trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_fr_FR.properties 2012-06-16 21:50:27 UTC (rev 3497) +++ trunk/pollen-ui-struts2/src/main/resources/i18n/pollen-ui-struts2_fr_FR.properties 2012-06-16 21:57:35 UTC (rev 3498) @@ -319,10 +319,7 @@ pollen.security.error.creator_required=Seul le créateur du sondage ou un administrateur peut accéder à cette page. pollen.security.error.illegal_access=Vous n'êtes pas autorisé à accéder à cette page pour la raison suivante \: pollen.security.error.no.pollId=Pas d'identifiant de sondage donné. -pollen.security.error.poll.not.closed.and.results.not.continuous= pollen.security.error.poll.not.found=Sondage non trouvé pour l'identifiant donné -pollen.security.error.poll.not.free.and.access.not.granted=Vou s n'avez pas accès à ce sondage restreint -pollen.security.error.poll.result.private.and.access.not.granted=Vous n'avez pas accès aux résultats privés de ce sondage pollen.security.error.poll_access_required=Vous n'êtes pas autorisé à accéder à cette page de sondage. pollen.security.error.poll_required=Aucun sondage à l'url donné. pollen.security.error.result_access_required=Vous n'êtes pas autorisé à accéder à cette page de résultats. Modified: trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/create.jsp =================================================================== --- trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/create.jsp 2012-06-16 21:50:27 UTC (rev 3497) +++ trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/create.jsp 2012-06-16 21:57:35 UTC (rev 3498) @@ -57,7 +57,6 @@ voteCountingType:'<s:property value="%{poll.voteCountingType.name()}"/>', choiceType:'<s:property value="%{poll.choiceType.name()}"/>', pollType:'<s:property value="%{poll.pollType.name()}"/>', - confirmCloseTitle:"<s:text name='pollen.title.close.poll'/>", confirmCloseUrl:'<s:url action="confirmClosePoll/" namespace="/poll"/>' + '<s:property value="%{poll.adminId}"/>', @@ -101,7 +100,7 @@ <br/> - <fieldset> + <fieldset class="disableForVoteStarted"> <legend> <s:text name="pollen.common.voteCountingType"/> <img src="<s:url value='/img/tooltip.png'/>" class="tooltip" @@ -109,7 +108,7 @@ title="<s:text name='pollen.common.voteCountingType.help'/>"/> </legend> <s:radio key='poll.voteCountingType' list="voteCountingTypes" - label='' theme="simple" disabled="%{voteStarted}"/> + label='' theme="simple"/> </fieldset> <br/> @@ -146,11 +145,10 @@ alt="<s:text name='pollen.fieldset.pollDate.options.help'/>"/> </legend> - <sj:datepicker key="poll.beginDate" + <sj:datepicker key="poll.beginDate" cssClass="disableForVoteStarted" displayFormat="%{getText('pollen.common.datePickerPattern')}" label="%{getText('pollen.common.beginDate')}" - timepicker="true" - disabled="%{voteStarted}"/> + timepicker="true"/> <sj:datepicker key="poll.endDate" displayFormat="%{getText('pollen.common.datePickerPattern')}" timepicker="true" @@ -158,7 +156,7 @@ </fieldset> <br/> - <fieldset> + <fieldset class="disableForVoteStarted"> <legend> <s:text name="pollen.fieldset.choice.options"/> <img src="<s:url value='/img/tooltip.png'/>" class="tooltip" @@ -191,7 +189,7 @@ </fieldset> <br/> - <fieldset> + <fieldset class="disableForVoteStarted"> <legend> <s:text name="pollen.fieldset.vote.options"/> <img src="<s:url value='/img/tooltip.png'/>" class="tooltip" @@ -250,7 +248,7 @@ </fieldset> <br/> - <fieldset> + <fieldset class="disableForVoteStarted"> <legend> <s:text name="pollen.common.pollType"/> <img src="<s:url value='/img/tooltip.png'/>" class="tooltip" @@ -258,8 +256,7 @@ alt="<s:text name='pollen.common.pollType.help'/>"/> </legend> <s:radio key='poll.pollType' list="pollTypes" - label='%{getText("pollen.common.pollType")}' - disabled="%{voteStarted}"/> + label='%{getText("pollen.common.pollType")}'/> <hr/> <div id="pollTypeFREE" class="pollType"> @@ -288,12 +285,11 @@ </div> <div align="center"> <s:submit key="pollen.action.addVotingList" theme="simple" - onclick="return addNewVotingList();" - disabled="%{voteStarted}"/> + onclick="return addNewVotingList();"/> <s:if test="userLoggued"> <s:submit key="pollen.action.addVotingListFromPersonList" onclick='return selectPersonListToCreateNewVotingList();' - theme="simple" disabled="%{voteStarted}"/> + theme="simple"/> </s:if> </div> </div> @@ -338,10 +334,11 @@ } if (<s:property value="%{poll.closed}"/>) { - $('#registerForm input, textarea').attr('disabled', true); - $('#registerForm :button, fieldset a, :submit, input[type="file"]').hide(); + disablePoll(); } - + if (<s:property value="%{voteStarted}"/>) { + disableWhenVoteStarted(); + } }); </script> Modified: trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/createPoll_choices.jsp =================================================================== --- trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/createPoll_choices.jsp 2012-06-16 21:50:27 UTC (rev 3497) +++ trunk/pollen-ui-struts2/src/main/webapp/WEB-INF/jsp/poll/createPoll_choices.jsp 2012-06-16 21:57:35 UTC (rev 3498) @@ -24,220 +24,212 @@ <%@ taglib prefix="s" uri="/struts-tags" %> <%@ taglib prefix="sp" uri="/nuiton-tags" %> <%@ taglib prefix="sj" uri="/struts-jquery-tags" %> -<fieldset> -<legend><s:text name="pollen.fieldset.poll.choices"/></legend> -<s:radio key='poll.choiceType' list="choiceTypes" label='' - theme="simple" disabled="%{voteStarted}"/> -<hr/> -<s:fielderror fieldName="poll.choices" id="poll_choices_error" /> +<fieldset class="disableForVoteStarted"> + <legend><s:text name="pollen.fieldset.poll.choices"/></legend> + <s:radio key='poll.choiceType' list="choiceTypes" label='' theme="simple"/> + <hr/> + <s:fielderror fieldName="poll.choices" id="poll_choices_error"/> -<s:set id='deleteTitle'><s:text - name="pollen.action.pollChoiceDelete"/></s:set> -<s:set id='upTitle'><s:text name="pollen.action.pollChoiceUp"/></s:set> -<s:set id='downTitle'><s:text name="pollen.action.pollChoiceDown"/></s:set> + <s:set id='deleteTitle'><s:text + name="pollen.action.pollChoiceDelete"/></s:set> + <s:set id='upTitle'><s:text name="pollen.action.pollChoiceUp"/></s:set> + <s:set id='downTitle'><s:text name="pollen.action.pollChoiceDown"/></s:set> -<div id="choicesTEXT" class="choices"> - <s:iterator value="textChoices" status="status" var="choice"> - <s:set name="choiceNumber"><s:property value="%{#status.index}"/></s:set> - <s:set name="prefix">textChoice_<s:property - value="%{#choiceNumber}"/></s:set> - <div id='choicesTEXT_<s:property value="choiceNumber"/>'> - <s:hidden key='%{#prefix}.topiaId' value='%{#choice.topiaId}' label=''/> - <sp:fielderror fieldName="%{#prefix}" id="%{#prefix}_error"/> - <div class="fleft choiceName"> - <sp:fielderror fieldName="%{#prefix}.name" id="%{#prefix}.name_error"/> - <s:label for="%{#prefix}.name" id="choicesTEXT_label_%{#choiceNumber}" - theme="simple" value=''/> - <s:textfield cssClass="nameField" id='%{#prefix}.name' - key="%{#prefix}.name" - label='' theme="simple" value="%{#choice.name}" - disabled="%{voteStarted}"/> - - - <s:label for="%{#prefix}.description" key="pollen.common.description" - theme="simple"/> - <%--/div> - <div class="fleft"--%> - <s:textarea cols="30" id="%{#prefix}.description" label='' - theme="simple" - key="%{#prefix}.description" - value="%{#choice.description}" - disabled="%{voteStarted}"/> - </div> - <s:if test="!voteStarted"> - <div class="fright"> - <s:a id='choicesTEXT_down_%{choiceNumber}' - cssClass="hidden" href='#' - onclick="return downChoice('choicesTEXT_%{choiceNumber}')"> - <image alt='<s:property value="downTitle"/>' - title='<s:property value="downTitle"/>' - src="<s:url value='/img/1downarrow.png'/>"></image> - </s:a> - <s:a id='choicesTEXT_up_%{choiceNumber}' href='#' cssClass="hidden" - onclick="return upChoice('choicesTEXT_%{choiceNumber}')"> - <image alt='<s:property value="upTitle"/>' - title='<s:property value="upTitle"/>' - src="<s:url value='/img/1uparrow.png'/>"></image> - </s:a> - <s:a href='#' - onclick="return deleteChoice('choicesTEXT_%{choiceNumber}')"> - <image alt='<s:property value="deleteTitle"/>' - title='<s:property value="deleteTitle"/>' - src="<s:url value='/img/delete.png'/>"></image> - </s:a> + <div id="choicesTEXT" class="choices"> + <s:iterator value="textChoices" status="status" var="choice"> + <s:set name="choiceNumber"><s:property value="%{#status.index}"/></s:set> + <s:set name="prefix">textChoice_<s:property + value="%{#choiceNumber}"/></s:set> + <div id='choicesTEXT_<s:property value="choiceNumber"/>'> + <s:hidden key='%{#prefix}.topiaId' value='%{#choice.topiaId}' label=''/> + <sp:fielderror fieldName="%{#prefix}" id="%{#prefix}_error"/> + <div class="fleft choiceName"> + <sp:fielderror fieldName="%{#prefix}.name" + id="%{#prefix}.name_error"/> + <s:label for="%{#prefix}.name" id="choicesTEXT_label_%{#choiceNumber}" + theme="simple" value=''/> + <s:textfield cssClass="nameField" id='%{#prefix}.name' theme="simple" + key="%{#prefix}.name" label='' value="%{#choice.name}"/> + - + <s:label for="%{#prefix}.description" key="pollen.common.description" + theme="simple"/> + <%--/div> + <div class="fleft"--%> + <s:textarea cols="30" id="%{#prefix}.description" label='' + theme="simple" key="%{#prefix}.description" + value="%{#choice.description}"/> </div> - </s:if> - <div class="cleanBoth"></div> - </div> - </s:iterator> -</div> -<div id="choicesDATE" class="choices"> - <s:iterator value="dateChoices" status="status" var="choice"> - <s:set name="choiceNumber"><s:property value="%{#status.index}"/></s:set> - <s:set name="prefix">dateChoice_<s:property - value="%{#choiceNumber}"/></s:set> - <div id='choicesDATE_<s:property value="choiceNumber"/>'> - <s:hidden key='%{#prefix}.topiaId' id='%{#prefix}.topiaId' - value='%{#choice.topiaId}' label='' theme="simple"/> - <sp:fielderror fieldName="%{#prefix}" id="%{#prefix}_error"/> - <div class="fleft choiceName"> - <sp:fielderror fieldName="%{#prefix}.name" id="%{#prefix}.name_error"/> - <s:label for="%{#prefix}.name" id="choicesDATE_label_%{choiceNumber}" - theme="simple" value=''/> - <sj:datepicker id='%{#prefix}.name' key="%{#prefix}.name" - changeMonth="true" - changeYear="true" labelSeparator="" theme="simple" - label="" - timepicker="true" value="%{#choice.name}" - displayFormat="%{getText('pollen.common.datePickerPattern')}" - disabled="%{voteStarted}"/> - - - <s:label for="%{#prefix}.description" key="pollen.common.description" - theme="simple"/> + <s:if test="!voteStarted"> + <div class="fright"> + <s:a id='choicesTEXT_down_%{choiceNumber}' + cssClass="hidden" href='#' + onclick="return downChoice('choicesTEXT_%{choiceNumber}')"> + <image alt='<s:property value="downTitle"/>' + title='<s:property value="downTitle"/>' + src="<s:url value='/img/1downarrow.png'/>"></image> + </s:a> + <s:a id='choicesTEXT_up_%{choiceNumber}' href='#' cssClass="hidden" + onclick="return upChoice('choicesTEXT_%{choiceNumber}')"> + <image alt='<s:property value="upTitle"/>' + title='<s:property value="upTitle"/>' + src="<s:url value='/img/1uparrow.png'/>"></image> + </s:a> + <s:a href='#' + onclick="return deleteChoice('choicesTEXT_%{choiceNumber}')"> + <image alt='<s:property value="deleteTitle"/>' + title='<s:property value="deleteTitle"/>' + src="<s:url value='/img/delete.png'/>"></image> + </s:a> + </div> + </s:if> + <div class="cleanBoth"></div> </div> - <div class="fleft"> - <s:textarea cols="30" id="%{#prefix}.description" - key="%{#prefix}.description" label='' theme="simple" - value="%{#choice.description}" - disabled="%{voteStarted}"/> - </div> - <s:if test="!voteStarted"> - <div class="fright"> - <s:a id='choicesDATE_down_%{choiceNumber}' - cssClass="hidden" href='#' - onclick="return downChoice('choicesDATE_%{choiceNumber}')"> - <image alt='<s:property value="downTitle"/>' - title='<s:property value="downTitle"/>' - src="<s:url value='/img/1downarrow.png'/>"></image> - </s:a> - <s:a id='choicesDATE_up_%{choiceNumber}' href='#' cssClass="hidden" - onclick="return upChoice('choicesDATE_%{choiceNumber}')"> - <image alt='<s:property value="upTitle"/>' - title='<s:property value="upTitle"/>' - src="<s:url value='/img/1uparrow.png'/>"></image> - </s:a> - <s:a href='#' - onclick="return deleteChoice('choicesDATE_%{choiceNumber}')"> - <image alt='<s:property value="deleteTitle"/>' - title='<s:property value="deleteTitle"/>' - src="<s:url value='/img/delete.png'/>"></image> - </s:a> + </s:iterator> + </div> + <div id="choicesDATE" class="choices"> + <s:iterator value="dateChoices" status="status" var="choice"> + <s:set name="choiceNumber"><s:property value="%{#status.index}"/></s:set> + <s:set name="prefix">dateChoice_<s:property + value="%{#choiceNumber}"/></s:set> + <div id='choicesDATE_<s:property value="choiceNumber"/>'> + <s:hidden key='%{#prefix}.topiaId' id='%{#prefix}.topiaId' + theme="simple" + value='%{#choice.topiaId}' label=''/> + <sp:fielderror fieldName="%{#prefix}" id="%{#prefix}_error"/> + <div class="fleft choiceName"> + <sp:fielderror fieldName="%{#prefix}.name" + id="%{#prefix}.name_error"/> + <s:label for="%{#prefix}.name" id="choicesDATE_label_%{choiceNumber}" + theme="simple" value=''/> + <sj:datepicker id='%{#prefix}.name' key="%{#prefix}.name" label="" + changeMonth="true" changeYear="true" labelSeparator="" + theme="simple" timepicker="true" + value="%{#choice.name}" + displayFormat="%{getText('pollen.common.datePickerPattern')}"/> + - + <s:label for="%{#prefix}.description" key="pollen.common.description" + theme="simple"/> </div> - </s:if> - <div class="cleanBoth"></div> - </div> - </s:iterator> -</div> -<div id="choicesIMAGE" class="choices"> - <s:iterator value="imageChoices" status="status" var="choice"> - <s:set name="choiceNumber"><s:property value="%{#status.index}"/></s:set> - <s:set name="prefix">imageChoice_<s:property - value="%{#choiceNumber}"/></s:set> - <div id='choicesIMAGE_<s:property value="choiceNumber"/>'> - <s:hidden key='%{#prefix}.topiaId' value='%{#choice.topiaId}' label=''/> - <sp:fielderror fieldName="%{#prefix}" id="%{#prefix}_error"/> - <div class="fleft choiceName"> - <sp:fielderror fieldName="%{#prefix}.name" id="%{#prefix}.name_error"/> - <s:label for="%{#prefix}.name" id="choicesIMAGE_label_%{choiceNumber}" - theme="simple" value=''/> - <s:if test="#choice.name != null"> + <div class="fleft"> + <s:textarea cols="30" id="%{#prefix}.description" theme="simple" + key="%{#prefix}.description" label='' + value="%{#choice.description}"/> + </div> + <s:if test="!voteStarted"> + <div class="fright"> + <s:a id='choicesDATE_down_%{choiceNumber}' cssClass="hidden" + href='#' + onclick="return downChoice('choicesDATE_%{choiceNumber}')"> + <image alt='<s:property value="downTitle"/>' + title='<s:property value="downTitle"/>' + src="<s:url value='/img/1downarrow.png'/>"></image> + </s:a> + <s:a id='choicesDATE_up_%{choiceNumber}' href='#' cssClass="hidden" + onclick="return upChoice('choicesDATE_%{choiceNumber}')"> + <image alt='<s:property value="upTitle"/>' + title='<s:property value="upTitle"/>' + src="<s:url value='/img/1uparrow.png'/>"></image> + </s:a> + <s:a href='#' + onclick="return deleteChoice('choicesDATE_%{choiceNumber}')"> + <image alt='<s:property value="deleteTitle"/>' + title='<s:property value="deleteTitle"/>' + src="<s:url value='/img/delete.png'/>"></image> + </s:a> + </div> + </s:if> + <div class="cleanBoth"></div> + </div> + </s:iterator> + </div> + <div id="choicesIMAGE" class="choices"> + <s:iterator value="imageChoices" status="status" var="choice"> + <s:set name="choiceNumber"><s:property value="%{#status.index}"/></s:set> + <s:set name="prefix">imageChoice_<s:property + value="%{#choiceNumber}"/></s:set> + <div id='choicesIMAGE_<s:property value="choiceNumber"/>'> + <s:hidden key='%{#prefix}.topiaId' value='%{#choice.topiaId}' label=''/> + <sp:fielderror fieldName="%{#prefix}" id="%{#prefix}_error"/> + <div class="fleft choiceName"> + <sp:fielderror fieldName="%{#prefix}.name" + id="%{#prefix}.name_error"/> + <s:label for="%{#prefix}.name" id="choicesIMAGE_label_%{choiceNumber}" + theme="simple" value=''/> + <s:if test="#choice.name != null"> - <%--Uploaded image--%> - <s:hidden id="%{#prefix}.name" name="%{#prefix}.name" - value="%{#choice.name}" label='' theme="simple"/> + <%--Uploaded image--%> + <s:hidden id="%{#prefix}.name" name="%{#prefix}.name" + value="%{#choice.name}" label='' theme="simple"/> - <s:hidden id="%{#prefix}.location" name="%{#prefix}.location" - value="%{#choice.location}" label='' theme="simple"/> - <s:url id="imageUrl" namespace="/io" action="getPollChoiceImage" - escapeAmp="true"> - <s:param name="choiceTokenId"> - imagechoicesThumb_<s:property value='name'/> - </s:param> - </s:url> - <img name="<s:property value="#prefix"/>.thumb" - alt="<s:property value='name'/>" - title="<s:property value='name'/>" - src="<s:property value='imageUrl'/>"> + <s:hidden id="%{#prefix}.location" name="%{#prefix}.location" + value="%{#choice.location}" label='' theme="simple"/> + <s:url id="imageUrl" namespace="/io" action="getPollChoiceImage" + escapeAmp="true"> + <s:param name="choiceTokenId"> + imagechoicesThumb_<s:property value='name'/> + </s:param> + </s:url> + <img name="<s:property value="#prefix"/>.thumb" + alt="<s:property value='name'/>" + title="<s:property value='name'/>" + src="<s:property value='imageUrl'/>"> - <s:file key='imageChoice[%{#choiceNumber}]' label='' - theme="simple" - cssClass="nameField fleft" - disabled="%{voteStarted}" cssStyle="margin-left:50px;"/> - </s:if> - <s:else> - <%--New image--%> - <s:url id="imageUrl" namespace="/io" action="getPollChoiceImage" - escapeAmp="false" value="/img/7ter.jpg"/> - <img name="<s:property value="#prefix"/>.thumb" - alt="<s:text name='pollen.image.not.loaded'/>" - title="<s:text name='pollen.image.not.loaded'/>" - src="<s:property value='imageUrl'/>" width="100px" height="75px"> - <s:file key='imageChoice[%{#choiceNumber}]' label='' - theme="simple" - cssClass="nameField fleft" - disabled="%{voteStarted}" cssStyle="margin-left:50px;"/> + <s:file key='imageChoice[%{#choiceNumber}]' label='' theme="simple" + cssClass="nameField fleft" cssStyle="margin-left:50px;"/> + </s:if> + <s:else> + <%--New image--%> + <s:url id="imageUrl" namespace="/io" action="getPollChoiceImage" + escapeAmp="false" value="/img/7ter.jpg"/> + <img name="<s:property value="#prefix"/>.thumb" + alt="<s:text name='pollen.image.not.loaded'/>" + title="<s:text name='pollen.image.not.loaded'/>" + src="<s:property value='imageUrl'/>" width="100px" + height="75px"> + <s:file key='imageChoice[%{#choiceNumber}]' label='' theme="simple" + cssClass="nameField fleft" + cssStyle="margin-left:50px;"/> - </s:else> + </s:else> - </div> - <div class="fleft"> - - - <s:label for="%{#prefix}.description" key="pollen.common.description" - theme="simple"/> - <s:textarea cols="30" id="%{#prefix}.description" label='' - theme="simple" - key="%{#prefix}.description" - value="%{#choice.description}" - disabled="%{voteStarted}"/> - </div> - <s:if test="!voteStarted"> - <div class="fright"> - <s:a id='choicesIMAGE_down_%{choiceNumber}' - cssClass="hidden" href='#' - onclick="return downChoice('choicesIMAGE_%{choiceNumber}')"> - <image alt='<s:property value="downTitle"/>' - title='<s:property value="downTitle"/>' - src="<s:url value='/img/1downarrow.png'/>"></image> - </s:a> - <s:a id='choicesIMAGE_up_%{choiceNumber}' href='#' cssClass="hidden" - onclick="return upChoice('choicesIMAGE_%{choiceNumber}')"> - <image alt='<s:property value="upTitle"/>' - title='<s:property value="upTitle"/>' - src="<s:url value='/img/1uparrow.png'/>"></image> - </s:a> - <s:a href='#' - onclick="return deleteChoice('choicesIMAGE_%{choiceNumber}')"> - <image alt='<s:property value="deleteTitle"/>' - title='<s:property value="deleteTitle"/>' - src="<s:url value='/img/delete.png'/>"></image> - </s:a> </div> - </s:if> + <div class="fleft"> + - + <s:label for="%{#prefix}.description" key="pollen.common.description" + theme="simple"/> + <s:textarea cols="30" id="%{#prefix}.description" label='' + theme="simple" key="%{#prefix}.description" + value="%{#choice.description}"/> + </div> + <s:if test="!voteStarted"> + <div class="fright"> + <s:a id='choicesIMAGE_down_%{choiceNumber}' cssClass="hidden" + href='#' + onclick="return downChoice('choicesIMAGE_%{choiceNumber}')"> + <image alt='<s:property value="downTitle"/>' + title='<s:property value="downTitle"/>' + src="<s:url value='/img/1downarrow.png'/>"></image> + </s:a> + <s:a id='choicesIMAGE_up_%{choiceNumber}' href='#' cssClass="hidden" + onclick="return upChoice('choicesIMAGE_%{choiceNumber}')"> + <image alt='<s:property value="upTitle"/>' + title='<s:property value="upTitle"/>' + src="<s:url value='/img/1uparrow.png'/>"></image> + </s:a> + <s:a href='#' + onclick="return deleteChoice('choicesIMAGE_%{choiceNumber}')"> + <image alt='<s:property value="deleteTitle"/>' + title='<s:property value="deleteTitle"/>' + src="<s:url value='/img/delete.png'/>"></image> + </s:a> + </div> + </s:if> - <div class="cleanBoth"></div> - </div> - </s:iterator> -</div> -<hr/> -<s:submit key="pollen.action.addChoice" align="center" - onclick="return addNewChoice();" disabled="%{voteStarted}"/> + <div class="cleanBoth"></div> + </div> + </s:iterator> + </div> + <hr/> + <s:submit key="pollen.action.addChoice" align="center" + onclick="return addNewChoice();"/> </fieldset> Modified: trunk/pollen-ui-struts2/src/main/webapp/js/createPoll.js =================================================================== --- trunk/pollen-ui-struts2/src/main/webapp/js/createPoll.js 2012-06-16 21:50:27 UTC (rev 3497) +++ trunk/pollen-ui-struts2/src/main/webapp/js/createPoll.js 2012-06-16 21:57:35 UTC (rev 3498) @@ -137,7 +137,6 @@ async:false, dataType:"html", success:function (data) { - console.info("My fucking containerId : " + containerId); var container = $("#" + containerId); container.append(data); prepareVotingList(containerId, votingListNumber); @@ -270,7 +269,7 @@ } else { // remove all empty personToList var numbers = getAllPersonToListNumbers(containerId); - for (n in numbers) { + for (var n in numbers) { if (n >= firstNumber) { deletePersonToList(containerId + "_" + n); } @@ -470,29 +469,24 @@ function upChoice(choiceId) { var choice = $('#' + choiceId); - var containerId = choice.data('choiceType'); var choicePrefix = choice.data('choicePrefix'); var choiceNumber = choice.data('choiceNumber'); var newChoiceNumber = (choiceNumber - 1); - return switchChoices(containerId, choicePrefix, choiceNumber, newChoiceNumber); + return switchChoices(choicePrefix, choiceNumber, newChoiceNumber); } function downChoice(choiceId) { var choice = $('#' + choiceId); - var containerId = choice.data('choiceType'); var choicePrefix = choice.data('choicePrefix'); var choiceNumber = choice.data('choiceNumber'); var newChoiceNumber = (choiceNumber + 1); - return switchChoices(containerId, choicePrefix, choiceNumber, newChoiceNumber); + return switchChoices(choicePrefix, choiceNumber, newChoiceNumber); } -function switchChoices(containerId, choicePrefix, choiceNumber, newChoiceNumber) { +function switchChoices( choicePrefix, choiceNumber, newChoiceNumber) { - //console.info("will switch (" + choicePrefix + ") [" + choiceNumber - // + "] to [" + newChoiceNumber + "]"); - // change topiaId switchValue(choicePrefix, choiceNumber, newChoiceNumber, '.topiaId'); // change description @@ -546,7 +540,7 @@ } function confirmClose() { - $('.ui-dialog-title').html(datas['confirmCloseTitle']) + $('.ui-dialog-title').html(datas['confirmCloseTitle']); var dialog = $("#confirmDialog"); var url = datas['confirmCloseUrl'] + '?' + $.param({redirectUrl:datas['confirmCloseRedirectUrl']}); @@ -555,6 +549,23 @@ return false; } +function disablePoll() { + $('#registerForm input, textarea').attr('disabled', true); + $('#registerForm :button, fieldset a, :submit, input[type="file"]').hide(); +} + +function disableWhenVoteStarted() { + $('#registerForm input.disableForVoteStarted').attr('disabled', true); + $('#registerForm textarea.disableForVoteStarted').attr('disabled', true); + $('#'+$('#registerForm input.disableForVoteStarted').parent().attr('id')+' button').hide(); + $('#registerForm .disableForVoteStarted input').attr('disabled', true); + $('#registerForm .disableForVoteStarted textarea').attr('disabled', true); + $('#registerForm .disableForVoteStarted :button').hide(); + $('#registerForm .disableForVoteStarted fieldset a').hide(); + $('#registerForm .disableForVoteStarted :submit').hide(); + $('#registerForm .disableForVoteStarted input[type="file"]').hide(); +} + jQuery(document).ready(function () { function changeChoiceAddAllowed(val) {
participants (1)
-
tchemit@users.chorem.org