function pli_handler($content) { return '<div id="source"><pre>' . escape_it(syntax_highlight($content, "PL/I")) . '</pre></div>'; }
/** * Show read only properties of a function */ function doProperties($msg = '') { global $data, $misc; global $lang; $misc->printTrail('function'); $misc->printTitle($lang['strproperties'], 'pg.function'); $misc->printMsg($msg); $funcdata = $data->getFunction($_REQUEST['function_oid']); if ($funcdata->recordCount() > 0) { // Deal with named parameters if ($data->hasNamedParams()) { $args_arr = explode(', ', $funcdata->fields['proarguments']); $names_arr = $data->phpArray($funcdata->fields['proargnames']); $args = ''; $i = 0; for ($i = 0; $i < sizeof($args_arr); $i++) { if ($i != 0) { $args .= ', '; } if (isset($names_arr[$i]) && $names_arr[$i] != '') { $data->fieldClean($names_arr[$i]); $args .= '"' . $names_arr[$i] . '" '; } $args .= $args_arr[$i]; } } else { $args = $funcdata->fields['proarguments']; } // Show comment if any if ($funcdata->fields['procomment'] !== null) { echo "<p class=\"comment\">", $misc->printVal($funcdata->fields['procomment']), "</p>\n"; } $funcdata->fields['proretset'] = $data->phpBool($funcdata->fields['proretset']); $func_full = $funcdata->fields['proname'] . "(" . $funcdata->fields['proarguments'] . ")"; echo "<table style=\"width: 90%\">\n"; echo "<tr><th class=\"data\">{$lang['strfunction']}</th>\n"; echo "<th class=\"data\">{$lang['strarguments']}</th>\n"; echo "<th class=\"data\">{$lang['strreturns']}</th>\n"; echo "<th class=\"data\">{$lang['strproglanguage']}</th></tr>\n"; echo "<tr><td class=\"data1\">", $misc->printVal($funcdata->fields['proname']), "</td>\n"; echo "<td class=\"data1\">", $misc->printVal($args), "</td>\n"; echo "<td class=\"data1\">"; if ($funcdata->fields['proretset']) { echo "setof "; } echo $misc->printVal($funcdata->fields['proresult']), "</td>\n"; echo "<td class=\"data1\">", $misc->printVal($funcdata->fields['prolanguage']), "</td></tr>\n"; $fnlang = strtolower($funcdata->fields['prolanguage']); if ($fnlang == 'c') { echo "<tr><th class=\"data\" colspan=\"2\">{$lang['strobjectfile']}</th>\n"; echo "<th class=\"data\" colspan=\"2\">{$lang['strlinksymbol']}</th></tr>\n"; echo "<tr><td class=\"data1\" colspan=\"2\">", $misc->printVal($funcdata->fields['probin']), "</td>\n"; echo "<td class=\"data1\" colspan=\"2\">", $misc->printVal($funcdata->fields['prosrc']), "</td></tr>\n"; } else { if ($fnlang == 'internal') { echo "<tr><th class=\"data\" colspan=\"4\">{$lang['strlinksymbol']}</th></tr>\n"; echo "<tr><td class=\"data1\" colspan=\"4\">", $misc->printVal($funcdata->fields['prosrc']), "</td></tr>\n"; } else { include_once './libraries/highlight.php'; echo "<tr><th class=\"data\" colspan=\"4\">{$lang['strdefinition']}</th></tr>\n"; // Check to see if we have syntax highlighting for this language if (isset($data->langmap[$funcdata->fields['prolanguage']])) { $temp = syntax_highlight(htmlspecialchars($funcdata->fields['prosrc']), $data->langmap[$funcdata->fields['prolanguage']]); $tag = 'prenoescape'; } else { $temp = $funcdata->fields['prosrc']; $tag = 'pre'; } echo "<tr><td class=\"data1\" colspan=\"4\">", $misc->printVal($temp, $tag, array('lineno' => true, 'class' => 'data1')), "</td></tr>\n"; } } // Display function cost options if ($data->hasFunctionCosting()) { echo "<tr><th class=\"data required\" colspan=\"4\">{$lang['strfunctioncosting']}</th></tr>\n"; echo "<td class=\"data1\" colspan=\"2\">{$lang['strexecutioncost']}: ", $misc->printVal($funcdata->fields['procost']), " </td>"; echo "<td class=\"data1\" colspan=\"2\">{$lang['strresultrows']}: ", $misc->printVal($funcdata->fields['prorows']), " </td>"; } // Show flags if (is_array($data->funcprops) && sizeof($data->funcprops) > 0) { // Fetch an array of the function properties $funcprops = $data->getFunctionProperties($funcdata->fields); echo "<tr><th class=\"data\" colspan=\"4\">{$lang['strproperties']}</th></tr>\n"; echo "<tr><td class=\"data1\" colspan=\"4\">\n"; foreach ($funcprops as $v) { echo $misc->printVal($v), "<br />\n"; } echo "</td></tr>\n"; } echo "<tr><td class=\"data1\" colspan=\"5\">{$lang['strowner']}: ", htmlspecialchars($funcdata->fields['proowner']), "\n"; echo "</td></tr>\n"; echo "</table>\n"; } else { echo "<p>{$lang['strnodata']}</p>\n"; } $navlinks = array('showall' => array('attr' => array('href' => array('url' => 'functions.php', 'urlvars' => array('server' => $_REQUEST['server'], 'database' => $_REQUEST['database'], 'schema' => $_REQUEST['schema']))), 'content' => $lang['strshowallfunctions']), 'alter' => array('attr' => array('href' => array('url' => 'functions.php', 'urlvars' => array('action' => 'edit', 'server' => $_REQUEST['server'], 'database' => $_REQUEST['database'], 'schema' => $_REQUEST['schema'], 'function' => $_REQUEST['function'], 'function_oid' => $_REQUEST['function_oid']))), 'content' => $lang['stralter']), 'drop' => array('attr' => array('href' => array('url' => 'functions.php', 'urlvars' => array('action' => 'confirm_drop', 'server' => $_REQUEST['server'], 'database' => $_REQUEST['database'], 'schema' => $_REQUEST['schema'], 'function' => $func_full, 'function_oid' => $_REQUEST['function_oid']))), 'content' => $lang['strdrop'])); $misc->printNavLinks($navlinks, 'functions-properties', get_defined_vars()); }
fclose($fpread); /** * code highlighting */ $parsedname = stripslashes($row['name']); $parsedname = $parsedname == '0' ? $lang['user_no_name'] : $parsedname; $parseddate = date($lang['dateformat'], $row['time']); $description = stripslashes($row['description']); $description = preg_replace("/\n/", "<br />\n", $description); $description = $description == '0' ? $lang['user_no_description'] : $description; $code = stripslashes(htmlspecialchars($row['code'])); $codelang = $row['code_lang']; $code = preg_replace("/ /", " ", $code); $code = preg_replace("/</", "<", $code); $code = preg_replace("/>/", ">", $code); $code = syntax_highlight($code, $codelang); $code = str_replace("\t", str_repeat(' ', $row['tab_length']), $code); $explode = explode("\n", $code); $parsedcode = ''; $i = 0; foreach ($explode as $value) { $classnumber = $i % 2; if (trim($value) != '') { $parsedcode .= "<li class=\"rowstyle" . $classnumber . "\">" . $value . "</li>\n"; } else { $parsedcode .= "<li class=\"rowstyle" . $classnumber . "\"> </li>\n"; } $i++; } /** * replace vars - output.tpl