$externalUserID = isExternalID($data['user_externalid']); $username = $data['username']; $identifyServerBy = $data['identify_server_by']; $localServerID = isid($data['server_local_id'], 21); $externalServerID = isExternalID($data['server_external_id']); if (dataExist('identify_server_by', $data)) { $query = $sql->prepare("SELECT v.*,u.`cname` FROM `voice_server` AS v INNER JOIN `userdata` AS u ON u.`id`=v.`userid` WHERE v.`" . $from[$data['identify_server_by']] . "`=? AND v.`resellerid`=? LIMIT 1"); $query->execute(array($data[$data['identify_server_by']], $resellerID)); while ($row = $query->fetch(PDO::FETCH_ASSOC)) { $localID = $row['id']; $userID = $row['userid']; $hostID = $row['masterserver']; $masterServerID = $row['masterserver']; $oldSlots = $row['slots']; $name = $row['ip'] . ':' . $row['port']; $usedPorts = usedPorts(array($row['ip'])); $oldActive = $row['active']; $ip = $row['ip']; $private = $row['password']; $port = $row['port']; $active = $row['active']; $slots = $row['slots']; $max_download_total_bandwidth = $row['max_download_total_bandwidth']; $max_upload_total_bandwidth = $row['max_upload_total_bandwidth']; $maxtraffic = $row['maxtraffic']; $forcebanner = $row['forcebanner']; $forcebutton = $row['forcebutton']; $forceservertag = $row['forceservertag']; $forcewelcome = $row['forcewelcome']; $lendserver = $row['lendserver']; $backup = $row['backup'];
$query->execute(array($userID, $resellerLockupID)); if ($query->rowCount() == 0) { $error['userID'] = $sprache->user; } } } if (!$active) { $errors['active'] = $sprache->active; } if (!$ip) { $errors['ip'] = $sprache->ip; } if (!$port) { $errors['port'] = $sprache->port; } else { $used = usedPorts(array($ip)); if (in_array($port, $used['ports']) and ($ui->st('action', 'post') == 'ad' or $ui->st('action', 'post') == 'md' and isset($oldPort, $oldIp) and ($oldPort != $port or $ip != $oldIp))) { $errors['port'] = $sprache->port; } } if (!$slots) { $errors['slots'] = $sprache->slots; } else { $query2 = $sql->prepare("SELECT SUM(`slots`) AS `installedslots` FROM `voice_server` WHERE `masterserver`=? AND `resellerid`=? LIMIT 1"); $query2->execute(array($rootID, $resellerLockupID)); $futureSlots = (int) $query2->fetchColumn() - $oldSlots + $slots; if ($futureSlots > $masterServerData['maxslots']) { $errors['slots'] = $sprache->slots; } } if ($ui->st('action', 'post') == 'ad' and !$userID) {
* * Easy-WI ist Freie Software: Sie koennen es unter den Bedingungen * der GNU General Public License, wie von der Free Software Foundation, * Version 3 der Lizenz oder (nach Ihrer Wahl) jeder spaeteren * veroeffentlichten Version, weiterverbreiten und/oder modifizieren. * * Easy-WI wird in der Hoffnung, dass es nuetzlich sein wird, aber * OHNE JEDE GEWAEHELEISTUNG, bereitgestellt; sogar ohne die implizite * Gewaehrleistung der MARKTFAEHIGKEIT oder EIGNUNG FUER EINEN BESTIMMTEN ZWECK. * Siehe die GNU General Public License fuer weitere Details. * * Sie sollten eine Kopie der GNU General Public License zusammen mit diesem * Programm erhalten haben. Wenn nicht, siehe <http://www.gnu.org/licenses/>. */ if (!defined('AJAXINCLUDED')) { die('Do not access directly!'); } $sprache = getlanguagefile('voice', $user_language, $reseller_id); $usedPorts = usedPorts(array($ui->ip4('ip', 'get'))); $portList = count($usedPorts['ports']) > 0 ? implode(', ', $usedPorts['ports']) : 'None'; if ($ui->id('serverID', 10, 'get') and $ui->ip4('ip', 'get')) { $query = $sql->prepare("SELECT `port` FROM `voice_server` WHERE `id`=? AND `resellerid`=? AND `ip`=? LIMIT 1"); $query->execute(array($ui->id('serverID', 10, 'get'), $resellerLockupID, $ui->ip4('ip', 'get'))); $port = $query->fetchColumn(); } else { $port = 9987; while (in_array($port, $usedPorts['ports'])) { $port++; } } require_once IncludeTemplate($template_to_use, 'ajax_admin_voice_ports.tpl', 'ajax');
if ($i == $coreCount or $i == $data['coreCount']) { break; } } $calculatedCores = implode(',', $calculatedCores); } $hostExternalID = $row['externalID']; $oldSlots = $row['slots']; $name = $row['serverip'] . ':' . $row['port']; $oldActive = $row['active']; $oldIP = $row['serverip']; $oldPort = $row['port']; $oldHomeDirLabel = $row['homeLabel']; $oldHdd = $row['hdd']; $oldProtected = $row['pallowed']; $usedPorts = usedPorts(array($row['serverip'])); $active = $row['active']; $ip = $row['serverip']; $port = $row['port']; $port2 = $row['port2']; $port3 = $row['port3']; $port4 = $row['port4']; $port5 = $row['port5']; $cores = $row['cores']; $minram = $row['minram']; $maxram = $row['maxram']; $pallowed = $row['pallowed']; $autoRestart = $row['autoRestart']; $homeDirLabel = $row['homeLabel']; $hdd = $row['hdd']; $query = $sql->prepare("SELECT COUNT(`jobID`) AS `amount` FROM `jobs` WHERE `affectedID`=? AND `resellerID`=? AND `action`='dl' AND (`status` IS NULL OR `status`='1') LIMIT 1");
if (isset($values['size'])) { $query2->execute(array($ui->id('id', 10, 'get'), $key)); $usedSpace[$key] = array('installed' => (int) $query2->fetchColumn() / 1000, 'available' => $values['size']); } } } if (count($table2) == 0) { $table2[] = 'home'; } } $query = $sql->prepare("SELECT t.`id`,t.`description`,t.`shorten` FROM `servertypes` t WHERE t.`resellerid`=? AND EXISTS (SELECT m.`id` FROM `rservermasterg` m WHERE m.`serverid`=? AND m.`servertypeid`=t.`id` LIMIT 1) ORDER BY t.`description` ASC"); $query->execute(array($resellerLockupID, $ui->id('id', 10, 'get'))); while ($row = $query->fetch(PDO::FETCH_ASSOC)) { $table[$row['id']] = array('shorten' => $row['shorten'], 'description' => $row['description']); } $used = usedPorts($ui->id('currentRootID', 10, 'get') == $ui->id('id', 10, 'get') ? array($ui->ip4('currentIP', 'get')) : $ips); $ports = count($used['ports']) > 0 ? implode(', ', $used['ports']) : 'None'; $ip = $used['ip']; $query = $sql->prepare("SELECT `cores`,`taskset` FROM `gsswitch` WHERE `rootID`=? AND `resellerid`=?"); $query->execute(array($ui->id('id', 10, 'get'), $resellerLockupID)); while ($row = $query->fetch(PDO::FETCH_ASSOC)) { $ce = explode(',', $row['cores']); $cc = count($ce); if ($row['taskset'] == 'Y' and $cc > 0) { foreach ($ce as $uc) { $cores[$uc] = $cores[$uc] + round(1 / $cc, 2); } } } // During edit we need additional data // To avoid PHP notice during add, we need to define up front