From: Crawford C. <cc...@c-...> - 2007-08-27 08:36:37
|
Hi Arthur, I'm keen to reduce core reliance on Javascript as far as possible, and=20 especially on little functions that pollute the global JS namespace. Is=20 this *really* necessary? C. de...@de... wrote: > Author: ArthurClemens > Date: 2007-08-26 07:50:30 -0500 (Sun, 26 Aug 2007) > New Revision: 14624 > > Modified: > twiki/branches/MAIN/data/TWiki/WebTopicCreator.txt > Log: > Item4400: pass entered form values when picking a value from a list > > Modified: twiki/branches/MAIN/data/TWiki/WebTopicCreator.txt > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- twiki/branches/MAIN/data/TWiki/WebTopicCreator.txt 2007-08-25 16:12= :07 UTC (rev 14623) > +++ twiki/branches/MAIN/data/TWiki/WebTopicCreator.txt 2007-08-26 12:50= :30 UTC (rev 14624) > @@ -139,33 +139,63 @@ > twiki.CSS.addClass(inButton, "twikiSubmitDisabled"); > inButton.disabled =3D true; > } > +function passFormValuesToNewLocation (inUrl) { > + var url =3D inUrl; > + // remove current parameters so we can override these with newly ente= red values > + url =3D url.split("?")[0]; > + // read values from form > + var params =3D ""; > + var newtopic =3D document.forms.newtopicform.topic.value; > + params +=3D ";newtopic=3D" + newtopic; > + var topicparent =3D document.forms.newtopicform.topicparent.value; > + params +=3D ";topicparent=3D" + topicparent; > + var templatetopic =3D document.forms.newtopicform.templatetopic.value= ; > + params +=3D ";templatetopic=3D" + templatetopic; > + var pickparent =3D "%URLPARAM{"pickparent"}%"; > + params +=3D ";pickparent=3D" + pickparent; > + url +=3D "?" + params; > + document.location.href =3D url; > + return false; > +} > +function openTemplateWindow () { > + var window =3D twiki.Window.openPopup( > + "%SCRIPTURL{view}%/", > + { > + topic:"WebTemplateTopics", > + web:"%SYSTEMWEB%", > + template:"viewplain", > + attributes:"resizable=3D1,scrollbars=3D1,status=3D1,toolbar=3D1= ", > + urlparams:"web=3D%BASEWEB%" > + } > + ); > + return false; > +} > /* ]]> */ > </script> > %ENDSECTION{"javascriptfunctions"}% > -<form name=3D"newtopic" id=3D"newtopic" action=3D"%SCRIPTURLPATH{edit}= %/%BASEWEB%/" onsubmit=3D"return canSubmit(this,true);"><input type=3D"hi= dden" name=3D"onlywikiname" /><input type=3D"hidden" name=3D"onlynewtopic= " value=3D"on" />%ENDSECTION{"formstart"}% > +<form name=3D"newtopicform" id=3D"newtopicform" action=3D"%SCRIPTURLPA= TH{edit}%/%BASEWEB%/" onsubmit=3D"return canSubmit(this,true);"><input ty= pe=3D"hidden" name=3D"onlywikiname" /><input type=3D"hidden" name=3D"only= newtopic" value=3D"on" />%ENDSECTION{"formstart"}% > %STARTSECTION{"topicname"}%<input type=3D"text" class=3D"twikiInputFie= ld" name=3D"topic" id=3D"topic" size=3D"40" %IF{"'%PREFILLTOPIC%'=3D'1'" = then=3D"value=3D\"%BASETOPIC%\""}% %IF{"'%URLPARAM{"newtopic"}%'" then=3D= "value=3D\"%URLPARAM{"newtopic"}%\""}% onkeyup=3D"canSubmit(this.form,fal= se);" onchange=3D"canSubmit(this.form,false);" onblur=3D"canSubmit(this.= form,true);" /> <span id=3D"webTopicCreatorFeedback" class=3D"twikiGrayTe= xt"><!--generated name will be put here--></span>%ENDSECTION{"topicname"}= % > %STARTSECTION{"allownonwikiword"}%<input type=3D"checkbox" class=3D"tw= ikiCheckbox" id=3D"nonwikiword" name=3D"nonwikiword" onchange=3D"canSubmi= t(this.form,false);" onmouseup=3D"canSubmit(this.form,false);" /><label f= or=3D"nonwikiword">%MAKETEXT{"Allow non <nop>WikiWord for the new topic n= ame"}%</label><br /> > -<span class=3D"twikiGrayText">%MAKETEXT{"It's usually best to choose a= <a target=3D'WikiWord' onclick=3D\"return launchWindow('[_1]','WikiWord'= )\" href=3D'[_1]' rel=3D'nofollow'>WikiWord</a> for the new topic name, o= therwise automatic linking may not work. Characters not allowed in topic = names, such as spaces will automatically be removed." args=3D"%SYSTEMWEB%= ,%SCRIPTURLPATH{"view"}%/%SYSTEMWEB%/WikiWord"}%</span> > +<span class=3D"twikiGrayText">%MAKETEXT{"It's usually best to choose a= <a target=3D'WikiWord' onclick=3D\"launchWindow('%SYSTEMWEB%','WikiWord'= ); return false;\" href=3D'%SCRIPTURLPATH{"view"}%/%SYSTEMWEB%/WikiWord' = rel=3D'nofollow'>WikiWord</a> for the new topic name, otherwise automatic= linking may not work. Characters not allowed in topic names, such as spa= ces will automatically be removed."}%</span> > <script type=3D"text/javascript"> > /* <![CDATA[ */ > // Read url param "allowsnonwikiword" to set the initial checkbox valu= e > var allowsNonWikiWord =3D "%URLPARAM{"allowsnonwikiword" default=3Doff= }%"; > -setCheckBoxState(document.forms.newtopic.nonwikiword, twiki.String.isB= oolean(allowsNonWikiWord) ? true : false); > +setCheckBoxState(document.forms.newtopicform.nonwikiword, twiki.String= =2EisBoolean(allowsNonWikiWord) ? true : false); > /* ]]> */ > </script>%ENDSECTION{"allownonwikiword"}% > %STARTSECTION{"topicparent"}% > -%IF{"defined pickparent" then=3D"<select name=3D'topicparent' size=3D'= 10' class=3D'twikiSelect'>$percntTOPICLIST{$quot<option $marker value=3D'= $name'>$name</option>$quot separator=3D$quot$quot selection=3D$quot$percn= tURLPARAM{ $quotparent$quot default=3D$quot%MAKETEXT{"(no parent, orphane= d topic)"}%$quot }$percnt$quot}$percnt<option value=3D$quot$quot>$percntM= AKETEXT{$quot(no parent, orphaned topic)$quot}$percnt</option></select>" = else=3D"<input type=3D'text' size=3D'40' class=3D'twikiInputField' />&nbs= p;<a href=3D'$percntSCRIPTURLPATH{view}$percnt/$percntBASEWEB$percnt/$per= cntBASETOPIC$percnt?$percntQUERYSTRING$percnt;pickparent=3D1'>%MAKETEXT{"= Pick from a list"}%</a>"}%%ENDSECTION{"topicparent"}% > -%STARTSECTION{"topictemplate"}%<select name=3D"templatetopic" class=3D= "twikiSelect"> > -%IF{"$templatetopic" then=3D'<option value=3D"%URLPARAM{templatetopic}= %" selected=3D"selected"></option>'}%<option value=3D"">%MAKETEXT{"Defaul= t template"}%</option>%SEARCH{".*Template$" scope=3D"topic" type=3D"regex= " nonoise=3D"on" format=3D"<option>$topic</option>"}%</select> <a href=3D= "%SCRIPTURL{view}%/%SYSTEMWEB%/WebTemplateTopics?web=3D%BASEWEB%">%MAKETE= XT{"View templates"}%</a> %ENDSECTION{"topictemplate"}% > +%IF{"defined pickparent" then=3D"<select name=3D'topicparent' size=3D'= 10' class=3D'twikiSelect'>$percntTOPICLIST{$quot<option $marker value=3D'= $name'>$name</option>$quot marker=3D$quotselected$quot separator=3D$quot$= quot selection=3D$quot$percntURLPARAM{ $quottopicparent$quot default=3D$q= uot%MAKETEXT{"(no parent, orphaned topic)"}%$quot }$percnt$quot}$percnt<o= ption value=3D$quot$quot>$percntMAKETEXT{$quot(no parent, orphaned topic)= $quot}$percnt</option></select>" else=3D"<input type=3D'text' size=3D'40'= name=3D'topicparent' class=3D'twikiInputField' value=3D'%URLPARAM{topicp= arent}%' /> <a href=3D'$percntSCRIPTURLPATH{view}$percnt/$percntBASE= WEB$percnt/$percntBASETOPIC$percnt?$percntQUERYSTRING$percnt;pickparent=3D= 1' onclick=3D'return passFormValuesToNewLocation($quot$percntSCRIPTURLPAT= H{view}$percnt/$percntBASEWEB$percnt/$percntBASETOPIC$percnt?$percntQUERY= STRING$percnt;pickparent=3D1$quot);'>%MAKETEXT{"Pick from a list"}%</a>"}= %%ENDSECTION{"topicparent"}% > +%STARTSECTION{"topictemplate"}%<select name=3D"templatetopic" class=3D= "twikiSelect">%IF{"'%URLPARAM{"templatetopic"}%'" then=3D'<option selecte= d=3D"selected">%URLPARAM{"templatetopic"}%</option>'}%<option value=3D"">= %MAKETEXT{"Default template"}%</option>%SEARCH{".*Template$" scope=3D"top= ic" type=3D"regex" nonoise=3D"on" format=3D"<option>$topic</option>"}%</s= elect> <a href=3D"%SCRIPTURL{view}%/%SYSTEMWEB%/WebTemplateTopics?web=3D%= BASEWEB%" onclick=3D"openTemplateWindow(); return false;" >%MAKETEXT{"Vie= w templates"}%</a> %ENDSECTION{"topictemplate"}% > %STARTSECTION{"submit"}%<input id=3D"submit" type=3D"submit" class=3D"= twikiSubmit" value=3D'%MAKETEXT{"Create this topic"}%' />%ENDSECTION{"sub= mit"}% > %STARTSECTION{"formend"}% > </form> > <script type=3D"text/javascript"> > //<![CDATA[ > // start with a check > -canSubmit(document.forms.newtopic,false); > +canSubmit(document.forms.newtopicform,false); > // focus input field > -document.forms.newtopic.topic.focus(); > +document.forms.newtopicform.topic.focus(); > //]]> > </script>%ENDSECTION{"formend"}% > %ENDSECTION{"newtopicform"}% > > > -----------------------------------------------------------------------= -- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser.= > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > TWiki-Dev mailing list > TWi...@li... > https://lists.sourceforge.net/lists/listinfo/twiki-dev > > -- > This email has been verified as Virus free > Virus Protection and more available at http://www.plus.net > > =20 --=20 Crawford Currie - C-Dot Consultants http://c-dot.co.uk - A WikiRing Partner http://wikiring.com - landline: +44-1606-330-242 - mobile: +44-7837-877-956 - public key http://keyserver.veridis.com:11371/search?q=3DCrawford+Curri= e |