/[smecontribs]/rpms/smeserver-ddclient/contribs10/smeserver-ddclient-1.3.0-Update-SM2-code-for-new-services-and-protocols.patch
ViewVC logotype

Diff of /rpms/smeserver-ddclient/contribs10/smeserver-ddclient-1.3.0-Update-SM2-code-for-new-services-and-protocols.patch

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

Revision 1.2 by brianr, Mon Dec 4 08:48:10 2023 UTC Revision 1.9 by brianr, Mon Dec 18 11:52:02 2023 UTC
# Line 1  Line 1 
1    diff -urN smeserver-ddclient-1.3.0.old/createlinks smeserver-ddclient-1.3.0/createlinks
2    --- smeserver-ddclient-1.3.0.old/createlinks    2023-11-10 16:11:05.855271810 +0000
3    +++ smeserver-ddclient-1.3.0/createlinks        2023-12-18 10:52:53.495714627 +0000
4    @@ -48,3 +48,6 @@
5     $event = 'post-upgrade';
6      templates2events("/etc/ddclient/ddclient.conf", $event);
7      templates2events("/etc/ppp/ip-up.local", $event);
8    +
9    +# and create an empty cache
10    +# safe_touch("/var/cache/ddclient/ddclient.cache")
11    diff -urN smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers smeserver-ddclient-1.3.0/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers
12    --- smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers        2023-11-10 16:11:05.911271972 +0000
13    +++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates/etc/ddclient/ddclient.conf/10Headers    2023-12-14 11:40:00.000000000 +0000
14    @@ -52,15 +52,16 @@
15            } elsif ( $method eq 'ip') {
16                    # we want to force manually
17                    $OUT.="usev4=ipv4, ipv4=$ForceIP \n";
18    -       } elsif ( $method eq 'cmd') {
19    -               $OUT .="usev4=cmd, cmdv4='$cmd'\n";
20    +       } elsif ( $method eq 'cmdv4') {
21    +               $OUT .="usev4=cmdv4, cmdv4='$cmd'\n";
22            } else {
23                    # fw method
24                    my $fwaddress = $ddclient{'fwaddress'}||'';
25    +               my $fwdevice = $ddclient{'Extinterface'}||'';
26                    my $fwlogin = $ddclient{'fwlogin'}||'';
27                    my $fwpassword = $ddclient{'fwpassword'}||'';
28                    my $fwskip = $ddclient{'fwskip'}||'';
29    -               $OUT .= "usev4=$method, fwv4=$fwaddress";
30    +               $OUT .= "usev4=$fwdevice, fwv4=$fwaddress";
31                    $OUT .= ", fw-login=$fwlogin " if ( $fwlogin ne '' );
32                    $OUT .= ", fw-password=$fwpassword " if ( $fwpassword ne '' );
33                    $OUT .= ", fwv4-skip='$fwskip' " if ( $fwskip ne '' );
34    diff -urN smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service smeserver-ddclient-1.3.0/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service
35    --- smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service  2023-11-10 16:11:05.857271816 +0000
36    +++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates/usr/lib/systemd/system/ddclient.service.d/50koozali.conf/20Service      2023-12-16 10:40:00.000000000 +0000
37    @@ -1,7 +1,7 @@
38     {
39     $debug   = (($ddclient{'debug'}   eq 'enabled') ? "debug"   : "nodebug");
40     $verbose = (($ddclient{'verbose'} eq 'enabled') ? "verbose" : "noverbose");
41    -$quiet   = (($ddclient{'quiet'}   eq 'enabled') ? "quiet"   : "noquiet");
42    +$quiet   = (($ddclient{'quiet'}   eq 'disabled') ? "noquiet"   : "quiet");
43     $syslog  = (($ddclient{'syslog'}  eq "enabled") ? "syslog"  : "nosyslog");
44     $OUT .= "\n";
45     $OUT .= "[Service]\n";
46    diff -urN smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf smeserver-ddclient-1.3.0/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf
47    --- smeserver-ddclient-1.3.0.old/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf 2023-11-10 16:11:05.785271609 +0000
48    +++ smeserver-ddclient-1.3.0/root/etc/e-smith/templates.metadata/etc/ddclient/ddclient.conf     2023-12-15 11:54:47.841967164 +0000
49    @@ -1,3 +1,3 @@
50     UID="ddclient"
51     GID="ddclient"
52    -PERMS=0644
53    +PERMS=0600
54  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm
55  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm     2023-11-10 16:11:05.915271983 +0000  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm     2023-11-10 16:11:05.915271983 +0000
56  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm 2023-12-01 17:16:00.000000000 +0000  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/Controller/Ddclient.pm 2023-12-14 11:33:00.000000000 +0000
57  @@ -114,57 +114,168 @@  @@ -114,90 +114,164 @@
58    
59   my %ddc_datas = ();   my %ddc_datas = ();
60    
61  +sub get_devices_names {  +sub get_devices_names {
62  +       #  +       #
63  +       # Router devices from which it can get ip address  +       # Router/Firewall devices from which it can get ip address
64  +       #  +       #
65  +       my $devices = ( [  +       my $devices = ( [
66  +               [ '2wire' => '2Wire 1701HG Gateway' ],  +               [ '2Wire 1701HG Gateway' => '2wire' ],
67  +               [ '3com-3c886a' => '3com 3c886a 56k Lan Modem' ],  +               [ '3com 3c886a 56k Lan Modem' => '3com-3c886a' ],
68  +               [ '3com-oc-remote812' => '3com OfficeConnect Remote 812' ],  +               [ '3com OfficeConnect Remote 812' => '3com-oc-remote812' ],
69  +               [ 'alcatel-510' => 'Alcatel Speed Touch 510' ],  +               [ 'Alcatel Speed Touch 510' => 'alcatel-510' ],
70  +               [ 'alcatel-530' => 'Alcatel/Thomson SpeedTouch 530' ],  +               [ 'Alcatel/Thomson SpeedTouch 530' => 'alcatel-530' ],
71  +               [ 'alcatel-stp' => 'Alcatel Speed Touch Pro' ],  +               [ 'Alcatel Speed Touch Pro' => 'alcatel-stp' ],
72  +               [ 'allnet-1298' => 'Allnet 1298' ],  +               [ 'Allnet 1298' => 'allnet-1298' ],
73  +               [ 'cayman-3220h' => 'Cayman 3220-H DSL' ],  +               [ 'Cayman 3220-H DSL' => 'cayman-3220h' ],
74  +               [ 'dlink-524' => 'D-Link DI-524' ],  +               [ 'D-Link DI-524' => 'dlink-524' ],
75  +               [ 'dlink-604' => 'D-Link DI-604' ],  +               [ 'D-Link DI-604' => 'dlink-604' ],
76  +               [ 'dlink-614' => 'D-Link DI-614+' ],  +               [ 'dlink-614' => 'D-Link DI-614+' ],
77  +               [ 'e-tech' => 'E-tech Router' ],  +               [ 'e-tech' => 'E-tech Router' ],
78  +               [ 'elsa-lancom-dsl10' => 'ELSA LanCom DSL/10 DSL FW' ],  +               [ 'elsa-lancom-dsl10' => 'ELSA LanCom DSL/10 DSL FW' ],
# Line 56  diff -urN smeserver-ddclient-1.3.0.old/r Line 109  diff -urN smeserver-ddclient-1.3.0.old/r
109  +               [ 'watchguard-edge-x' => 'Watchguard Edge X FW' ],  +               [ 'watchguard-edge-x' => 'Watchguard Edge X FW' ],
110  +               [ 'watchguard-soho' => 'Watchguard SOHO FW' ],  +               [ 'watchguard-soho' => 'Watchguard SOHO FW' ],
111  +               [ 'westell-6100' => 'Westell C90-610015-06 DSL Router' ],  +               [ 'westell-6100' => 'Westell C90-610015-06 DSL Router' ],
112  +               [ 'xsense-aero' => 'Xsense Aero']  +               [ 'xsense-aero' => 'Xsense Aero' ]      
113  +       ] );  +       ] );
114  +        return $devices;  +        return $devices;
115  +  +
# Line 77  diff -urN smeserver-ddclient-1.3.0.old/r Line 130  diff -urN smeserver-ddclient-1.3.0.old/r
130  +       # Web Services from which it can get ip address  +       # Web Services from which it can get ip address
131  +       #  +       #
132  +       my $webservices = ( [  +       my $webservices = ( [
133  +               [ 'dyndnshttp://checkip.dyndns.org/' => 'dyndns' ],  +               [ 'dyndns-http://checkip.dyndns.org/' => 'dyndns' ],
134  +               [ 'freednshttps://freedns.afraid.org/dynamic/check.php' => 'freedns' ],  +               [ 'freedns-https://freedns.afraid.org/dynamic/check.php' => 'freedns' ],
135  +               [ 'googledomainshttps://domains.google.com/checkip' => 'googledomains' ],  +               [ 'googledomains-https://domains.google.com/checkip' => 'googledomains' ],
136  +               [ 'hehttps://checkip.dns.he.net/' => 'he' ],  +               [ 'he-https://checkip.dns.he.net/' => 'he' ],
137  +               [ 'ip4only.mehttps://ip4only.me/api/' => 'ip4only.me' ],  +               [ 'ip4only.me-https://ip4only.me/api/' => 'ip4only.me' ],
138  +               [ 'ip6only.mehttps://ip6only.me/api/' => 'ip6only.me' ],  +               [ 'ip6only.me-https://ip6only.me/api/' => 'ip6only.me' ],
139  +               [ 'ipify-ipv4https://api.ipify.org/' => 'ipify-ipv4' ],  +               [ 'ipify-ipv4-https://api.ipify.org/' => 'ipify-ipv4' ],
140  +               [ 'ipify-ipv6https://api6.ipify.org/' => 'ipify-ipv6' ],  +               [ 'ipify-ipv6-https://api6.ipify.org/' => 'ipify-ipv6' ],
141  +               [ 'loopiahttps://dns.loopia.se/checkip/checkip.php' => 'loopia' ],  +               [ 'loopia:-https://dns.loopia.se/checkip/checkip.php' => 'loopia' ],
142  +               [ 'myonlineportalhttps://myonlineportal.net/checkip' => 'myonlineportal' ],  +               [ 'myonlineportal-https://myonlineportal.net/checkip' => 'myonlineportal' ],
143  +               [ 'noip-ipv4http://ip1.dynupdate.no-ip.com/' => 'noip-ipv4' ],  +               [ 'noip-ipv4-http://ip1.dynupdate.no-ip.com/' => 'noip-ipv4' ],
144  +               [ 'noip-ipv6http://ip1.dynupdate6.no-ip.com/' => 'noip-ipv6' ],  +               [ 'noip-ipv6-http://ip1.dynupdate6.no-ip.com/' => 'noip-ipv6' ],
145  +               [ 'nsupdate.info-ipv4https://ipv4.nsupdate.info/myip' => 'nsupdate.info-ipv4' ],  +               [ 'nsupdate.info-ipv4-https://ipv4.nsupdate.info/myip' => 'nsupdate.info-ipv4' ],
146  +               [ 'nsupdate.info-ipv6https://ipv6.nsupdate.info/myip' => 'nsupdate.info-ipv6' ],  +               [ 'nsupdate.info-ipv6-https://ipv6.nsupdate.info/myip' => 'nsupdate.info-ipv6' ],
147  +               [ 'zoneedithttps://dynamic.zoneedit.com/checkip.html' => 'zoneedit' ]  +               [ 'zoneedit-https://dynamic.zoneedit.com/checkip.html' => 'zoneedit' ]
148  +       ] );  +       ] );
149  +       return $webservices  +       return $webservices
150  +  +
# Line 114  diff -urN smeserver-ddclient-1.3.0.old/r Line 167  diff -urN smeserver-ddclient-1.3.0.old/r
167       #       #
168       my $c      = shift;       my $c      = shift;
169  -    my $Labels = (  -    my $Labels = (
170  +    my $dnsservices = ( [      -    
 +               [ $c->l('1984') => '1984' ],  
 +               [ $c->l('changeip') => 'changeip' ],  
 +               [ $c->l('cloudflare') => 'cloudflare' ],  
 +               [ $c->l('cloudns') => 'cloudns' ],  
 +               [ $c->l('digitalocean') => 'digitalocean' ],  
 +               [ $c->l('dinahosting') => 'dinahosting' ],  
 +               [ $c->l('dnsexit') => 'dnsexit' ],  
 +               [ $c->l('dnsmadeeasy') => 'dnsmadeeasy' ],  
 +               [ $c->l('domeneshop') => 'domeneshop' ],  
 +               [ $c->l('dondominio') => 'dondominio' ],  
 +               [ $c->l('dslreports') => 'dslreports' ],  
 +               [ $c->l('duckdns') => 'duckdns' ],  
 +               [ $c->l('dyndns1') => 'dyndns1' ],  
 +               [ $c->l('dyndns2') => 'dyndns2' ],  
 +               [ $c->l('easydns') => 'easydns' ],  
 +               [ $c->l('enom') => 'enom' ],  
 +               [ $c->l('freedns') => 'freedns' ],  
 +               [ $c->l('freemyip') => 'freemyip' ],  
 +               [ $c->l('gandi') => 'gandi' ],  
 +               [ $c->l('godaddy') => 'godaddy' ],  
 +               [ $c->l('googledomains') => 'googledomains' ],  
 +               [ $c->l('hetzner') => 'hetzner' ],  
 +               [ $c->l('infomaniak') => 'infomaniak' ],  
 +               [ $c->l('keysystems') => 'keysystems' ],  
 +               [ $c->l('mythicdyn') => 'mythicdyn' ],  
 +               [ $c->l('namecheap') => 'namecheap' ],  
 +               [ $c->l('nfsn') => 'nfsn' ],  
 +               [ $c->l('njalla') => 'njalla' ],  
 +               [ $c->l('noip') => 'noip' ],  
 +               [ $c->l('nsupdate') => 'nsupdate' ],  
 +               [ $c->l('ovh') => 'ovh' ],  
 +               [ $c->l('porkbun') => 'porkbun' ],  
 +               [ $c->l('regfishde') => 'regfishde' ],  
 +               [ $c->l('sitelutions') => 'sitelutions' ],  
 +               [ $c->l('woima') => 'woima' ],  
 +               [ $c->l('yandex') => 'yandex' ],  
 +               [ $c->l('zoneedit') => 'zoneedit' ]      
 +       ] );      
 +       return $dnsservices;      
       
171  -    # v3.11.1 labels  -    # v3.11.1 labels
172  -    [  -    [
173  -               [$c->l('1984') '1984'],  -               [$c->l('1984') '1984'],
# Line 196  diff -urN smeserver-ddclient-1.3.0.old/r Line 209  diff -urN smeserver-ddclient-1.3.0.old/r
209  -               [$c->l('zoneedit1') 'zoneedit1']    -               [$c->l('zoneedit1') 'zoneedit1']  
210  -    ]    -    ]  
211  -    # end of v3.11.1 labels  -    # end of v3.11.1 labels
212  -      +    my $dnsservices = ( [    
213    +               [ $c->l('1984') => '1984' ],
214    +               [ $c->l('changeip') => 'changeip' ],
215    +               [ $c->l('cloudflare') => 'cloudflare' ],
216    +               [ $c->l('cloudns') => 'cloudns' ],
217    +               [ $c->l('digitalocean') => 'digitalocean' ],
218    +               [ $c->l('dinahosting') => 'dinahosting' ],
219    +               [ $c->l('dnsexit') => 'dnsexit' ],
220    +               [ $c->l('dnsmadeeasy') => 'dnsmadeeasy' ],
221    +               [ $c->l('domeneshop') => 'domeneshop' ],
222    +               [ $c->l('dondominio') => 'dondominio' ],
223    +               [ $c->l('dslreports') => 'dslreports' ],
224    +               [ $c->l('duckdns') => 'duckdns' ],
225    +               [ $c->l('dyndns1') => 'dyndns1' ],
226    +               [ $c->l('dyndns2') => 'dyndns2' ],
227    +               [ $c->l('easydns') => 'easydns' ],
228    +               [ $c->l('enom') => 'enom' ],
229    +               [ $c->l('freedns') => 'freedns' ],
230    +               [ $c->l('freemyip') => 'freemyip' ],
231    +               [ $c->l('gandi') => 'gandi' ],
232    +               [ $c->l('godaddy') => 'godaddy' ],
233    +               [ $c->l('googledomains') => 'googledomains' ],
234    +               [ $c->l('hetzner') => 'hetzner' ],
235    +               [ $c->l('infomaniak') => 'infomaniak' ],
236    +               [ $c->l('keysystems') => 'keysystems' ],
237    +               [ $c->l('mythicdyn') => 'mythicdyn' ],
238    +               [ $c->l('namecheap') => 'namecheap' ],
239    +               [ $c->l('nfsn') => 'nfsn' ],
240    +               [ $c->l('njalla') => 'njalla' ],
241    +               [ $c->l('noip') => 'noip' ],
242    +               [ $c->l('nsupdate') => 'nsupdate' ],
243    +               [ $c->l('ovh') => 'ovh' ],
244    +               [ $c->l('porkbun') => 'porkbun' ],
245    +               [ $c->l('regfishde') => 'regfishde' ],
246    +               [ $c->l('sitelutions') => 'sitelutions' ],
247    +               [ $c->l('woima') => 'woima' ],
248    +               [ $c->l('yandex') => 'yandex' ],
249    +               [ $c->l('zoneedit') => 'zoneedit' ]    
250    +       ] );    
251    +       return $dnsservices;    
252        
253  -      -    
254  -        #[   [ $c->l('CUSTOMDNS'),        'CUSTOMDNS' ],  -        #[   [ $c->l('CUSTOMDNS'),        'CUSTOMDNS' ],
255    -            #[ $c->l('DYNDNS1'),          'DYNDNS1' ],
256    -            #[ $c->l('DYNDNS2'),          'DYNDNS2' ],
257    -            #[ $c->l('DYNDNS3'),          'DYNDNS3' ],
258    -            #[ $c->l('ZONEDIT'),          'ZONEDIT' ],
259    -            #[ $c->l('EASYDNS'),          'EASYDNS' ],
260    -            #[ $c->l('HAMMER'),           'HAMMER' ],
261    -            #[ $c->l('DSLREPORTS'),       'DSLREPORTS' ],
262    -            #[ $c->l('EURODYNDNS'),       'EURODYNDNS' ],
263    -            #[ $c->l('DTDNS'),            'DTDNS' ],
264    -            #[ $c->l('LOOPIA'),           'LOOPIA' ],
265    -            #[ $c->l('DNSPARK'),          'DNSPARK' ],
266    -            #[ $c->l('DYNHOST'),          'DYNHOST' ],
267    -            #[ $c->l('NOIP'),             'NOIP' ],
268    -            #[ $c->l('CHANGEIP'),         'CHANGEIP' ],
269    -            #[ $c->l('NAMECHEAP'),        'NAMECHEAP' ],
270    -            #[ $c->l('SPDNS'),            'SPDNS' ],
271    -            #[ $c->l('SITELUTIONS'),      'SITELUTIONS' ],
272    -            #[ $c->l('FREEDNS'),          'FREEDNS' ],
273    -            #[ $c->l('NSUPDATE'),         'NSUPDATE' ],
274    -            #[ $c->l('CLOUDFLARE'),       'CLOUDFLARE' ],
275    -            #[ $c->l('GOOGLEDOMAINS'),    'GOOGLEDOMAINS' ],
276    -            #[ $c->l('DUCKDNS'),          'DUCKDNS' ],
277    -            #[ $c->l('FREEMYIP'),         'FREEMYIP' ],
278    -            #[ $c->l('WOIMA'),            'WOIMA' ],
279    -            #[ $c->l('YANDEX'),           'YANDEX' ],
280    -            #[ $c->l('DNSMADEEASY'),      'DNSMADEEASY' ],
281    -            #[ $c->l('DONDOMINIO'),       'DONDOMINIO' ],
282    -            #[ $c->l('NEARLYFREESPEECH'), 'NFSN' ],
283    -            #[ $c->l('OVH'),              'OVH' ],
284    -            #[ $c->l('CLOUDNS'),          'CLOUDNS' ]
285    -        #]
286    -    );
287    -    return $Labels;
288  +    #my $output = `ddclient -list-protocols`;  # Run ddclient command and capture the output  +    #my $output = `ddclient -list-protocols`;  # Run ddclient command and capture the output
289  +    #my @protocols;  +    #my @protocols;
290  +    #foreach my $line (split /\n/, $output) {  +    #foreach my $line (split /\n/, $output) {
# Line 208  diff -urN smeserver-ddclient-1.3.0.old/r Line 294  diff -urN smeserver-ddclient-1.3.0.old/r
294  +        #push @protocols, [$custom_value, $protocol];  +        #push @protocols, [$custom_value, $protocol];
295  +    #}  +    #}
296  +   #return \@protocols;  # Return a reference to the protocols array  +   #return \@protocols;  # Return a reference to the protocols array
297  +}   }
 +  
 +# Pre 3.11.1 dns services  
 +          #[   [ $c->l('CUSTOMDNS'),        'CUSTOMDNS' ],  
              #[ $c->l('DYNDNS1'),          'DYNDNS1' ],  
              #[ $c->l('DYNDNS2'),          'DYNDNS2' ],  
              #[ $c->l('DYNDNS3'),          'DYNDNS3' ],  
 @@ -196,9 +307,6 @@  
              #[ $c->l('OVH'),              'OVH' ],  
              #[ $c->l('CLOUDNS'),          'CLOUDNS' ]  
          #]  
 -    );  
 -    return $Labels;  
 -}  
298    
299   sub main {   sub main {
300       #  @@ -230,13 +304,15 @@
 @@ -230,13 +338,15 @@  
301       my $emptycust = ( scalar @FreeDomains == 0 );       my $emptycust = ( scalar @FreeDomains == 0 );
302    
303       my $Labels = (       my $Labels = (
# Line 240  diff -urN smeserver-ddclient-1.3.0.old/r Line 312  diff -urN smeserver-ddclient-1.3.0.old/r
312  +                       [ $c->l('SME external Interface') => "smeIF" ],  +                       [ $c->l('SME external Interface') => "smeIF" ],
313  +                       [ $c->l('SME configuration DB') => 'smeCMD' ],  +                       [ $c->l('SME configuration DB') => 'smeCMD' ],
314  +                       [ $c->l('web') => 'web' ],  +                       [ $c->l('web') => 'web' ],
315  +                       [ $c->l('router') => 'router' ],  +                       [ $c->l('Router/Firewall') => 'router' ],
316  +                       [ $c->l('Interface') => 'if' ],  +                       [ $c->l('Interface') => 'if' ],
317  +                       [ $c->l('IP') => 'ip' ],  +                       [ $c->l('IP') => 'ip' ],
318  +                       [ $c->l('Command') => 'cmd' ]  +                       [ $c->l('Command') => 'cmdv4' ]
319  +               ]  +               ]
320       );       );
321    
322       $c->stash(       $c->stash(
323  @@ -246,6 +356,9 @@  @@ -246,6 +322,9 @@
324           domains      => \@domains,           domains      => \@domains,
325           freedomains  => \@FreeDomains,           freedomains  => \@FreeDomains,
326           methodlabels => $Labels,           methodlabels => $Labels,
# Line 258  diff -urN smeserver-ddclient-1.3.0.old/r Line 330  diff -urN smeserver-ddclient-1.3.0.old/r
330           emptydom     => $emptydom,           emptydom     => $emptydom,
331           emptycust    => $emptycust           emptycust    => $emptycust
332       );       );
333  @@ -260,6 +373,7 @@  @@ -260,6 +339,7 @@
334       # Called to update the parameters relating to the Ip address of the server       # Called to update the parameters relating to the Ip address of the server
335       #       #
336       my $c = shift;       my $c = shift;
# Line 266  diff -urN smeserver-ddclient-1.3.0.old/r Line 338  diff -urN smeserver-ddclient-1.3.0.old/r
338       $ddc_datas{"success"} = pushParams($c);       $ddc_datas{"success"} = pushParams($c);
339       do_display($c);       do_display($c);
340   }   }
341  @@ -269,6 +383,7 @@  @@ -269,6 +349,7 @@
342       #Called to update/delete the ddclient for a specific inbuilt domain       #Called to update/delete the ddclient for a specific inbuilt domain
343       #       #
344       my $c = shift;       my $c = shift;
# Line 274  diff -urN smeserver-ddclient-1.3.0.old/r Line 346  diff -urN smeserver-ddclient-1.3.0.old/r
346       my $retmsg;       my $retmsg;
347       if ( $c->param("Route") eq "ddclient2" ) {    #Route is hidden field       if ( $c->param("Route") eq "ddclient2" ) {    #Route is hidden field
348           $retmsg = performModifyCustom($c);           $retmsg = performModifyCustom($c);
349  @@ -276,10 +391,11 @@  @@ -276,10 +357,11 @@
350       else {       else {
351           $retmsg = performModifyDomain($c);           $retmsg = performModifyDomain($c);
352       }       }
# Line 287  diff -urN smeserver-ddclient-1.3.0.old/r Line 359  diff -urN smeserver-ddclient-1.3.0.old/r
359               $c->l( '' . $dns ) );               $c->l( '' . $dns ) );
360           do_display( $c, %ddc_datas );           do_display( $c, %ddc_datas );
361       }       }
362  @@ -296,7 +412,7 @@  @@ -296,7 +378,7 @@
363       # Create custom domain       # Create custom domain
364       #       #
365       my $c     = shift;       my $c     = shift;
# Line 296  diff -urN smeserver-ddclient-1.3.0.old/r Line 368  diff -urN smeserver-ddclient-1.3.0.old/r
368       my $modul = '';       my $modul = '';
369       my $trt   = "NEW";       my $trt   = "NEW";
370    
371  @@ -305,18 +421,21 @@  @@ -305,18 +387,21 @@
372           title     => $title,           title     => $title,
373           modul     => $modul,           modul     => $modul,
374           ddc_datas => \%ddc_datas,           ddc_datas => \%ddc_datas,
# Line 320  diff -urN smeserver-ddclient-1.3.0.old/r Line 392  diff -urN smeserver-ddclient-1.3.0.old/r
392               $c->l( '' . $dns ) );               $c->l( '' . $dns ) );
393           do_display( $c, %ddc_datas );           do_display( $c, %ddc_datas );
394       }       }
395  @@ -334,7 +453,7 @@  @@ -334,7 +419,7 @@
396       # Display delete or modify panel for custom domain       # Display delete or modify panel for custom domain
397       #       #
398       my $c     = shift;       my $c     = shift;
# Line 329  diff -urN smeserver-ddclient-1.3.0.old/r Line 401  diff -urN smeserver-ddclient-1.3.0.old/r
401       my $modul = '';       my $modul = '';
402       my $trt   = $c->param("trt");       my $trt   = $c->param("trt");
403    
404  @@ -349,7 +468,9 @@  @@ -349,7 +434,9 @@
405           title     => $title,           title     => $title,
406           modul     => $modul,           modul     => $modul,
407           ddc_datas => \%ddc_datas,           ddc_datas => \%ddc_datas,
# Line 340  diff -urN smeserver-ddclient-1.3.0.old/r Line 412  diff -urN smeserver-ddclient-1.3.0.old/r
412       );       );
413       $c->render( template => 'ddclient' );       $c->render( template => 'ddclient' );
414   }   }
415  @@ -360,21 +481,23 @@  @@ -360,21 +447,23 @@
416       # param trt = MOD or DEL       # param trt = MOD or DEL
417       #       #
418       my $c     = shift;       my $c     = shift;
# Line 367  diff -urN smeserver-ddclient-1.3.0.old/r Line 439  diff -urN smeserver-ddclient-1.3.0.old/r
439       );       );
440       $c->render( template => 'ddclient' );       $c->render( template => 'ddclient' );
441   }   }
442  @@ -386,10 +509,11 @@  @@ -386,10 +475,11 @@
443       #       #
444       my $c      = shift;       my $c      = shift;
445       my $route  = $c->current_route;       my $route  = $c->current_route;
# Line 380  diff -urN smeserver-ddclient-1.3.0.old/r Line 452  diff -urN smeserver-ddclient-1.3.0.old/r
452    
453       #Delete it and return to front summary panel - depends on route domain or custom       #Delete it and return to front summary panel - depends on route domain or custom
454       if ( $c->param("Route") eq "ddclient2" ) {    #Route is hidden field       if ( $c->param("Route") eq "ddclient2" ) {    #Route is hidden field
455  @@ -400,7 +524,7 @@  @@ -400,7 +490,7 @@
456       }       }
457    
458       if ( $retmsg eq "ok" ) {       if ( $retmsg eq "ok" ) {
# Line 389  diff -urN smeserver-ddclient-1.3.0.old/r Line 461  diff -urN smeserver-ddclient-1.3.0.old/r
461               $c->l( '' . $c->param("dns") ) );               $c->l( '' . $c->param("dns") ) );
462       }       }
463       else { $ddc_datas{"error"} = $retmsg; }       else { $ddc_datas{"error"} = $retmsg; }
464  @@ -415,15 +539,16 @@  @@ -415,15 +505,16 @@
465       #       #
466       my $c      = shift;       my $c      = shift;
467       my $route  = $c->current_route;       my $route  = $c->current_route;
# Line 408  diff -urN smeserver-ddclient-1.3.0.old/r Line 480  diff -urN smeserver-ddclient-1.3.0.old/r
480       }       }
481       else { $ddc_datas{"error"} = $retmsg; }       else { $ddc_datas{"error"} = $retmsg; }
482       do_display( $c, %ddc_datas );       do_display( $c, %ddc_datas );
483  @@ -588,6 +713,8 @@  @@ -450,7 +541,7 @@
484    
485             foreach $domain ( sort @virtualDomains ) {
486                 my %properties = $domaindb->get($domain)->props;
487    -            my $test = $domaindb->get_prop( $domain, "dns" ) || '';
488    +            my $test = $domaindb->get($domain) || '';
489                 my %extraprops;
490                 if ( $test ne '' ) {
491                     %extraprops = $domaindb->get($domain)->props;
492    @@ -567,6 +658,8 @@
493         my $Extinterface = $ddretrieve->prop('Extinterface') || '';
494         my $cmd          = $ddretrieve->prop('cmd') || '';
495         my $forceIP      = $ddretrieve->prop('ForceIP') || '';
496    +    my $fwlogin      = $ddretrieve->prop('fwlogin') || '';
497    +    my $fwpassword   = $ddretrieve->prop('fwpassword') || '';
498         my $res          = {
499             "ssl"          => $ssl,
500             "DeamonUpdate" => $DeamonUpdate,
501    @@ -574,29 +667,43 @@
502             "Extinterface" => $Extinterface,
503             "cmd"          => $cmd,
504             "ForceIP"      => $forceIP,
505    -        "urlcheckip"   => $urlcheckip
506    +        "urlcheckip"   => $urlcheckip,
507    +        "FWlogin"         => $fwlogin,
508    +        "FWpassword"   => $fwpassword
509         };
510         return $res;
511     }
512    
513     sub pushParams {
514         my $c                 = shift;
515    -    my $DeamonUpdate      = $c->param('retrievedeamonupdate');
516    -    my $urlcheckip        = $c->param('retrieveurlcheckip');
517    -    my $ssl               = $c->param('retrievessl');
518    +    my $retrievedeamonupdate      = $c->param('retrievedeamonupdate');
519    +    my $retrieverouter            = $c->param('retrieverouter');
520    +    my $retrievewebservice        = $c->param('retrievewebservice');
521    +    my $retrieveurlcheckip        = $c->param('retrieveurlcheckip');
522    +    my $retrievessl               = $c->param('retrievessl');
523         my $retrievemethod    = $c->param('retrievemethod');
524       my $retrieveinterface = $c->param('retrieveinterface');       my $retrieveinterface = $c->param('retrieveinterface');
525       my $retrievecmd       = $c->param('retrievecmd');       my $retrievecmd       = $c->param('retrievecmd');
526       my $retrieveip        = $c->param('retrieveip');       my $retrieveip        = $c->param('retrieveip');
527    +    my $retrievefwlogin   = $c->param('retrieverouterlogin');
528    +    my $retrievefwpassword   = $c->param('retrieverouterpassword');
529  +      +    
530  +    #print 1 / 0; #Crash  +    #print 1 / 0; #Crash
531    
532       my $ddclient = $db->get('ddclient');       my $ddclient = $db->get('ddclient');
533       $ddclient->set_prop( 'urlcheckip'   => $urlcheckip );  -    $ddclient->set_prop( 'urlcheckip'   => $urlcheckip );
534  @@ -616,7 +743,7 @@  -    $ddclient->set_prop( 'DeamonUpdate' => $DeamonUpdate );
535    -    $ddclient->set_prop( 'SSL'          => $ssl );
536    +    $ddclient->set_prop( 'urlcheckip'   => $retrievewebservice || $retrieveurlcheckip );
537    +    $ddclient->set_prop( 'DeamonUpdate' => $retrievedeamonupdate );
538    +    $ddclient->set_prop( 'SSL'          => $retrievessl );
539         $ddclient->set_prop( 'method'       => $retrievemethod );
540    -    $ddclient->set_prop( 'Extinterface' => $retrieveinterface );
541    +    if ($retrievemethod eq 'router') {    
542    +               $ddclient->set_prop( 'Extinterface' => $retrieverouter );
543    +       } else {
544    +               $ddclient->set_prop( 'Extinterface' => $retrieveinterface );
545    +       }
546         $ddclient->set_prop( 'cmd'          => $retrievecmd );
547         $ddclient->set_prop( 'ForceIP'      => $retrieveip );
548    +    $ddclient->set_prop( 'fwlogin'      => $retrievefwlogin );
549    +    $ddclient->set_prop( 'fwpassword'   => $retrievefwpassword );
550    
551         $domaindb->reload();
552    
553    @@ -616,7 +723,7 @@
554       #------------------------------------------------------------       #------------------------------------------------------------
555    
556       my $domainName = $c->param('domainName');       my $domainName = $c->param('domainName');
# Line 426  diff -urN smeserver-ddclient-1.3.0.old/r Line 559  diff -urN smeserver-ddclient-1.3.0.old/r
559           $domainName = $1;           $domainName = $1;
560       }       }
561       else {       else {
562  @@ -624,7 +751,7 @@  @@ -624,7 +731,7 @@
563       }       }
564    
565       my $domainLogin = $c->param('login');       my $domainLogin = $c->param('login');
# Line 435  diff -urN smeserver-ddclient-1.3.0.old/r Line 568  diff -urN smeserver-ddclient-1.3.0.old/r
568           $domainLogin = $1;           $domainLogin = $1;
569       }       }
570       else {       else {
571  @@ -632,7 +759,7 @@  @@ -632,7 +739,7 @@
572       }       }
573    
574       my $domainPassword = $c->param('password');       my $domainPassword = $c->param('password');
# Line 444  diff -urN smeserver-ddclient-1.3.0.old/r Line 577  diff -urN smeserver-ddclient-1.3.0.old/r
577           $domainPassword = $1;           $domainPassword = $1;
578       }       }
579       else {       else {
580  @@ -646,7 +773,7 @@  @@ -646,7 +753,7 @@
581    
582       my $dns = $c->param('dns');       my $dns = $c->param('dns');
583       if ( $dns eq 'CUSTOMDNS' ) {       if ( $dns eq 'CUSTOMDNS' ) {
# Line 453  diff -urN smeserver-ddclient-1.3.0.old/r Line 586  diff -urN smeserver-ddclient-1.3.0.old/r
586               $customDNS = $1;               $customDNS = $1;
587           }           }
588           else           else
589  @@ -685,7 +812,7 @@  @@ -685,7 +792,7 @@
590       # Attempt to delete domain       # Attempt to delete domain
591       #------------------------------------------------------------       #------------------------------------------------------------
592    
# Line 462  diff -urN smeserver-ddclient-1.3.0.old/r Line 595  diff -urN smeserver-ddclient-1.3.0.old/r
595           $domain = $1;           $domain = $1;
596       }       }
597       else {       else {
598  @@ -726,7 +853,7 @@  @@ -726,7 +833,7 @@
599       #------------------------------------------------------------       #------------------------------------------------------------
600    
601       my $domainName = $c->param('domainName');       my $domainName = $c->param('domainName');
# Line 471  diff -urN smeserver-ddclient-1.3.0.old/r Line 604  diff -urN smeserver-ddclient-1.3.0.old/r
604           $domainName = $1;           $domainName = $1;
605       }       }
606       else {       else {
607  @@ -749,7 +876,7 @@  @@ -749,7 +856,7 @@
608    
609       my $domainDesc  = $c->param('desc');       my $domainDesc  = $c->param('desc');
610       my $domainLogin = $c->param('login');       my $domainLogin = $c->param('login');
# Line 480  diff -urN smeserver-ddclient-1.3.0.old/r Line 613  diff -urN smeserver-ddclient-1.3.0.old/r
613           $domainLogin = $1;           $domainLogin = $1;
614       }       }
615       else {       else {
616  @@ -757,7 +884,7 @@  @@ -757,7 +864,7 @@
617       }       }
618    
619       my $domainPassword = $c->param('password');       my $domainPassword = $c->param('password');
# Line 489  diff -urN smeserver-ddclient-1.3.0.old/r Line 622  diff -urN smeserver-ddclient-1.3.0.old/r
622           $domainPassword = $1;           $domainPassword = $1;
623       }       }
624       else {       else {
625  @@ -771,7 +898,7 @@  @@ -771,7 +878,7 @@
626    
627       my $dns = $c->param('dns');       my $dns = $c->param('dns');
628       if ( $dns eq 'CUSTOMDNS' ) {       if ( $dns eq 'CUSTOMDNS' ) {
# Line 498  diff -urN smeserver-ddclient-1.3.0.old/r Line 631  diff -urN smeserver-ddclient-1.3.0.old/r
631               $customDNS = $1;               $customDNS = $1;
632           }           }
633           else {           else {
634  @@ -809,7 +936,7 @@  @@ -809,7 +916,7 @@
635       #------------------------------------------------------------       #------------------------------------------------------------
636    
637       my $domainName = $c->param('domainName');       my $domainName = $c->param('domainName');
# Line 507  diff -urN smeserver-ddclient-1.3.0.old/r Line 640  diff -urN smeserver-ddclient-1.3.0.old/r
640           $domainName = $1;           $domainName = $1;
641       }       }
642       else {       else {
643  @@ -817,7 +944,7 @@  @@ -817,7 +924,7 @@
644       }       }
645    
646       my $domainLogin = $c->param('login');       my $domainLogin = $c->param('login');
# Line 516  diff -urN smeserver-ddclient-1.3.0.old/r Line 649  diff -urN smeserver-ddclient-1.3.0.old/r
649           $domainLogin = $1;           $domainLogin = $1;
650       }       }
651       else {       else {
652  @@ -825,7 +952,7 @@  @@ -825,7 +932,7 @@
653       }       }
654    
655       my $domainPassword = $c->param('password');       my $domainPassword = $c->param('password');
# Line 525  diff -urN smeserver-ddclient-1.3.0.old/r Line 658  diff -urN smeserver-ddclient-1.3.0.old/r
658           $domainPassword = $1;           $domainPassword = $1;
659       }       }
660       else {       else {
661  @@ -839,7 +966,7 @@  @@ -839,7 +946,7 @@
662    
663       my $dns = $c->param('dns');       my $dns = $c->param('dns');
664       if ( $dns eq 'CUSTOMDNS' ) {       if ( $dns eq 'CUSTOMDNS' ) {
# Line 534  diff -urN smeserver-ddclient-1.3.0.old/r Line 667  diff -urN smeserver-ddclient-1.3.0.old/r
667               $customDNS = $1;               $customDNS = $1;
668           }           }
669           else           else
670  @@ -878,7 +1005,7 @@  @@ -878,7 +985,7 @@
671       # Attempt to delete domain       # Attempt to delete domain
672       #------------------------------------------------------------       #------------------------------------------------------------
673    
# Line 545  diff -urN smeserver-ddclient-1.3.0.old/r Line 678  diff -urN smeserver-ddclient-1.3.0.old/r
678       else {       else {
679  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm
680  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm        2023-11-10 16:11:05.916271986 +0000  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm        2023-11-10 16:11:05.916271986 +0000
681  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm    2023-12-01 16:35:00.000000000 +0000  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/lib/SrvMngr/I18N/Modules/Ddclient/en.pm    2023-12-18 09:29:00.000000000 +0000
682  @@ -80,7 +80,7 @@  @@ -80,46 +80,48 @@
683   'CLOUDNS'=>'CLOUDNS www.cloudns.net',   'CLOUDNS'=>'CLOUDNS www.cloudns.net',
684   # End of Service descriptions   # End of Service descriptions
685    
686  -# v3.11.1 Service descriptions:  -# v3.11.1 Service descriptions:
687  +# v3.11.x Service descriptions:  -"1984" => "https://kb.1984hosting.com/doku.php?id=freedns",
688   "1984" => "https://kb.1984hosting.com/doku.php?id=freedns",  -"changeip" => "https://changeip.com",
689   "changeip" => "https://changeip.com",  -"cloudflare" => "https://cloudflare.com",
690   "cloudflare" => "https://cloudflare.com",  -"cloudns" => "https://cloudns.com",
691  @@ -118,7 +118,7 @@  -"digitalocean" => "https://digitalocean.com",
692   "woima" => "http://woima.com",  -"dinahosting" => "https://dinahosting.com",
693   "yandex" => "https://yandex.com",  -"dnsexit" => "https://dnsexit.com/",
694   "zoneedit" => "https://www.zoneedit.com/dynamic-dns/",  -"dnsmadeeasy" => "https://dnsmadeeasy.com",
695    -"domeneshop" => "https://domeneshop.com",
696    -"dondominio" => "https://dondominio.com",
697    -"dslreports" => "https://www.dslreports.com/",
698    -"duckdns" => "https://duckdns.com",
699    -"dyndns1" => "https://account.dyn.com/",
700    -"dyndns2" => "https://account.dyn.com/",
701    -"easydns" => "https://easydns.com",
702    -"enom" => "https://enom.com",
703    -"freedns" => "http://freedns.com",
704    -"freemyip" => "https://freemyip.com",
705    -"gandi" => "https://gandi.com",
706    -"godaddy" => "https://godaddy.com",
707    -"googledomains" => "https://googledomains.com",
708    -"hetzner" => "https://hetzner.com",
709    -"infomaniak" => "https://infomaniak.com",
710    -"keysystems" => "https://keysystems.com",
711    -"mythicdyn" => "https://www.mythic-beasts.com/support/api/dnsv2/dynamic-dns",
712    -"namecheap" => "https://namecheap.com",
713    -"nfsn" => "http://nfsn.com",
714    -"njalla" => "https://njalla.com",
715    -"noip" => "https://noip.com",
716    -"nsupdate" => "http://nsupdate.com",
717    -"ovh" => "https://ovh.com",
718    -"porkbun" => "https://porkbun.com",
719    -"regfishde" => "regfishde",
720    -"sitelutions" => "https://sitelutions.com",
721    -"woima" => "http://woima.com",
722    -"yandex" => "https://yandex.com",
723    -"zoneedit" => "https://www.zoneedit.com/dynamic-dns/",
724  -# end of v3.11.1 Service descriptions:  -# end of v3.11.1 Service descriptions:
725    +# v3.11.x Service descriptions:
726    +"1984" => "1984-https://kb.1984hosting.com/doku.php?id=freedns",
727    +"changeip" => "changeip-https://changeip.com",
728    +"cloudflare" => "cloudflare-https://cloudflare.com",
729    +"cloudns" => "cloudns-https://cloudns.com",
730    +"digitalocean" => "digitalocean-https://digitalocean.com",
731    +"dinahosting" => "dinahosting-https://dinahosting.com",
732    +"dnsexit" => "dnsexit-https://dnsexit.com/",
733    +"dnsmadeeasy" => "dnsmadeeasy-https://dnsmadeeasy.com",
734    +"domeneshop" => "domeneshop-https://domeneshop.com",
735    +"dondominio" => "dondominio-https://dondominio.com",
736    +"dslreports" => "dslreports-https://www.dslreports.com/",
737    +"duckdns" => "duckdns-https://duckdns.com",
738    +"dyndns1" => "dyndns1-https://account.dyn.com/",
739    +"dyndns2" => "dyndns2-https://account.dyn.com/",
740    +"easydns" => "easydns-https://easydns.com",
741    +"enom" => "enom-https://enom.com",
742    +"freedns" => "freedns-http://freedns.com",
743    +"freemyip" => "freemyip-https://freemyip.com",
744    +"gandi" => "gandi-https://gandi.com",
745    +"godaddy" => "godaddy-https://godaddy.com",
746    +"googledomains" => "googledomains-https://googledomains.com",
747    +"hetzner" => "hetzner-https://hetzner.com",
748    +"infomaniak" => "infomaniak-https://infomaniak.com",
749    +"keysystems" => "keysystems-https://keysystems.com",
750    +"mythicdyn" => "mythicdyn-https://www.mythic-beasts.com/support/api/dnsv2/dynamic-dns",
751    +"namecheap" => "namecheap-https://namecheap.com",
752    +"nfsn" => "nfsn-http://nfsn.com",
753    +"njalla" => "njalla-https://njalla.com",
754    +"noip" => "noip-https://noip.com",
755    +"nsupdate" => "nsupdate-http://nsupdate.com",
756    +"ovh" => "ovh-https://ovh.com",
757    +"porkbun" => "porkbun-https://porkbun.com",
758    +"regfishde" => "regfishde-regfishde",
759    +"sitelutions" => "sitelutions-https://sitelutions.com",
760    +"woima" => "woima-http://woima.com",
761    +"yandex" => "yandex-https://yandex.com",
762    +"zoneedit" => "zoneedit-https://www.zoneedit.com/dynamic-dns/",
763  +# end of v3.11.x Service descriptions:  +# end of v3.11.x Service descriptions:
764    
765    +'MODIFY_DESCRIPTION' => "You can modify the Dynamic DNS Service that you use and change the username and password",
766    +'CREATE_DESCRIPTION' => "You can create a domain to use for the Dynamic DNS Service that you use and set or change the username and password",
767   'CUSTOMDNS' => 'Custom Dynamic DNS Provider',   'CUSTOMDNS' => 'Custom Dynamic DNS Provider',
768   'CUSTOMDNS_LABEL' => 'Custom server Address',   'CUSTOMDNS_LABEL' => 'Custom server Address',
769  @@ -136,8 +136,8 @@   'CUSTOM_PROTOCOL_LABEL' => 'Custom ddclient Protocol',
770    @@ -136,8 +138,8 @@
771   'DESCRIPTION_LABEL' => 'Domain description',   'DESCRIPTION_LABEL' => 'Domain description',
772   'SUCCESSFULLY_MODIFIED_RETRIEVE_IP' => 'You have successfully modified the retrieve IP options.',   'SUCCESSFULLY_MODIFIED_RETRIEVE_IP' => 'You have successfully modified the retrieve IP options.',
773   'RETRIEVE_METHOD' => 'Method to retrieve new IP:',   'RETRIEVE_METHOD' => 'Method to retrieve new IP:',
# Line 577  diff -urN smeserver-ddclient-1.3.0.old/r Line 780  diff -urN smeserver-ddclient-1.3.0.old/r
780   'web' => 'Web query',   'web' => 'Web query',
781  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep
782  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep     2020-06-28 09:57:52.000000000 +0100  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep     2020-06-28 09:57:52.000000000 +0100
783  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep 2023-11-15 16:10:00.000000000 +0000  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_create_cust.html.ep 2023-12-18 09:35:00.000000000 +0000
784  @@ -1,6 +1,6 @@  @@ -1,41 +1,43 @@
785   <div id='ddc_createcustom'>  -<div id='ddc_createcustom'>
786    +<div id='createcustom'>
787        <h2>        <h2>
788  -     %= l 'ddc_CUSTOM_DESCRIPTION'  -     %= l 'ddc_CUSTOM_DESCRIPTION'
789  +     %= l 'CUSTOM_DESCRIPTION'  +     %= l 'CREATE_DESCRIPTION'
790        </h2><br>        </h2><br>
791       % my $btn = l('ddc_APPLY');  -    % my $btn = l('ddc_APPLY');
792    +    % my $btn = l('APPLY');
793       %= form_for '/ddclient7' => (method => 'POST') => begin       %= form_for '/ddclient7' => (method => 'POST') => begin
794                    <span class=label>
795    -                       %=l 'ddc_DOMAIN_NAME_LABEL'
796    +                       %=l 'DOMAIN_NAME_LABEL'
797                    </span><span class=data>
798                            %=text_field 'domainName'
799                    </span><br>
800                    <span class=label>
801    -                       %=l 'ddc_DESCRIPTION_LABEL'
802    +                       %=l 'DESCRIPTION_LABEL'
803                    </span><span class=data>
804                            %=text_field 'desc'
805                    </span><br>
806                    <span class=label>
807    -                       %=l 'ddc_SERVERS_LABEL'
808    +                       %=l 'SERVERS_LABEL'
809                    </span><span class=data>
810                            %=select_field dns=>$dnslabels
811                    </span><br>
812    +<!--
813                    <span class=label>
814    -                       %=l 'ddc_CUSTOMDNS_LABEL'
815    +                       %=l 'CUSTOMDNS_LABEL'
816                    </span><span class=data>
817                            %=text_field  'customdns'
818                    </span><br>
819                    <span class=label>
820    -                       %=l 'ddc_CUSTOM_PROTOCOL_LABEL'
821    +                       %=l 'CUSTOM_PROTOCOL_LABEL'
822                    </span><span class=data>
823                            %=text_field  'customprotocol'
824                    </span><br>
825    +-->
826                    <span class=label>
827    -                       %=l 'ddc_NAME_LABEL'
828    +                       %=l 'NAME_LABEL'
829                    </span><span class=data>
830                            %=text_field  'login'
831                    </span><br>
832                    <span class=label>
833    -                       %=l 'ddc_PASSWORD_LABEL'
834    +                       %=l 'PASSWORD_LABEL'
835                    </span><span class=data>
836                            %=password_field 'password',id=>"ddcPass"
837                            %=label_for show=>"Show"
838    @@ -52,7 +54,7 @@
839                            % end
840                    </span><br>
841                    <span class=label>
842    -                       %=l 'ddc_MX'
843    +                       %=l 'MX'
844                    </span><span class=data>
845                            %=text_field 'mx'
846                    </span><br>    
847    diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep
848    --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep     2023-11-10 16:11:05.900271940 +0000
849    +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_del.html.ep 2023-12-18 11:14:00.000000000 +0000
850    @@ -2,7 +2,7 @@
851         % my $btn = l('REMOVE');
852                    %= form_for '/ddclient4' => (method => 'POST') => begin
853             <p>
854    -               %= $c->render_to_string(inline =>l("ddc_REMOVE_DESCRIPTION",$ddc_datas->{"Domain_details"}->{"Domain"},$ddc_datas->{"Domain_details"}->{"Description"},$c->l($ddc_datas->{"Domain_details"}->{"Publication"})))
855    +               %= $c->render_to_string(inline =>l("REMOVE_DESCRIPTION",$ddc_datas->{"Domain_details"}->{"Domain"},$ddc_datas->{"Domain_details"}->{"Description"},$c->l($ddc_datas->{"Domain_details"}->{"Publication"})))
856                    </p>
857                    % param Domain=>$ddc_datas->{"Domain_details"}->{"Domain"};
858                    %= hidden_field Domain=>$ddc_datas->{"Domain_details"}->{"Domain"}
859    diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep
860    --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep      2023-11-10 16:11:05.900271940 +0000
861    +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_domainlist.html.ep  2023-12-18 11:46:00.000000000 +0000
862    @@ -36,9 +36,12 @@
863                            %= t td => (class => 'sme-border') => $Domain->{"Publication"}
864                            <td class = 'sme-border'>
865                                    <a href="/smanager/ddclient1?trt=MOD&Domain=<%= $Domain->{"Domain"}%>"><%=l 'MODIFY'%></a>
866    -                       </td><td class = 'sme-border'>          
867    -                               <a href="/smanager/ddclient1?trt=DEL&Domain=<%= $Domain->{"Domain"}%>"><%=l 'REMOVE'%></a>
868    -                       </td>          
869    +                       </td>
870    +                       % if ($Domain->{"Publication"} ne ""){
871    +                               <td class = 'sme-border'>      
872    +                                       <a href="/smanager/ddclient1?trt=DEL&Domain=<%= $Domain->{"Domain"}%>"><%=l 'REMOVE'%></a>
873    +                               </td>          
874    +                       % }
875                    </tr>
876                    %}
877                    </tbody>
878  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep
879  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep   2023-11-10 16:11:05.901271943 +0000  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep   2023-11-10 16:11:05.901271943 +0000
880  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep       2023-11-18 14:56:00.000000000 +0000  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_modify_domain.html.ep       2023-12-18 11:13:00.000000000 +0000
881  @@ -1,4 +1,9 @@  @@ -1,6 +1,11 @@
882   <div id='modifydomain'>   <div id='modifydomain'>
883  +  <script>  +  <script>
884  +    window.onload = function() {  +    window.onload = function() {
# Line 597  diff -urN smeserver-ddclient-1.3.0.old/r Line 886  diff -urN smeserver-ddclient-1.3.0.old/r
886  +    };  +    };
887  +  </script>  +  </script>
888        <h2>        <h2>
889        %= l 'CUSTOM_DESCRIPTION'  -     %= l 'CUSTOM_DESCRIPTION'
890    +     %= l 'MODIFY_DESCRIPTION'
891        </h2><br>        </h2><br>
892  @@ -24,20 +29,41 @@       % my $btn = l('APPLY');
893         %= form_for '/ddclient8' => (method => 'POST') => begin
894    @@ -10,34 +15,60 @@
895                    %= hidden_field domainName => $ddc_datas->{"Domain_details"}->{"Domain"}
896                            %= $ddc_datas->{"Domain_details"}->{"Domain"}
897                    </span><br><br>
898    +              
899                    <span class=label>
900                            %=l 'DESCRIPTION_LABEL'
901                    </span><span class=data>
902                            %= $ddc_datas->{"Domain_details"}->{"Description"}
903                    </span><br><br>
904    +              
905    +               % if ($ddc_datas->{"Domain_details"}->{"Content"} ne ""){
906                    <span class=label>
907                            %= $ddc_datas->{"Domain_details"}->{"Content"}
908                    </span><span class=data>
909                            %= $ddc_datas->{"Domain_details"}->{"Content"}
910                    </span><br><br>
911    +               % }
912    +              
913                    <span class=label>
914                          %=l 'SERVERS_LABEL'                          %=l 'SERVERS_LABEL'
915                  </span><span class=data>                  </span><span class=data>
916                      % param dns=>$ddc_datas->{"Domain_details"}->{"dns"};                      % param dns=>$ddc_datas->{"Domain_details"}->{"dns"};
# Line 648  diff -urN smeserver-ddclient-1.3.0.old/r Line 959  diff -urN smeserver-ddclient-1.3.0.old/r
959                  </span><span class=data>                  </span><span class=data>
960  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep  diff -urN smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep
961  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep       2023-11-10 16:11:05.902271946 +0000  --- smeserver-ddclient-1.3.0.old/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep       2023-11-10 16:11:05.902271946 +0000
962  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep   2023-12-01 17:12:00.000000000 +0000  +++ smeserver-ddclient-1.3.0/root/usr/share/smanager/themes/default/templates/partials/_ddc_paramlist.html.ep   2023-12-16 08:19:00.000000000 +0000
963  @@ -1,4 +1,9 @@  @@ -1,4 +1,9 @@
964   <div id='paramlist'>   <div id='paramlist'>
965  +  <script>  +  <script>
# Line 673  diff -urN smeserver-ddclient-1.3.0.old/r Line 984  diff -urN smeserver-ddclient-1.3.0.old/r
984                  </span><span class=data>                  </span><span class=data>
985                      % param retrievedeamonupdate=>$ddc_datas->{"params"}->{"DeamonUpdate"};                      % param retrievedeamonupdate=>$ddc_datas->{"params"}->{"DeamonUpdate"};
986                          %=number_field 'retrievedeamonupdate',min=>0                          %=number_field 'retrievedeamonupdate',min=>0
987  @@ -19,33 +24,88 @@  @@ -19,33 +24,112 @@
988                  <span class=label>                  <span class=label>
989                          %=l 'RETRIEVE_METHOD'                          %=l 'RETRIEVE_METHOD'
990                  </span><span class=data>                  </span><span class=data>
# Line 681  diff -urN smeserver-ddclient-1.3.0.old/r Line 992  diff -urN smeserver-ddclient-1.3.0.old/r
992  -                       %=select_field  retrievemethod=>$methodlabels  -                       %=select_field  retrievemethod=>$methodlabels
993  -               </span><br>  -               </span><br>
994  -               <span class=label>  -               <span class=label>
995    -                       %=l 'RETRIEVE_IF'
996    -               </span><span class=data>
997    -                   % param retrieveinterface=>$ddc_datas->{"params"}->{"Extinterface"};
998    -                       %=text_field  'retrieveinterface'
999    -               </span><br>
1000    -               <span class=label>
1001    -                       %=l 'RETRIEVE_CMD'
1002    -               </span><span class=data>
1003    -                   % param retrievecmd=>$ddc_datas->{"params"}->{"cmd"};
1004    -                       %=text_field  'retrievecmd'
1005    -               </span><br>
1006    -               <span class=label>
1007    -                       %=l 'RETRIEVE_IP'
1008    -               </span><span class=data>
1009    -                   % param retrieveip=>$ddc_datas->{"params"}->{"ForceIP"};
1010    -                       %=text_field  'retrieveip'
1011    -               </span><br>
1012    -               <span class=label>
1013    -                       %=l 'RETRIEVE_URLCHECKIP'
1014    -               </span><span class=data>
1015    -                   % param retrieveurlcheckip=>$ddc_datas->{"params"}->{"urlcheckip"};
1016    -                       %=text_field 'retrieveurlcheckip'
1017    -               </span><br>
1018  +                   % param retrievemethod=>$ddc_datas->{"params"}->{"method"} unless param 'retrievemethod';  +                   % param retrievemethod=>$ddc_datas->{"params"}->{"method"} unless param 'retrievemethod';
1019  +                       %=select_field  retrievemethod=>$methodlabels,id=>"retrievemethod",onchange=>"SelectInput()"  +                       %=select_field  retrievemethod=>$methodlabels,id=>"retrievemethod",onchange=>"SelectInput()"
1020  +                       %= javascript begin  +                       %= javascript begin
1021  +                       function SelectInput() {  +                       function SelectInput() {
1022  +                         var method = document.querySelector("#retrievemethod");  +                         var method = document.querySelector("#retrievemethod");
1023  +                         const types=['smeIF','smeCMD','web','router','if','ip','cmd','custom'];  +                         const types=['smeIF','smeCMD','web','router','if','ip','cmdv4','custom'];
1024  +                         types.forEach((type)=>{  +                         types.forEach((type)=>{
1025  +                                 var service = document.querySelector(`.${type}`);  +                                 var service = document.querySelector(`.${type}`);
1026  +                                 if (service != null) {  +                                 if (service != null) {
# Line 703  diff -urN smeserver-ddclient-1.3.0.old/r Line 1037  diff -urN smeserver-ddclient-1.3.0.old/r
1037  +               %#  +               %#
1038  +               %# From here the one that is shown depends on the choice above  +               %# From here the one that is shown depends on the choice above
1039  +               %#  +               %#
 +               <div class = smeIF></div>  
 +               <div class = smeIF></div>  
1040  +               %# Only if "router" is chosen  +               %# Only if "router" is chosen
1041  +               <div class = router>  +               <div class = router>
1042  +               <span class=label>  +                       <span class=label>
1043  +                       %=l 'Router type'  +                               %=l 'Router type'
1044  +               </span><span class=data>  +                       </span><span class=data>
1045  +                   % param retrieveinterface=>$ddc_datas->{"params"}->{"Extinterface"} unless param 'retrieveinterface';  +                               % param retrieverouter=>$ddc_datas->{"params"}->{"Extinterface"} unless param 'retrieverouter';
1046  +                       %=select_field  retrieveinterface=>$devices  +                               %=select_field  retrieverouter=>$devices
1047  +               </span><br>  +                       </span><br>
1048    +                       %# Need login and password for router
1049    +                       <span class=label>
1050    +                               %=l 'Router login'
1051    +                       </span><span class=data>
1052    +                               % param retrieverouterlogin=>$ddc_datas->{"params"}->{"FWLogin"} unless param 'retrieverouter';
1053    +                               %=text_field  'retrieverouterlogin'
1054    +                       </span><br>
1055    +                       <span class=label>
1056    +                               %=l 'Router password'
1057    +                       </span><span class=data>
1058    +                               % param retrieverouterpassword=>$ddc_datas->{"params"}->{"FWPassword"} unless param 'retrieverouterpassword';
1059    +                               %=password_field 'retrieverouterpassword', id=>'ddcPass'
1060    +                               %=label_for show=>"Show"
1061    +                               %=check_box show=>1,onclick=>"showPass()",style=>"vertical-align:middle;"
1062    +                               %= javascript begin
1063    +                               function showPass() {
1064    +                                 var x = document.getElementById("ddcPass");
1065    +                                 if (x.type === "password") {
1066    +                                       x.type = "text";
1067    +                                 } else {
1068    +                                       x.type = "password";
1069    +                                 }
1070    +                               }
1071    +                               % end
1072    +                       </span><br>
1073  +               </div>  +               </div>
1074  +  +
1075  +               %# Only if "web" is chosen"  +               %# Only if "web" is chosen"
1076  +               <div class = web>  +               <div class = web>
1077  +               <span class=label>  +                       <span class=label>
1078  +                       %=l 'Web service'  +                               %=l 'Web service'
1079  +               </span><span class=data>  +                       </span><span class=data>
1080  +                   % param retrieveurlcheckip=>$ddc_datas->{"params"}->{"urlcheckip"} unless param 'retrieveurlcheckip';  +                               % param retrievewebservice=>$ddc_datas->{"params"}->{"urlcheckip"} unless param 'retrievewebservice';
1081  +                       %=select_field  retrieveurlcheckip=>$dnslabels  +                               %=select_field  retrievewebservice=>$webservices
1082    +                       </span><br />
1083  +               </div>  +               </div>
1084  +  +
1085  +               %# Only if "Interface" is chosen  +               %# Only if "Interface" is chosen
1086  +               <div class=if>  +               <div class=if>
1087  +               <span class=label Interface>  +                       <span class=label Interface>
1088                          %=l 'RETRIEVE_IF'  +                               %=l 'RETRIEVE_IF'
1089  -               </span><span class=data>  +                       </span><span class=data Interface>
1090  -                   % param retrieveinterface=>$ddc_datas->{"params"}->{"Extinterface"};  +                               % param retrieveinterface=>$ddc_datas->{"params"}->{"Extinterface"} unless param 'retrieveinterface';
1091  +               </span><span class=data Interface>  +                               %=text_field  'retrieveinterface'
1092  +                   % param retrieveinterface=>$ddc_datas->{"params"}->{"Extinterface"} unless param 'retrieveinterface';  +                       </span><br>
                         %=text_field  'retrieveinterface'  
                 </span><br>  
 -               <span class=label>  
1093  +               </div>  +               </div>
1094  +                +              
1095  +               %# Only if "cmd" is chosen  +               %# Only if "cmd" is chosen
1096  +               <div class=cmd>  +               <div class=cmdv4>
1097  +               <span class=label cmd>  +                       <span class=label cmd>
1098                          %=l 'RETRIEVE_CMD'  +                               %=l 'RETRIEVE_CMD'
1099  -               </span><span class=data>  +                       </span><span class=data cmd>
1100  -                   % param retrievecmd=>$ddc_datas->{"params"}->{"cmd"};  +                               % param retrievecmd=>$ddc_datas->{"params"}->{"cmdv4"} unless param 'retrievecmd';
1101  +               </span><span class=data cmd>  +                               %=text_field  'retrievecmd'
1102  +                   % param retrievecmd=>$ddc_datas->{"params"}->{"cmd"} unless param 'retrievecmd';  +                       </span><br>
                         %=text_field  'retrievecmd'  
                 </span><br>  
 -               <span class=label>  
1103  +               </div>  +               </div>
1104  +                +              
1105  +               %# Only if "ip" is chosen  +               %# Only if "ip" is chosen
1106  +               <div class=ip>  +               <div class=ip>
1107  +               <span class=label ip>  +                       <span class=label ip>
1108                          %=l 'RETRIEVE_IP'  +                               %=l 'RETRIEVE_IP'
1109  -               </span><span class=data>  +                       </span><span class=data ip>
1110  -                   % param retrieveip=>$ddc_datas->{"params"}->{"ForceIP"};  +                               % param retrieveip=>$ddc_datas->{"params"}->{"ForceIP"} unless param 'retrieveip';
1111  +               </span><span class=data ip>  +                               %=text_field  'retrieveip'
1112  +                   % param retrieveip=>$ddc_datas->{"params"}->{"ForceIP"} unless param 'retrieveip';  +                       </span><br>
                         %=text_field  'retrieveip'  
                 </span><br>  
 -               <span class=label>  
1113  +               </div>  +               </div>
1114  +                +              
1115  +               %# Only if "custom web service"  +               %# Only if "custom web service"
1116  +               <div  class=custom>  +               <div  class=custom>
1117  +               <span class=label customweb>  +                       <span class=label customweb>
1118                          %=l 'RETRIEVE_URLCHECKIP'  +                               %=l 'RETRIEVE_URLCHECKIP'
1119  -               </span><span class=data>  +                       </span><span class=data customweb>
1120  -                   % param retrieveurlcheckip=>$ddc_datas->{"params"}->{"urlcheckip"};  +                               % param retrieveurlcheckip=>$ddc_datas->{"params"}->{"urlcheckip"} unless param 'retrieveurlcheckip';
1121  +               </span><span class=data customweb>  +                               %=text_field 'retrieveurlcheckip'
1122  +                   % param retrieveurlcheckip=>$ddc_datas->{"params"}->{"urlcheckip"} unless param 'retrieveurlcheckip';  +                       </span><br>
                         %=text_field 'retrieveurlcheckip'  
                 </span><br>  
1123  +               </div>  +               </div>
1124                                    
1125                  %= submit_button "$btn", class => 'action'                  %= submit_button "$btn", class => 'action'


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed