public static function handleAjaxCall($page, $func, $table, $idField, $useLike) { global $REX; if (isset($REX['USER']) && rex_request('page') == $page) { self::$ajaxFunctionName = $func; if (rex_request('func') == self::$ajaxFunctionName) { // update prio in db self::updatePrio(rex_request('order'), $table, $idField, $useLike); // update init file to reflect changes rex_website_manager::updateInitFile(); // stop executing rest of redaxo stuff exit; } } }
// icon column $thIcon = '<a class="rex-i-element rex-i-generic-add" href="' . $list->getUrl(array('func' => 'add')) . '"><span class="rex-i-element-text">' . $I18N->msg('website_manager_website_add_website') . '</span></a>'; $tdIcon = '<span class="rex-i-element rex-i-generic"><span class="rex-i-element-text">###name###</span></span>'; $list->addColumn($thIcon, $tdIcon, 0, array('<th class="rex-icon">###VALUE###</th>', '<td class="rex-icon">###VALUE###</td>')); $list->setColumnParams($thIcon, array('func' => 'edit', 'website_id' => '###id###')); // functions column spans 2 data-columns $funcs = $I18N->msg('website_manager_website_functions'); $list->addColumn($funcs, $I18N->msg('website_manager_website_edit'), -1, array('<th colspan="2">###VALUE###</th>', '<td>###VALUE###</td>')); $list->setColumnParams($funcs, array('func' => 'edit', 'website_id' => $website_id, 'website_id' => '###id###')); $delete = 'deleteCol'; $list->addColumn($delete, $I18N->msg('website_manager_website_delete'), -1, array('', '<td>###VALUE###</td>')); $list->setColumnParams($delete, array('website_id' => '###id###', 'func' => 'delete')); $list->addLinkAttribute($delete, 'onclick', 'alert(\'' . $I18N->msg('website_manager_website_delete_editmode') . '\'); return false;'); $list->show(); // prio switch rex_website_manager_prio_switch::printSwitch(array($I18N->msg('website_manager_prio_mode'), $I18N->msg('website_manager_prio_mode_on'), $I18N->msg('website_manager_prio_mode_off')), false); } elseif ($func == 'add' || $func == 'edit' && $website_id > 0) { if ($func == 'edit') { $formLabel = $I18N->msg('website_manager_website_website_edit'); $defaultId = null; } elseif ($func == 'add') { $formLabel = $I18N->msg('website_manager_website_website_add'); $defaultId = '1'; } $form = rex_form::factory('rex_website', $formLabel, 'id=' . $website_id); $form->addErrorMessage(REX_FORM_ERROR_VIOLATE_UNIQUE_KEY, $I18N->msg('website_manager_website_id_exists')); // color $field =& $form->addTextField('color'); $field->setLabel($I18N->msg('website_manager_website_color')); $field->setAttribute('id', 'color-picker'); $field->setAttribute('style', 'visibility: hidden; height: 20px;');
public static function initPrioSwitch() { global $REX; // include main class if (!class_exists('rex_prio_switch')) { include $REX['INCLUDE_PATH'] . '/addons/website_manager/classes/class.rex_prio_switch.inc.php'; } // include extended class for use in this addon include $REX['INCLUDE_PATH'] . '/addons/website_manager/classes/class.rex_website_manager_prio_switch.inc.php'; // for ajax call: update prio in db if necessary rex_website_manager_prio_switch::handleAjaxCall('website_manager', 'update_websites_prio', 'rex_website', 'id', false); }