public static function getOnClick($action, $name = '', $target = '') { $upper = strtoupper($action); if (!MAction::isAction($upper)) { $action = '>' . $action; } if ($upper == 'SUBMIT') { $onclick = MUI::doPostBack($name); } elseif ($upper == 'PRINT') { $onclick = MUI::doPrintForm(); } elseif ($upper == 'REPORT') { if ($name != '') { $onclick = MUI::doPrintFile($name); } } elseif ($upper == 'FILE') { if ($name != '') { $onclick = MUI::doPostBack($name); } } elseif ($upper == 'PDF') { if ($name != '') { $onclick = MUI::doShowPDF($name); } } elseif ($upper == 'POST') { $onclick = MUI::doPostBack($name); } elseif (substr($upper, 0, 4) == 'OPEN') { if (strpos($action, ':') !== false) { list($action, $id) = explode(':', $action); $onclick = MUI::openWindow($id); } } elseif (substr($upper, 0, 5) == 'CLOSE') { if (strpos($action, ';') !== false) { list($close, $postAction) = explode(';', $action); $onclick = MUI::closeWindow($id) . ';' . MAction::getOnClick($postAction); } else { $onclick = MUI::closeWindow($id); } } elseif (substr($upper, 0, 6) == 'PROMPT') { if (strpos($action, ':') !== false) { list($action, $id) = explode(':', $action); $onclick = MUI::doPrompt($id); } } elseif (substr($upper, 0, 4) == 'HELP') { if (strpos($action, ':') !== false) { list($action, $id) = explode(':', $action); $onclick = MUI::showHelp($id); } } elseif ($action[0] == '+') { $url = MAction::getHrefAction(substr($action, 1)); $onclick = MUI::doWindow($url, $target); } elseif ($action[0] == '^') { $url = MAction::getHrefAction(substr($action, 1)); $onclick = MUI::doDialog($name, $url); } elseif ($upper == 'NONE') { return ""; } elseif (substr($upper, 0, 4) == 'HTTP') { $onclick = MUI::doGet($action); } elseif (substr($upper, 0, 11) == 'JAVASCRIPT:') { $onclick = $action; } elseif ($action[0] == '!') { $onclick = substr($action, 1); } elseif ($action[0] == ':') { if (strpos($action, '|') !== false) { list($action, $name, $updateElement) = explode('|', $action); } $url = MAction::getHrefAction(substr($action, 1)); $onclick = MUI::doAjaxText($url, $name, $updateElement); } elseif ($action[0] == '=') { $url = MAction::getHrefAction(substr($action, 1)); $onclick = MUI::doRedirect($url); } elseif ($action[0] == '@') { $goto = MAction::getHrefAction(substr($action, 1)); $onclick = MUI::doLinkButton($goto, $name); } elseif ($action[0] == '>') { if (strpos($action, '|') !== false) { list($action, $target) = explode('|', $action); } $goto = MAction::getHrefAction(substr($action, 1)); $onclick = MUI::doGet($goto, $target); } else { $onclick = $action; } return $onclick; }
public function addEvent($event, $handler, $preventDefault = true, $dijit = false) { if ($handler[0] == ':') { $url = Manager::getCurrentURL() . '?event=' . substr($handler, 1); $handler = MUI::doAjaxText($url, $this->id); } $isDijit = false; //$this->getIsDijit() || $dijit; if ($event == 'onClick') { $event = 'click'; } elseif ($event == 'onChange') { $event = 'change'; } $this->event[$event][] = array('handler' => $handler, 'prevent' => $preventDefault, 'dijit' => $isDijit); }