#!/usr/bin/perl
-#
-# SmoothWall CGIs
-#
-# This code is distributed under the terms of the GPL
-#
-# (c) The SmoothWall Team
-#
-# $Id: ddns.cgi,v 1.7.2.41 2006/02/07 01:29:47 franck78 Exp $
-#
+###############################################################################
+# #
+# IPFire.org - A linux based firewall #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
+# #
+# This program is free software: you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation, either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# This program is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see <http://www.gnu.org/licenses/>. #
+# #
+###############################################################################
use strict;
#use warnings;
#use CGI::Carp 'fatalsToBrowser';
-require 'CONFIG_ROOT/general-functions.pl';
+require '/var/ipfire/general-functions.pl';
require "${General::swroot}/lang.pl";
require "${General::swroot}/header.pl";
my $ddnsprefix = $Lang::tr{'ddns noip prefix'};
$ddnsprefix =~ s/%/$General::noipprefix/;
+my %color = ();
+my %mainsettings = ();
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
+
# Files used
my $setting = "${General::swroot}/ddns/settings";
our $datafile = "${General::swroot}/ddns/config";
}
# Permit an empty HOSTNAME for the nsupdate, regfish, dyndns, enom, ovh, zoneedit, no-ip, easydns
+ #and namecheap
unless ($settings{'SERVICE'} eq 'zoneedit.com' || $settings{'SERVICE'} eq 'nsupdate' ||
$settings{'SERVICE'} eq 'dyndns-custom'|| $settings{'SERVICE'} eq 'regfish.com' ||
$settings{'SERVICE'} eq 'enom.com' || $settings{'SERVICE'} eq 'dnspark.com' ||
$settings{'SERVICE'} eq 'ovh.com' || $settings{'HOSTNAME'} ne '' ||
- $settings{'SERVICE'} eq 'no-ip.com' || $settings{'SERVICE'} eq 'easydns.com' ) {
+ $settings{'SERVICE'} eq 'no-ip.com' || $settings{'SERVICE'} eq 'easydns.com' ||
+ $settings{'SERVICE'} eq 'namecheap.com' ) {
$errormessage = $Lang::tr{'hostname not set'};
}
unless ($settings{'HOSTNAME'} eq '' || $settings{'HOSTNAME'} =~ /^[a-zA-Z_0-9-]+$/) {
&Header::openbigbox('100%', 'left', '', $errormessage);
my %checked =(); # Checkbox manipulations
+$checked{'SERVICE'}{'all-inkl.com'} = '';
$checked{'SERVICE'}{'cjb.net'} = '';
$checked{'SERVICE'}{'dhs.org'} = '';
$checked{'SERVICE'}{'dnspark.com'} = '';
+$checked{'SERVICE'}{'dns.lightningwirelabs.com'} = '';
$checked{'SERVICE'}{'dtdns.com'} = '';
$checked{'SERVICE'}{'dyndns.org'} = '';
$checked{'SERVICE'}{'dyndns-custom'} = '';
$checked{'SERVICE'}{'enom.com'} = '';
$checked{'SERVICE'}{'freedns.afraid.org'} = '';
$checked{'SERVICE'}{'hn.org'} = '';
+$checked{'SERVICE'}{'namecheap.com'} = '';
$checked{'SERVICE'}{'no-ip.com'} = '';
$checked{'SERVICE'}{'nsupdate'} = '';
$checked{'SERVICE'}{'ovh.com'} = '';
$checked{'SERVICE'}{'regfish.com'} = '';
$checked{'SERVICE'}{'selfhost.de'} = '';
+$checked{'SERVICE'}{'strato.com'} = '';
$checked{'SERVICE'}{'tzo.com'} = '';
$checked{'SERVICE'}{'zoneedit.com'} = '';
$checked{'SERVICE'}{$settings{'SERVICE'}} = "selected='selected'";
<td class='base'>$Lang::tr{'dyn dns source choice'}</td>
</tr><tr>
<td class='base'><input type='radio' name='BEHINDROUTER' value='RED_IP' $checked{'BEHINDROUTER'}{'RED_IP'} />
- $Lang::tr{'use ipcop red ip'}</td>
+ $Lang::tr{'use ipfire red ip'}</td>
</tr><tr>
<td class='base'><input type='radio' name='BEHINDROUTER' value='FETCH_IP' $checked{'BEHINDROUTER'}{'FETCH_IP'} />
$Lang::tr{'fetch ip from'} <img src='/blob.gif' alt='*' /></td>
<tr>
<td width='25%' class='base'>$Lang::tr{'service'}:</td>
<td width='25%'><select size='1' name='SERVICE'>
+ <option $checked{'SERVICE'}{'all-inkl.com'}>all-inkl.com</option>
<option $checked{'SERVICE'}{'cjb.net'}>cjb.net</option>
<option $checked{'SERVICE'}{'dhs.org'}>dhs.org</option>
<option $checked{'SERVICE'}{'dnspark.com'}>dnspark.com</option>
+ <option $checked{'SERVICE'}{'dns.lightningwirelabs.com'}>dns.lightningwirelabs.com</option>
<option $checked{'SERVICE'}{'dtdns.com'}>dtdns.com</option>
<option $checked{'SERVICE'}{'dyndns.org'}>dyndns.org</option>
<option $checked{'SERVICE'}{'dyndns-custom'}>dyndns-custom</option>
<option $checked{'SERVICE'}{'enom.com'}>enom.com</option>
<option $checked{'SERVICE'}{'freedns.afraid.org'}>freedns.afraid.org</option>
<option $checked{'SERVICE'}{'hn.org'}>hn.org</option>
+ <option $checked{'SERVICE'}{'namecheap.com'}>namecheap.com</option>
<option $checked{'SERVICE'}{'no-ip.com'}>no-ip.com</option>
<option $checked{'SERVICE'}{'nsupdate'}>nsupdate</option>
<option $checked{'SERVICE'}{'ovh.com'}>ovh.com</option>
<option $checked{'SERVICE'}{'regfish.com'}>regfish.com</option>
<option $checked{'SERVICE'}{'selfhost.de'}>selfhost.de</option>
+ <option $checked{'SERVICE'}{'strato.com'}>strato.com</option>
<!-- <option $checked{'SERVICE'}{'tzo.com'}>tzo.com</option> comment this service out until a working fix is developed -->
<option $checked{'SERVICE'}{'zoneedit.com'}>zoneedit.com</option>
</select></td>
if ($settings{'KEY1'} eq $key) {
print "<tr bgcolor='${Header::colouryellow}'>";
} elsif ($key % 2) {
- print "<tr bgcolor='${Header::table2colour}'>";
+ print "<tr bgcolor='$color{'color22'}'>";
} else {
- print "<tr bgcolor='${Header::table1colour}'>";
+ print "<tr bgcolor='$color{'color20'}'>";
}
#if a field is empty, replace it with a '---' to see colorized info!