Пример #1
0
 private function qsafe($text, $addComma = false)
 {
     $text = sprintf('"%s"', HTMLentities(addslashes($text)));
     if ($addComma) {
         $text .= ', ';
     }
     return $text;
 }
Пример #2
0
 public function action_admin_header($theme)
 {
     $vars = Controller::get_handler_vars();
     $js_xid2def = '';
     if ($theme->page == 'plugins' && isset($vars['configure']) && $this->plugin_id == $vars['configure']) {
         Stack::add('admin_stylesheet', array($this->get_url() . '/macros.css', 'screen'), 'macros', array('admin'));
         $macros = DB::get_results('SELECT * FROM ' . DB::table('macro') . ' ORDER BY name ASC');
         $js_xid2def .= "\n  \$(document).ready(function(){\n" . "    mDefs = [];\n" . "    mDefs[0] = ['', false, false, 0, '', ''];\n";
         foreach ($macros as $macro) {
             $xid = $macro->xid;
             $nargs = $macro->nargs;
             $enabled = $macro->enabled;
             $name = HTMLentities("'" . $macro->name . "'");
             $desc = HTMLentities("'" . $macro->description . "'");
             $def = HTMLentities("'" . $macro->definition . "'");
             $container = $macro->container ? 'true' : 'false';
             $eval = $macro->eval ? 'true' : 'false';
             $js_xid2def .= "    mDefs[{$xid}] = [" . $name . ', ' . $enabled . ', ' . $container . ', ' . $eval . ', ' . $nargs . ', ' . $desc . ', ' . $def . "];\n";
         }
         $js_xid2def .= "    \$('#mName select')" . ".change(function(){\n" . "      mNum = \$(this).val();\n" . "      \$('#mEnabled input[type=\"checkbox\"]')" . ".attr('checked', mDefs[mNum][1]);\n" . "      \$('#mDefinition input').val(\$('<input value=\"' + mDefs[mNum][6] + '\"/>').val());\n" . "      \$('#mContainer input[type=\"checkbox\"]')" . ".attr('checked', mDefs[mNum][2]);\n" . "      \$('#mEval input[type=\"checkbox\"]')" . ".attr('checked', mDefs[mNum][3]);\n" . "      \$('#mNargs input[type=\"text\"]')" . ".val(\$('<input value=\"' + mDefs[mNum][4] + '\"/>').val());\n" . "      \$('#mDescription input[type=\"text\"]')" . ".val(\$('<input value=\"' + mDefs[mNum][5] + '\"/>').val());\n" . "      \$('#mDefinition input[type=\"text\"]')" . ".val(\$('<input value=\"' + mDefs[mNum][6] + '\"/o>').val())});\n" . "  })\n";
         Stack::add('admin_header_javascript', $js_xid2def, 'macros', 'admin');
     }
 }