Changeset 587
- Timestamp:
- 07/06/08 11:51:22 (5 years ago)
- Location:
- optiondependency
- Files:
-
- 2 added
- 4 modified
-
acptemplates/optionDependencyUser.tpl (added)
-
eventlistener.xml (modified) (2 diffs)
-
files/lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php (modified) (2 diffs)
-
files/lib/system/event/listener/UserProfileEditOptionDependencyListenerACP.class.php (added)
-
package.xml (modified) (2 diffs)
-
templates/optionDependency.tpl (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
optiondependency/eventlistener.xml
r567 r587 10 10 <eventlistener> 11 11 <eventclassname>UserProfileEditForm</eventclassname> 12 <eventname>assignVariables</eventname> 13 <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php</listenerclassfile> 14 </eventlistener> 15 16 <eventlistener> 17 <eventclassname>MembersSearchForm</eventclassname> 18 <eventname>readData</eventname> 19 <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php</listenerclassfile> 20 </eventlistener> 21 <eventlistener> 22 <eventclassname>MembersSearchForm</eventclassname> 23 <eventname>assignVariables</eventname> 24 <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php</listenerclassfile> 25 </eventlistener> 26 27 <eventlistener> 28 <eventclassname>RegisterForm</eventclassname> 29 <eventname>readData</eventname> 30 <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php</listenerclassfile> 31 </eventlistener> 32 <eventlistener> 33 <eventclassname>RegisterForm</eventclassname> 12 34 <eventname>assignVariables</eventname> 13 35 <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php</listenerclassfile> … … 48 70 <listenerclassfile>lib/system/event/listener/UserOptionListOptionDependencyListener.class.php</listenerclassfile> 49 71 </eventlistener> 72 73 74 <eventlistener> 75 <eventclassname>UserAddForm</eventclassname> 76 <eventname>readData</eventname> 77 <inherit>1</inherit> 78 <environment>admin</environment> 79 <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListenerACP.class.php</listenerclassfile> 80 </eventlistener> 81 <eventlistener> 82 <eventclassname>UserAddForm</eventclassname> 83 <eventname>assignVariables</eventname> 84 <inherit>1</inherit> 85 <environment>admin</environment> 86 <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListenerACP.class.php</listenerclassfile> 87 </eventlistener> 50 88 <!-- /admin --> 51 89 </import> -
optiondependency/files/lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php
r583 r587 50 50 $sql = "SELECT opt.optionType AS srcType, 51 51 opt.optionName AS srcOption, 52 opt.defaultValue AS srcDefault, 52 53 opt2.optionName AS dstOption, 53 54 opt2.optionType AS dstType, 55 opt2.defaultValue AS dstDefault, 54 56 opt.optionDependencyRequest 55 57 FROM wcf".WCF_N."_user_option opt … … 66 68 $optionCategories = array(); 67 69 while ($row = WCF::getDB()->fetchArray($result)) { 68 $row['srcValue'] = WCF::getUser()->$row['srcOption'];69 $row['dstValue'] = WCF::getUser()->$row['dstOption'];70 $row['srcValue'] = empty(WCF::getUser()->$row['srcOption']) ? $row['srcDefault'] : WCF::getUser()->$row['srcOption']; 71 $row['dstValue'] = empty(WCF::getUser()->$row['dstOption']) ? $row['dstDefault'] : WCF::getUser()->$row['dstOption']; 70 72 71 73 if(isset($_POST['values'][$row['srcOption']])) { -
optiondependency/package.xml
r586 r587 6 6 <packagedescription>Links two user option panels. The second value can be influenced by modifying the first value.</packagedescription> 7 7 <packagedescription language="de"><![CDATA[VerknÃŒpft zwei Benutzerprofilfelder. So kann das zweite Feld durch eine Ãnderung im ersten Feld beeinflusst werden.]]></packagedescription> 8 <version>1.0. 1</version>8 <version>1.0.7</version> 9 9 <plugin>com.woltlab.wcf</plugin> 10 10 <isunique>1</isunique> … … 36 36 37 37 <instructions type="update" fromversion="1.0.1"> 38 <files>files.tar</files> 39 <acptemplates>acptemplates.tar</acptemplates> 38 40 <templates>templates.tar</templates> 41 <eventlistener>eventlistener.xml</eventlistener> 39 42 <languages languagecode="hr">hr.xml</languages> 40 43 </instructions> 41 44 42 45 <instructions type="update" fromversion="1.0.0"> 46 <files>files.tar</files> 47 <acptemplates>acptemplates.tar</acptemplates> 43 48 <templates>templates.tar</templates> 49 <eventlistener>eventlistener.xml</eventlistener> 44 50 <languages languagecode="hr">hr.xml</languages> 45 51 </instructions> -
optiondependency/templates/optionDependency.tpl
r582 r587 3 3 {foreach from=$optionDependencies item=dep} 4 4 {assign var=counter value=$counter+1} 5 document.getElementById('{$dep.srcOption}').style.borderStyle = 'dashed';6 5 7 6 function callback{$counter}() { … … 9 8 var val = document.getElementById('{$dep.srcOption}').value; 10 9 var ajaxRequest = new AjaxRequest(); 11 ajaxRequest.openPost('{ $dep.optionDependencyRequest}'+SID_ARG_2ND, 'query='+encodeURIComponent(val), function() {10 ajaxRequest.openPost('{if 'RELATIVE_WBB_DIR'|defined}{RELATIVE_WBB_DIR}{/if}{$dep.optionDependencyRequest}'+SID_ARG_2ND, 'query='+encodeURIComponent(val), function() { 12 11 if(ajaxRequest.xmlHttpRequest.readyState == 4 && ajaxRequest.xmlHttpRequest.status == 200) { 13 12 … … 30 29 } 31 30 31 onloadEvents.push(function() { 32 32 {if $dep.srcType == 'select'} 33 document.getElementById('{$dep.srcOption}').style.borderStyle = 'dashed'; 33 34 document.getElementById('{$dep.srcOption}').onchange = callback{$counter}; 34 onloadEvents.push(function() { 35 callback{$counter}(); 36 }); 35 callback{$counter}(); 37 36 {else if $dep.srcType == 'input'} 38 37 document.getElementById('{$dep.srcOption}').onkeyup = callback{$counter}; 39 38 {/if} 39 }); 40 40 {/foreach} 41 41 </script>
