function assign_vars($templateEngine) { global $Settings; list($fileversions, $application_version) = css_file_version(); $templateEngine->assign("radmincssversion", $fileversions['radmin.css']); $templateEngine->assign("hotspotcssversion", $fileversions['hotspot.css']); $templateEngine->assign("grasejsversion", $fileversions['grase.js']); $templateEngine->assign("radminjsversion", $fileversions['radmin.js']); $templateEngine->assign("application_version", $application_version); $templateEngine->assign("Application", APPLICATION_NAME); // Setup Menus $templateEngine->assign("MenuItems", createmenuitems()); /*$smarty->assign("Usergroups", usergroups());*/ // Costs //$smarty->assign("CurrencySymbols", currency_symbols()); $templateEngine->assign("Datacosts", datacosts()); $templateEngine->assign("GroupDatacosts", datavals()); $templateEngine->assign("Datavals", datavals()); $templateEngine->assign("Timecosts", timecosts()); $templateEngine->assign("GroupTimecosts", timevals()); $templateEngine->assign("Timevals", timevals()); $templateEngine->assign("Bandwidthvals", bandwidth_options()); $templateEngine->assign("Recurtimes", recurtimes()); // Settings $templateEngine->assign("Title", $Settings->getSetting('locationName') . " - " . APPLICATION_NAME); $templateEngine->assign("website_name", $Settings->getSetting('websiteName')); $templateEngine->assign("website_link", $Settings->getSetting('websiteLink')); // Group data for displaying group properties $templateEngine->assign("groupdata", DatabaseFunctions::getInstance()->getGroupAttributes()); $templateEngine->assign("groupsettings", $Settings->getGroup()); $templateEngine->assign("groups", grouplist()); // DEMO SITE flag // Allow extra things on Demo site (piwik tracking of admin interface) $templateEngine->assign("DEMOSITE", $Settings->getSetting('demosite')); // Usermin assign vars if (function_exists('usermin_assign_vars')) { usermin_assign_vars(); } }
if (!\Grase\Validate::numericLimit($groupIdleTimeout[$key])) { $error[] = sprintf(T_("Invalid value '%s' for Idle Timeout"), $groupIdleTimeout[$key]); } if (!\Grase\Validate::recurrenceInterval($groupRecurTime[$key], recurtimes())) { $error[] = sprintf(T_("Invalid recurrence interval '%s'"), $groupRecurTime[$key]); } if (!\Grase\Validate::recurrenceInterval($groupRecurData[$key], recurtimes())) { $error[] = sprintf(T_("Invalid recurrence interval '%s'"), $groupRecurData[$key]); } if (!\Grase\Validate::recurrenceTime($groupRecurTime[$key], $groupRecurTimeLimit[$key])) { $error[] = T_("Recurring time limit must be less than interval"); } if (!\Grase\Validate::bandwidthOptions($groupBandwidthDownLimit[$key], bandwidth_options())) { $error[] = sprintf(T_("Invalid Bandwidth Limit '%s'"), $groupBandwidthDownLimit[$key]); } if (!\Grase\Validate::bandwidthOptions($groupBandwidthUpLimit[$key], bandwidth_options())) { $error[] = sprintf(T_("Invalid Bandwidth Limit '%s'"), $groupBandwidthUpLimit[$key]); } //TODO we don't validate that it's not 0, relying on HTML5 to do that $error[] = @validate_int($groupSimultaneousUse[$key], true); // TODO: Validate Login-Time $error[] = @validate_uucptimerange($groupLoginTime[$key]); $error = array_filter($error); if (isset($groupRecurTime[$key]) xor isset($groupRecurTimeLimit[$key])) { $error[] = sprintf(T_("Need both a time limit and recurrance for '%s'"), \Grase\Clean::text($name)); } $groups[\Grase\Clean::groupName($name)] = array_filter(array('DataRecurTime' => \Grase\Clean::text($groupRecurData[$key]), 'DataRecurLimit' => clean_number($groupRecurDataLimit[$key]), 'TimeRecurTime' => @\Grase\Clean::text($groupRecurTime[$key]), 'TimeRecurLimit' => @clean_int($groupRecurTimeLimit[$key]), 'BandwidthDownLimit' => @clean_int($groupBandwidthDownLimit[$key]), 'BandwidthUpLimit' => @clean_int($groupBandwidthUpLimit[$key]), 'SimultaneousUse' => @clean_int($groupSimultaneousUse[$key]), 'LoginTime' => @$groupLoginTime[$key], 'IdleTimeout' => @clean_int($groupIdleTimeout[$key]))); $groupSettings[\Grase\Clean::groupName($name)] = array_filter(array('GroupName' => \Grase\Clean::groupName($name), 'Comment' => \Grase\Clean::text($groupComment[$key]), 'GroupLabel' => \Grase\Clean::text($name), 'Expiry' => @$groupExpiry[$key], 'ExpireAfter' => @$groupExpireAfter[$key], 'MaxMb' => @clean_number($groupDataLimit[$key]), 'MaxTime' => @clean_int($groupTimeLimit[$key]))); } if (sizeof($error) == 0) { // No errors. Save groups