Changeset 666

Show
Ignore:
Timestamp:
09/28/08 13:28:11 (5 years ago)
Author:
d0nut
Message:

more features in optiondependency ajax

Location:
optiondependency
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • optiondependency/eventlistener.xml

    r587 r666  
    1717                        <eventclassname>MembersSearchForm</eventclassname> 
    1818                        <eventname>readData</eventname> 
     19                        <inherit>1</inherit> 
    1920                        <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php</listenerclassfile> 
    2021                </eventlistener> 
     
    2223                        <eventclassname>MembersSearchForm</eventclassname> 
    2324                        <eventname>assignVariables</eventname> 
     25                        <inherit>1</inherit> 
    2426                        <listenerclassfile>lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php</listenerclassfile> 
    2527                </eventlistener> 
  • optiondependency/files/lib/system/event/listener/UserProfileEditOptionDependencyListener.class.php

    r587 r666  
    6868                $optionCategories = array(); 
    6969                while ($row = WCF::getDB()->fetchArray($result)) { 
    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                        $tmp1 = WCF::getUser()->$row['srcOption']; 
     71                        $tmp2 = WCF::getUser()->$row['dstOption']; 
     72 
     73                        $row['srcValue'] = empty($tmp1) ? $row['srcDefault'] : WCF::getUser()->$row['srcOption']; 
     74                        $row['dstValue'] = empty($tmp2) ? $row['dstDefault'] : WCF::getUser()->$row['dstOption']; 
    7275                         
    7376                        if(isset($_POST['values'][$row['srcOption']])) { 
  • optiondependency/files/lib/system/event/listener/UserProfileEditOptionDependencyListenerACP.class.php

    r587 r666  
    6868                $optionCategories = array(); 
    6969                while ($row = WCF::getDB()->fetchArray($result)) { 
    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']; 
    72                          
     70                        $tmp1 = WCF::getUser()->$row['srcOption']; 
     71                        $tmp2 = WCF::getUser()->$row['dstOption']; 
     72 
     73                        $row['srcValue'] = empty($tmp1) ? $row['srcDefault'] : WCF::getUser()->$row['srcOption']; 
     74                        $row['dstValue'] = empty($tmp2) ? $row['dstDefault'] : WCF::getUser()->$row['dstOption']; 
     75 
    7376                        if(isset($_POST['values'][$row['srcOption']])) { 
    7477                                $row['srcValue'] = $_POST['values'][$row['srcOption']]; 
  • optiondependency/optionals/de.easy-coding.wcf.optiondependency.geo/useroptions.xml

    r567 r666  
    77                                <categoryname>profile.personal</categoryname> 
    88                                <optiontype>select</optiontype> 
    9                                 <defaultvalue>0</defaultvalue> 
     9                                <defaultvalue>DE</defaultvalue> 
    1010                                <selectoptions><![CDATA[0:x]]></selectoptions> 
    1111                        </option> 
     
    1515                                <categoryname>profile.personal</categoryname> 
    1616                                <optiontype>select</optiontype> 
    17                                 <defaultvalue>0</defaultvalue> 
     17                                <defaultvalue>DE.1</defaultvalue> 
    1818                                <selectoptions><![CDATA[0:x]]></selectoptions> 
    1919                        </option> 
  • optiondependency/package.xml

    r587 r666  
    66                <packagedescription>Links two user option panels. The second value can be influenced by modifying the first value.</packagedescription> 
    77                <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.7</version> 
     8                <version>1.1.0</version> 
    99                <plugin>com.woltlab.wcf</plugin> 
    1010                <isunique>1</isunique> 
     
    3535        </instructions> 
    3636         
     37        <instructions type="update" fromversion="1.0.9"> 
     38                <eventlistener>eventlistener.xml</eventlistener> 
     39                <files>files.tar</files> 
     40        </instructions> 
     41         
     42        <instructions type="update" fromversion="1.0.8"> 
     43                <eventlistener>eventlistener.xml</eventlistener> 
     44                <files>files.tar</files> 
     45        </instructions> 
     46         
     47        <instructions type="update" fromversion="1.0.7"> 
     48                <templates>templates.tar</templates> 
     49                <files>files.tar</files> 
     50        </instructions> 
     51         
    3752        <instructions type="update" fromversion="1.0.1"> 
    3853                <files>files.tar</files> 
  • optiondependency/templates/optionDependency.tpl

    r587 r666  
    11<script type="text/javascript"> 
    22{assign var=counter value=0} 
     3var optionDependencyRefs = new Array(); 
    34{foreach from=$optionDependencies item=dep} 
    45        {assign var=counter value=$counter+1} 
     
    2829                {/if} 
    2930        } 
    30  
     31         
    3132        onloadEvents.push(function() { 
    32         {if $dep.srcType == 'select'} 
    33                 document.getElementById('{$dep.srcOption}').style.borderStyle = 'dashed'; 
    34                 document.getElementById('{$dep.srcOption}').onchange = callback{$counter}; 
    35                 callback{$counter}(); 
    36         {else if $dep.srcType == 'input'} 
    37                 document.getElementById('{$dep.srcOption}').onkeyup = callback{$counter}; 
    38         {/if} 
     33                var ob = document.getElementById('{$dep.srcOption}'); 
     34                if(ob) { 
     35                        optionDependencyRefs[{$counter}] = document.getElementById('{$dep.srcOption}').onchange; 
     36                {if $dep.srcType == 'select'} 
     37                        ob.style.borderStyle = 'dashed'; 
     38                        ob.onchange = function() { 
     39                                callback{$counter}(); 
     40                                if(optionDependencyRefs[{$counter}]) { 
     41                                        return optionDependencyRefs[{$counter}](); 
     42                                } 
     43                        } 
     44                        callback{$counter}(); 
     45                {else if $dep.srcType == 'input'} 
     46                        document.getElementById('{$dep.srcOption}').onkeyup = callback{$counter}; 
     47                {/if} 
     48                } 
    3949        }); 
    4050{/foreach}