⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bk_admin_main.inc

📁 BabelKit是一个通用多语言数据库代码表的接口。它接收维护使用多语言的多个数据库代码定义集中的所有编程工作。代码管理和翻译页可以让开发人员定义新的虚拟代码表
💻 INC
📖 第 1 页 / 共 2 页
字号:
<?php#       #       #       ### bk_admin.inc## BabelKit Universal Multilingual Code Table translation page.## Copyright (C) 2003 John Gorman <jgorman@webbysoft.com># http://www.webbysoft.com/babelkit##       #       #       ### Main dispatch logic.#function bka_admin_main() {    global $bkh;        # Set in bk_admin.php:    global $perm_add;    global $perm_del;    global $action;     # Set here:    global $code_set;    global $code_lang;    global $code_lang2;    global $code_code;    global $code_admin;    $getpost = $_POST ? '_POST' : '_GET';    $action     = $GLOBALS[$getpost]['action'];    $code_set   = $GLOBALS[$getpost]['code_set'];    $code_lang  = $GLOBALS[$getpost]['code_lang'];    $code_lang2 = $GLOBALS[$getpost]['code_lang2'];    $code_code  = $GLOBALS[$getpost]['code_code'];    if (!$code_lang or $code_lang == $code_lang2)        $code_lang2 = '';    if (!$code_lang) $code_lang = $bkh->native;    $code_admin = bka_admin_get($code_set);    if ($code_admin['slave']) {        $perm_add = 0;        $perm_del = 0;    }    bka_admin_header();    if ($action == 'New') {        bka_form_display();    } elseif ($action == '' && $code_code <> '') {        bka_form_display($code_code);    } elseif ($action <> '') {        bka_form_aud();    } elseif ($code_set <> '') {        bka_set_display();    } else {        bka_translations();    }    print "    </body>    </html>    ";}#       #       #       ### Print the page header#function bka_admin_header() {    global $bkh;    global $action;    global $code_set;    global $code_lang;    global $code_lang2;    global $code_code;    $title = "BabelKit Universal Code Translation";    if ($code_set) $title .= " : $code_set";    if ($action == 'New') {        $title .= " : New";    } elseif ($code_code <> '') {        $title .= " : $code_code";    } elseif ($code_set) {        if ($code_lang) $title .= " : $code_lang";        if ($code_lang2) $title .= "/$code_lang2";    }    print "    <html>    <head>    <title>$title</title>    </head>    <body text=\"#000044\" bgcolor=\"#f0ffff\"    link=\"#0000cc\" vlink=\"#0066ff\" alink=\"#ffcc00\">    <center>    <h2 style=\"color:#873852\">$title</h2>    <a href=\"" . bka_sess_url($_SERVER['PHP_SELF']) .        "\"><b>Main Translation Page</b></a>    - <a href=\"http://www.webbysoft.com/babelkit/doc\"><b>Help Docs</b></a>    - <a href=\"http://www.webbysoft.com/babelkit\"><b>BabelKit Home</b></a>    <p><b style=\"color:#873852\">        Select a code set and language(s)</b>    <form action=\"" . bka_sess_url($_SERVER['PHP_SELF']) . "\" method=\"post\">    ";    print $bkh->select('code_set',  $bkh->native, array(        'blank_prompt' => 'All Codes'    ));    print $bkh->select('code_lang', $bkh->native);    print $bkh->select('code_lang', $bkh->native, array(        'var_name' => 'code_lang2',        'select_prompt' => '(Other)',        'blank_prompt' => '(None)'    ));    print "    <input type=submit value=\"View Set\">    </form>    </center>    <hr>    ";}#       #       #       ### Display the code translation todo list#function bka_translations() {    global $bkh;    print "<b style=\"color:#873852\">BabelKit Translation Sets</b>\n";    # Get the code counts for all language sets.    $code_counts = bka_get_counts();    # Get the code and language sets and print the top header.    $set_rows  = $bkh->lang_set('code_set',  $bkh->native);    $lang_rows = $bkh->lang_set('code_lang', $bkh->native);    print "<pre>\n";    printf("%-16s", "");    foreach ( $lang_rows as $lang_row ) {        if ($lang_row[3] == 'd') continue;        $lang_cd = $lang_row[0];        printf("<b>%6s</b>", $lang_cd);    }    # Print the count array.    foreach ( $set_rows as $set_row ) {        if ($set_row[3] == 'd') continue;        $set_cd = $set_row[0];        $this_admin = bka_admin_get($set_cd);        if ($this_admin['param']) continue;        print "\n<a href=\"" .            bka_sess_url($_SERVER['PHP_SELF'] . "?code_set=$set_cd") .            "\">$set_cd</a>";        print bka_str_repeat(' ', 16 - strlen($set_cd) );        $nat_count = $code_counts[$set_cd][$bkh->native];        foreach ( $lang_rows as $lang_row ) {            if ($lang_row[3] == 'd') continue;            $lang_cd = $lang_row[0];            $code_count = $code_counts[$set_cd][$lang_cd];            print bka_str_repeat(' ', 6 - strlen($code_count + 0) );            print "<a href=\"" . bka_sess_url($_SERVER['PHP_SELF'] .                "?code_set=$set_cd" .                "&code_lang=$bkh->native" .                "&code_lang2=$lang_cd") .                "\">";            if ($code_count == $nat_count) {                printf("%d", $code_count);            } else {                printf("<span style=\"color:red\">%d</span>", $code_count);                $todo_count += 1;            }            print "</a>";            $totals[$lang_cd] += $code_count;        }    }    # Print the language totals.    printf("\n%-16s", "");    foreach ( $lang_rows as $lang_row ) {        if ($lang_row[3] == 'd') continue;        $lang_cd = $lang_row[0];        printf("%6d", $totals[$lang_cd]);    }    print "</pre>\n";    printf("%d language sets need translation work!", $todo_count);}#       #       #       ### Display a code set#function bka_set_display() {    global $bkh;    global $code_set;    global $code_lang;    global $code_lang2;    global $code_admin;    global $perm_add;    if ($code_lang == $bkh->native) {        $edit_lang2 = $code_lang2;    } else {        $edit_lang2 = '';    }    $set_desc = $bkh->ucwords('code_set', $bkh->native, $code_set);    print "<b style=\"color:#873852\">$set_desc Code Administration</b>\n";    print "<p>\n";    print "    <table border=\"0\" cellspacing=\"1\" cellpadding=\"1\">    <tr>    ";    if ($code_set == 'code_set') {        print "        <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">            <strong>&nbsp;P&nbsp;</strong></th>        <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">            <strong>&nbsp;S&nbsp;</strong></th>        <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">            <strong>&nbsp;M&nbsp;</strong></th>        ";    } else {        print "        <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">            <strong>&nbsp;D&nbsp;</strong></th>        ";    }    print "    <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">        <strong>&nbsp;O&nbsp;</strong></th>    <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">        <strong>&nbsp;Code&nbsp;</strong></th>    <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">        <strong>&nbsp;Description&nbsp;</strong></th>    <th bgcolor=\"#000000\" STYLE=\"color:white;font-size:9pt\">        <strong>&nbsp;Edit&nbsp;</strong></th>    </tr>    ";    # Gather the codes in order and truncate the descriptions.    $base_set = $bkh->lang_set($code_set, $code_lang);    foreach ( $base_set as $n => $row ) {        $desc = $row[1];        if (strlen($desc) > 50)            $desc = substr($desc, 0, 50) . '...';        $base_set[$n][1] = htmlspecialchars($desc);    }    if ($code_lang2) {        # Add the second language descriptions.        $lang_set = $bkh->lang_set($code_set, $code_lang2);        $lang_lookup = array();        foreach ( $lang_set as $row ) $lang_lookup[$row[0]] = $row[1];        unset($lang_set);        foreach ( $base_set as $n => $row ) {            $cd = $row[0];            $desc = $lang_lookup[$row[0]];            if ($desc <> '') {                if (strlen($desc) > 50)                    $desc = substr($desc, 0, 50) . '...';                $base_set[$n][4] = htmlspecialchars($desc);            }        }        unset($lang_lookup);    }    $colspan = ($code_set == 'code_set') ? 5 : 3;    foreach ( $base_set as $n => $row ) {        list(            $code_code,            $code_desc,            $code_order,            $code_flag,            $code_desc2        ) = $row;        $bgcolor    = ($n % 2) ? "#6699CC" : "#6699FF";        print"        <tr>        ";        if ($code_set == 'code_set') {            $this_admin = bka_admin_get($code_code);            $P = $this_admin['param'] ? 'P' : '';            $S = $this_admin['slave'] ? 'S' : '';            $M = $this_admin['multi'] ? 'M' : '';            print "            <td bgcolor=\"$bgcolor\">&nbsp;$P&nbsp;</td>            <td bgcolor=\"$bgcolor\">&nbsp;$S&nbsp;</td>            <td bgcolor=\"$bgcolor\">&nbsp;$M&nbsp;</td>            ";        } else {            $D = $code_flag ? 'D' : '';            print "            <td bgcolor=\"$bgcolor\">&nbsp;$D&nbsp;</td>            ";        }        print "        <td bgcolor=\"$bgcolor\">&nbsp;$code_order&nbsp;</td>        <td bgcolor=\"$bgcolor\">&nbsp;$code_code&nbsp;</td>        <td bgcolor=\"$bgcolor\">&nbsp;$code_desc&nbsp;</td>        <td bgcolor=\"$bgcolor\">&nbsp;            <a href=\"" . bka_sess_url($_SERVER['PHP_SELF'] .            "?code_set=$code_set" .            "&code_lang=$bkh->native" .            "&code_lang2=$edit_lang2" .            "&code_code=$code_code") . "\" style=\"color:white;\">            <strong>edit</strong></a>&nbsp;        </td>        </tr>        ";        if ($code_lang2) {            print "            <tr>            <td bgcolor=\"$bgcolor\" colspan=\"$colspan\">&nbsp;</td>            <td bgcolor=\"$bgcolor\">&nbsp;$code_desc2&nbsp;</td>            <td bgcolor=\"$bgcolor\">&nbsp;</td>            </tr>            ";        }    }    print("</table>\n");    $count = count($base_set);    switch ($count) {        case 0: print("<p>No records.\n\n"); break;        case 1: printf("<p><b>%d</b> record.\n\n", $count); break;        default: printf("<p><b>%d</b> records.\n\n", $count);    }    if ($perm_add) {        print "<p><a href=\"" . bka_sess_url($_SERVER['PHP_SELF'] .            "?code_set=$code_set" .            "&action=New") . "\">Add new $set_desc code</a>\n";    }}#       #       #       ### Display the multilanguage code entry/update form.#function bka_form_display($code_code = '') {    global $bkh;    global $code_set;    global $code_lang;    global $code_lang2;    global $code_admin;    global $perm_add;    global $perm_upd;    global $perm_del;    # Check for a valid code set or exit.    $set_desc = $bkh->ucwords('code_set', $bkh->native, $code_set);    if (!$set_desc)        bka_error_exit("No Code set specified!");    print "<b style=\"color:#873852\">$set_desc Code Administration</b>\n";    print "<p>\n";    print "    <form action=\"" . bka_sess_url($_SERVER['PHP_SELF']) . "\" method=\"post\">    <input type=\"hidden\" name=\"code_set\" value=\"$code_set\" >    <input type=\"hidden\" name=\"code_lang\" value=\"$code_lang\" >    <input type=\"hidden\" name=\"code_lang2\" value=\"$code_lang2\" >    <table border=\"0\" cellspacing=\"0\" cellpadding=\"2\">    <tr><th></th><td>    ";    if ($code_code == '') {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -