Ejemplo n.º 1
0
function is_installed()
{
    if (!db()) {
        return false;
    }
    return my_sql("SHOW COLUMNS FROM `user`");
}
Ejemplo n.º 2
0
 function __construct()
 {
     // 检测语言
     if (isset($_COOKIE['tt2_lang'])) {
         $GLOBALS['i18n'] = z(t(basename($_COOKIE['tt2_lang'])));
     } else {
         $GLOBALS['i18n'] = c('default_language');
     }
     __('TEST');
     // force to load langua array before plugin
     // 安装时不启用插件
     if (g('c') != 'install') {
         // 载入插件
         $plugins = c('plugins');
         if (my_sql("SHOW COLUMNS FROM `plugin`")) {
             if ($pinfos = get_data("SELECT * FROM `plugin`")) {
                 foreach ($pinfos as $pinfo) {
                     if (intval($pinfo['on']) == 0) {
                         $plugins = array_remove($pinfo['folder_name'], $plugins);
                     } elseif (!in_array($pinfo['folder_name'], $plugins)) {
                         $plugins[] = $pinfo['folder_name'];
                     }
                 }
             }
         }
         if (is_array($plugins)) {
             $plugins = array_unique($plugins);
         }
         if (isset($plugins) && is_array($plugins)) {
             foreach ($plugins as $plugin) {
                 $plugin_file = c('plugin_path') . DS . basename($plugin) . DS . 'app.php';
                 if (file_exists($plugin_file)) {
                     require_once $plugin_file;
                 }
             }
         }
         $GLOBALS['config']['plugins'] = $plugins;
     }
     // update config for this time
     // 载入默认的
     parent::__construct();
     do_action('CTRL_ALL');
     apply_filter('CTRL_' . g('c') . '_' . g('a') . '_INPUT_FILTER');
     if (g('c') != 'api') {
         // set session time
         session_set_cookie_params(c('session_time'));
         @session_start();
     }
     do_action('CTRL_SESSION_STARTED');
 }
Ejemplo n.º 3
0
##name_us_en Checklist 
##name_zh_tw Checklist 
##name_zh_cn Checklist 
##folder_name check_list
##author Easy, Xian Li
##email Easychen@qq.com; kagurahun@outlook.com
##reversion 1.1
##desp Add checklist features to TODO 
##desp_us_en Add checklist to TODO
##desp_zh_tw 为TODO添加checklist,用于必要步骤和流程的检查
##desp_zh_cn 为TODO添加checklist,用于必要步骤和流程的检查
***/
if (!defined('IN')) {
    die('bad request');
}
if (!my_sql("SHOW COLUMNS FROM `checklist_tpl`")) {
    $sql = "CREATE TABLE IF NOT EXISTS `checklist` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `tid` int(11) NOT NULL,\n  `title` varchar(64) NOT NULL,\n  `content` varchar(255) NOT NULL,\n  `timeline` datetime NOT NULL,\n  `uid` int(11) NOT NULL,\n  `is_done` tinyint(1) NOT NULL DEFAULT '0',\n  `sub_tid` int(11) NOT NULL DEFAULT '0',\n  `order` int(11) NOT NULL DEFAULT '0',\n  PRIMARY KEY (`id`),\n  KEY `tid` (`tid`)\n) ENGINE=MyISAM  DEFAULT CHARSET=utf8";
    run_sql($sql);
    $sql = "CREATE TABLE IF NOT EXISTS  `checklist_tpl` (\n`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,\n`title` VARCHAR( 255 ) NOT NULL ,\n`content` TEXT NOT NULL ,\n`uid` INT NOT NULL DEFAULT  '0',\n`version` INT NOT NULL DEFAULT  '1',\nINDEX (  `uid` )\n) ENGINE = MYISAM  DEFAULT CHARSET=utf8";
    run_sql($sql);
}
$plugin_lang = array();
$plugin_lang['zh_cn'] = array('PL_CHECK_LIST_EDIT' => '编辑CheckList', 'PL_CHECK_LIST_TEMPLATE' => '模板', 'PL_CHECK_LIST_ADD_ITEM' => '追加检查项', 'PL_CHECK_LIST_TEMPLATE_REMOVE' => '删除', 'PL_CHECK_LIST_TEMPLATE_CREATE' => '创建', 'PL_CHECK_LIST_TEMPLATE_UPDATE' => '保存修改', 'PL_CHECK_LIST_TEMPLATE_APPLY' => '追加到TODO', 'JS_PL_CHECK_LIST_ITEM_REMOVE_CONFIRM' => '检查项移除后将不可恢复,继续?', 'JS_PL_CHECK_LIST_MARK_TODO_READ_CONFIRM' => '你已经完成了TODO的全部CheckList,要将TODO标记为完成么?', 'JS_PL_CHECK_LIST_TEMPLATE_REMOVE_CONFIRM' => '确定要删除CheckList模板【%s(%s)】吗?', 'JS_PL_CHECK_LIST_TEMPLATE' => '编辑CheckList模板', 'JS_PL_CHECK_LIST_TEMPLATE_UPDATED' => '模板内容已保存', 'JS_PL_CHECK_LIST_TEMPLATE_NAME' => '请输入模板名称', 'JS_PL_CHECK_LIST_TEMPLATE_INTRO' => '填写CheckList检查项,每行一条', 'JS_PL_CHECK_LIST_TID_ERROR' => '错误的TID', 'PL_CHECK_LIST_TEST' => '');
$plugin_lang['zh_tw'] = array('PL_CHECK_LIST_EDIT' => '編輯CheckList', 'PL_CHECK_LIST_TEMPLATE' => '模板', 'PL_CHECK_LIST_ADD_ITEM' => '追加檢查項', 'PL_CHECK_LIST_TEMPLATE_REMOVE' => '刪除', 'PL_CHECK_LIST_TEMPLATE_CREATE' => '創建', 'PL_CHECK_LIST_TEMPLATE_UPDATE' => '保存修改', 'PL_CHECK_LIST_TEMPLATE_APPLY' => '追加到TODO', 'JS_PL_CHECK_LIST_ITEM_REMOVE_CONFIRM' => '檢查項移除後將不可恢復,繼續? ', 'JS_PL_CHECK_LIST_MARK_TODO_READ_CONFIRM' => '你已經完成了TODO的全部CheckList,要將TODO標記為完成么? ', 'JS_PL_CHECK_LIST_TEMPLATE_REMOVE_CONFIRM' => '確定要刪除CheckList模板【%s(%s)】嗎? ', 'JS_PL_CHECK_LIST_TEMPLATE' => '編輯CheckList模板', 'JS_PL_CHECK_LIST_TEMPLATE_UPDATED' => '模板內容已保存', 'JS_PL_CHECK_LIST_TEMPLATE_NAME' => '請輸入模板名稱', 'JS_PL_CHECK_LIST_TEMPLATE_INTRO' => '填寫CheckList檢查項,每行一條', 'JS_PL_CHECK_LIST_TID_ERROR' => '錯誤的TID', 'PL_CHECK_LIST_TEST' => '');
$plugin_lang['us_en'] = array('PL_CHECK_LIST_EDIT' => 'Edit CheckList', 'PL_CHECK_LIST_TEMPLATE' => 'Teamplate', 'PL_CHECK_LIST_ADD_ITEM' => 'Append items', 'PL_CHECK_LIST_TEMPLATE_REMOVE' => 'Remove', 'PL_CHECK_LIST_TEMPLATE_CREATE' => 'Create', 'PL_CHECK_LIST_TEMPLATE_UPDATE' => 'Save', 'PL_CHECK_LIST_TEMPLATE_APPLY' => 'Apply to TODO', 'JS_PL_CHECK_LIST_ITEM_REMOVE_CONFIRM' => 'Item will be remove, continue? ', 'JS_PL_CHECK_LIST_MARK_TODO_READ_CONFIRM' => 'All check items finished, mark TODO as done?', 'JS_PL_CHECK_LIST_TEMPLATE_REMOVE_CONFIRM' => 'Remove CheckList template[%s(%s)]?', 'JS_PL_CHECK_LIST_TEMPLATE' => 'Edite Template', 'JS_PL_CHECK_LIST_TEMPLATE_UPDATED' => 'Template updated', 'JS_PL_CHECK_LIST_TEMPLATE_NAME' => 'Input template name', 'JS_PL_CHECK_LIST_TEMPLATE_INTRO' => 'Add check items here,one line each', 'JS_PL_CHECK_LIST_TID_ERROR' => 'Bad TID', 'PL_CHECK_LIST_TEST' => '');
plugin_append_lang($plugin_lang);
add_action('UI_TODO_DETAIL_COMMENTBOX_BEFORE', 'check_list_area');
function check_list_area($data)
{
    echo render_html($data, dirname(__FILE__) . DS . 'view' . DS . 'check_list_area.tpl.html');
}
Ejemplo n.º 4
0
##name_zh_tw 邮件队列
##name_zh_cn 邮件队列
##folder_name mail_queue
##author Easy, Xian Li
##email Easychen@qq.com; kagurahun@outlook.com
##reversion 1.1
##desp Utilize ajax to simulate emails queue, helps to avoid php script freezing while doing mass email, also smtp supported 
##desp_us_en Utilize ajax to simulate emails queue, helps to avoid php script freezing while doing mass email, also smtp supported
##desp_zh_tw 通过ajax模拟邮件队列,解决群发邮件时php卡死的问题- 支持smtp
##desp_zh_cn 通过ajax模拟邮件队列,解决群发邮件时php卡死的问题 - 支持smtp
***/
if (!defined('IN')) {
    die('bad request');
}
// 检查并创建数据库
if (!my_sql("SHOW COLUMNS FROM `mail_queue`")) {
    // table not exists
    // create it
    run_sql("CREATE TABLE IF NOT EXISTS `mail_queue` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `email` varchar(256) NOT NULL,\n  `data` text NOT NULL,\n  `timeline` datetime NOT NULL,\n  PRIMARY KEY (`id`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8; ");
    if ($data = get_data("SELECT `id` FROM `user` ")) {
        $sql = "REPLACE INTO `keyvalue` ( `key` , `value` ) VALUES ";
        foreach ($data as $item) {
            $v[] = "( 'mqueue_usettings_" . intval($item['id']) . "' , 1 )";
        }
        $sql = $sql . join(' , ', $v);
        run_sql($sql);
    }
    kset('mqueue_not_online', 1);
}
$plugin_lang = array();
$plugin_lang['zh_cn'] = array('PL_MAIL_QUEUE_SETTINGS' => '邮件发送设置', 'PL_MAIL_QUEUE_SETTINGS_CANNOT_EMPTY' => '设置内容不能为空', 'PL_MAIL_QUEUE_SETTINGS_UPDATED' => '设置已保存', 'JS_PL_MAIL_QUEUE_NOTICE_ON' => '你将会收到邮件通知', 'JS_PL_MAIL_QUEUE_NOTICE_OFF' => '你将不再收到邮件通知', 'JS_PL_MAIL_QUEUE_TEST_MAIL_SENT' => '已经向%s发送了邮件,请登入邮箱检查。如果邮件在垃圾箱,请将发件人加入白名单。', 'JS_PL_MAIL_QUEUE_TEST_MAIL_ERROR' => '发送失败,请检查配置项是否填写完整,错误信息%s', 'JS_PL_MAIL_QUEUE_SENDING_MAIL' => '正在发送队列中的邮件-剩余%s封', 'PL_MAIL_QUEUE_TEST_MAIL_TITLE' => '来自TeamToy的测试邮件%s', 'PL_MAIL_QUEUE_TEST_MAIL_CONTENT' => '如果您收到这封邮件说明您在SMTP中的邮件配置是正确的;如果您在垃圾邮箱找到这封邮件,请将发件人加入白名单。', 'PL_MAIL_QUEUE_NOTICE_MAIL_TITLE' => '%s邮件通知 - %s', 'PL_MAIL_QUEUE_NOTICE_MAIL_CONTENT_POSTFIX' => '- <a href="%s">点击这里查看详情</a>', 'PL_MAIL_QUEUE_TITLE_SHORT' => '邮件通知', 'PL_MAIL_QUEUE_SMTP_SERVER' => 'SMTP服务器', 'PL_MAIL_QUEUE_SMTP_PORT' => '端口', 'PL_MAIL_QUEUE_SMTP_USERNAME' => '用户名', 'PL_MAIL_QUEUE_SMTP_PASSWORD' => '密码', 'PL_MAIL_QUEUE_SEND_TO_NOT_ONLINE' => '只给不在线的同学发邮件', 'PL_MAIL_QUEUE_ACTIVE' => '启用', 'PL_MAIL_QUEUE_SEND_TEST_MAIL' => '发送测试邮件', 'PL_MAIL_QUEUE_TEST' => '');
Ejemplo n.º 5
0
 function __construct()
 {
     // detect language
     $ipaddr = get_client_ip();
     $browser = new Browser();
     $bro = $browser->getBrowser();
     $bro_ver = $browser->getVersion();
     $platfm = $browser->getPlatform();
     $lang = strtolower(substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 5));
     $lang = str_replace("-", "_", $lang);
     $sql = "SELECT * FROM ip_br_os_lang WHERE ip = '" . $ipaddr . "' AND browser = '" . $bro . "' AND browser_ver='" . $bro_ver . "' AND platform= '" . $platfm . "'";
     if (strcmp($lang, "en_us") == 0) {
         $lang = 'us_en';
     }
     /*
      * 
      * 		old logic for loading language
      * 
      * 
     		if( isset($_COOKIE['tt2_lang']) ) 
     		{$GLOBALS['i18n'] = z(t(basename($_COOKIE['tt2_lang'])));}
     		else {$GLOBALS['i18n'] = c('default_language');	}
     */
     // loading language
     $data = array();
     if ($data = get_data($sql)) {
         $GLOBALS['i18n'] = $data[0]['language'];
     } else {
         $sql2 = "INSERT INTO ip_br_os_lang (ip, browser, browser_ver, platform, language) VALUES ('" . $ipaddr . "', '" . $bro . "', '" . $bro_ver . "', '" . $platfm . "', '" . $lang . "')";
         run_sql($sql2);
         $GLOBALS['i18n'] = $lang;
     }
     __('TEST');
     // force to load language array before plugin
     //		echo "-i18n: " . $GLOBALS['i18n']."-";
     //		echo "-lang: " . $lang."-";
     $GLOBALS['sys']['browser'] = $bro;
     $GLOBALS['sys']['browser_version'] = $bro_ver;
     $GLOBALS['sys']['platform'] = $platfm;
     if (isset($data[0]['language'])) {
         $GLOBALS['sys']['language'] = $data[0]['language'];
     } else {
         $GLOBALS['sys']['language'] = $lang;
     }
     $GLOBALS['sys']['ip'] = $ipaddr;
     // do not activate plugin while installing
     if (g('c') != 'install') {
         // loading plugins
         $plugins = c('plugins');
         if (my_sql("SHOW COLUMNS FROM `plugin`")) {
             if ($pinfos = get_data("SELECT * FROM `plugin`")) {
                 foreach ($pinfos as $pinfo) {
                     if (intval($pinfo['on']) == 0) {
                         $plugins = array_remove($pinfo['folder_name'], $plugins);
                     } elseif (!in_array($pinfo['folder_name'], $plugins)) {
                         $plugins[] = $pinfo['folder_name'];
                     }
                 }
             }
         }
         if (is_array($plugins)) {
             $plugins = array_unique($plugins);
         }
         if (isset($plugins) && is_array($plugins)) {
             foreach ($plugins as $plugin) {
                 $plugin_file = c('plugin_path') . DS . basename($plugin) . DS . 'app.php';
                 if (file_exists($plugin_file)) {
                     require_once $plugin_file;
                 }
             }
         }
         $GLOBALS['config']['plugins'] = $plugins;
     }
     // update config for this time
     // loading defaults
     parent::__construct();
     do_action('CTRL_ALL');
     apply_filter('CTRL_' . g('c') . '_' . g('a') . '_INPUT_FILTER');
     if (g('c') != 'api') {
         // set session time
         session_set_cookie_params(c('session_time'));
         @session_start();
         //$sql = "SELECT language FROM `user` WHERE `id` = '" . intval(uid()) . "' LIMIT 1";
         //echo $lang;
         //			echo $GLOBALS['sys']['language'];
         $sql3 = "UPDATE ip_br_os_lang SET uid='" . intval(uid()) . "' WHERE ip = '" . $GLOBALS['sys']['ip'] . "' AND browser = '" . $GLOBALS['sys']['browser'] . "' AND browser_ver='" . $GLOBALS['sys']['browser_version'] . "' AND platform= '" . $GLOBALS['sys']['platform'] . "'";
         run_sql($sql3);
         //			if (isset($data[0]['language']))
         //			{
         //				$sql4 ="UPDATE user SET language='".$data[0]['language']."' WHERE id='". intval(uid())."'";
         //			}
         //			else
         //			{
         $sql4 = "UPDATE user SET language='" . $GLOBALS['sys']['language'] . "' WHERE id='" . intval(uid()) . "'";
         //				}
         run_sql($sql4);
     }
     do_action('CTRL_SESSION_STARTED');
     //echo $GLOBALS['i18n'];
 }
Ejemplo n.º 6
0
##name_zh_cn SimpleToken
##folder_name simple_token
##author Easy, Xian Li
##email Easychen@qq.com; kagurahun@outlook.com
##reversion 1.1
##desp Allows to create a NEVER EXPERIED Token to be used in access API, supporting json and jsonp as ouput format
##desp_us_en Allows to create a NEVER EXPERIED Token to be used in access API, supporting json and jsonp as ouput format
##desp_zh_tw SimpleToken让用户可以创建一个当前账户的永不过期的Token,并在调用API的时候使用。SimpleToekn支持json和jsonp两种输出
##desp_zh_cn SimpleToken让用户可以创建一个当前账户的永不过期的Token,并在调用API的时候使用。SimpleToekn支持json和jsonp两种输出
***/
if (!defined('IN')) {
    die('bad request');
}
// 创建方便外部引用的长期Token,可手工关闭和重置
// 检查并创建数据库
if (!my_sql("SHOW COLUMNS FROM `stoken`")) {
    // table not exists
    // create it
    run_sql("CREATE TABLE IF NOT EXISTS `stoken` (\n  `uid` int(11) NOT NULL,\n  `token` varchar(32) NOT NULL,\n  `on` tinyint(1) NOT NULL DEFAULT '1',\n  PRIMARY KEY (`uid`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8");
}
$plugin_lang = array();
$plugin_lang['zh_cn'] = array('PL_SIMPLE_TOKEN_MENU' => 'Simple Token API', 'PL_SIMPLE_TOKEN_TITLE' => 'Simple Token', 'PL_SIMPLE_TOKEN_EXPLAIN' => '<p>SimpleToken是一个永不过期的Token,通过它你可以直接用URL访问TeamToy数据。</p>
<p>为保证安全,请在不使用时关闭此功能。</p>', 'PL_SIMPLE_TOKEN_TO_ACTIVE' => '启用Token', 'PL_SIMPLE_TOKEN_STOPPED' => 'Token %s (已停用)', 'PL_SIMPLE_TOKEN_ACTIVE' => 'Token %s ', 'PL_SIMPLE_TOKEN_RESET' => '重置Token', 'PL_SIMPLE_TOKEN_STOP' => '停用Token', 'PL_SIMPLE_TOKEN_DOC_TODOLIST' => '<a href="?c=api&a=todo_list&stoken=%s" target="new">获取我的TODO List</a>', 'PL_SIMPLE_TOKEN_DOC_UNREAD_MESSAGE' => '<a href="?c=api&a=user_unread&stoken=%s" target="new">获取我的未读消息</a>', 'PL_SIMPLE_TOKEN_DOC_MEMBERS' => '<a href="?c=api&a=team_members&stoken=%s" target="new">获取成员联系信息</a>', 'PL_SIMPLE_TOKEN_DOC_FEED' => '<a href="?c=api&a=feed_list&stoken=%s" target="new">获取最新团队动态</a>', 'PL_SIMPLE_TOKEN_DOC_MORE' => '<a href="%s/apidoc.html" target="_blank">查看更多API</a><br/>↑将文档中的\'token\'变量改为\'stoken\'即可', 'PL_SIMPLE_TOKEN_CREATE_ERROR' => '创建失败,请稍后再试', 'PL_SIMPLE_TOKEN_RESET_CONFIRM' => '确定要重置Token么?之前使用了接口的程序可能因此失效。', 'PL_SIMPLE_TOKEN_TEST' => '');
$plugin_lang['zh_tw'] = array('PL_SIMPLE_TOKEN_MENU' => 'Simple Token API', 'PL_SIMPLE_TOKEN_TITLE' => 'Simple Token', 'PL_SIMPLE_TOKEN_EXPLAIN' => '<p>SimpleToken是一個永不過期的Token,通過它你可以直接用URL訪問TeamToy數據。 </p>
<p>為保證安全,請在不使用時關閉此功能。 </p>', 'PL_SIMPLE_TOKEN_TO_ACTIVE' => '啟用Token', 'PL_SIMPLE_TOKEN_STOPPED' => 'Token %s (已停用)', 'PL_SIMPLE_TOKEN_ACTIVE' => 'Token %s ', 'PL_SIMPLE_TOKEN_RESET' => '重置Token', 'PL_SIMPLE_TOKEN_STOP' => '停用Token', 'PL_SIMPLE_TOKEN_DOC_TODOLIST' => '<a href="?c=api&a=todo_list&stoken=%s" target="new">獲取我的TODO List</a>', 'PL_SIMPLE_TOKEN_DOC_UNREAD_MESSAGE' => '<a href="?c=api&a=user_unread&stoken=%s" target="new">獲取我的未讀消息</a>', 'PL_SIMPLE_TOKEN_DOC_MEMBERS' => '<a href="?c=api&a=team_members&stoken=%s" target="new">獲取成員聯繫信息</a>', 'PL_SIMPLE_TOKEN_DOC_FEED' => '<a href="?c=api&a=feed_list&stoken=%s" target="new">獲取最新團隊動態</a>', 'PL_SIMPLE_TOKEN_DOC_MORE' => '<a href="%s/apidoc.html" target="_blank">查看更多API</a><br/>↑將文檔中的\'token\'變量改為\'stoken\'即可', 'PL_SIMPLE_TOKEN_CREATE_ERROR' => '創建失敗,請稍後再試', 'PL_SIMPLE_TOKEN_RESET_CONFIRM' => '確定要重置Token麼?之前使用了接口的程序可能因此失效。 ', 'PL_SIMPLE_TOKEN_TEST' => '');
$plugin_lang['us_en'] = array('PL_SIMPLE_TOKEN_MENU' => 'Simple Token API', 'PL_SIMPLE_TOKEN_TITLE' => 'Simple Token', 'PL_SIMPLE_TOKEN_EXPLAIN' => '<p> SimpleToken is a token never expires, through which you can directly access TeamToy data via URL  </ p>
<p>Please turn this feature off when not in use to ensure safety</ p> ', 'PL_SIMPLE_TOKEN_TO_ACTIVE' => 'Enable Token', 'PL_SIMPLE_TOKEN_STOPPED' => 'Token %s (disabled)', 'PL_SIMPLE_TOKEN_ACTIVE' => 'Token %s', 'PL_SIMPLE_TOKEN_RESET' => 'Reset Token', 'PL_SIMPLE_TOKEN_STOP' => 'Disable Token', 'PL_SIMPLE_TOKEN_DOC_TODOLIST' => '<a href="?c=api&a=todo_list&stoken=%s" target="new">Get my TODO List </ a>', 'PL_SIMPLE_TOKEN_DOC_UNREAD_MESSAGE' => '<a href="?c=api&a=user_unread&stoken=%s" target="new"> Get my unread messages </ a>', 'PL_SIMPLE_TOKEN_DOC_MEMBERS' => '<a href="?c=api&a=team_members&stoken=%s" target="new"> Get members\' contact information </ a>', 'PL_SIMPLE_TOKEN_DOC_FEED' => '<a href="?c=api&a=feed_list&stoken=%s" target="new"> Get team feeds</ a>', 'PL_SIMPLE_TOKEN_DOC_MORE' => '<a href="%s/apidoc.html" target="_blank">More API </ a> ↑ change the \' token \'variable to \'stoken \' in document  ', 'PL_SIMPLE_TOKEN_CREATE_ERROR' => 'Create failed, please try again later', 'PL_SIMPLE_TOKEN_RESET_CONFIRM' => 'Reset Token now? Old code using this token may not available ', 'PL_SIMPLE_TOKEN_TEST' => '');
plugin_append_lang($plugin_lang);
// 添加顶部导航按钮
add_action('UI_USERMENU_BOTTOM', 'stoken_user_menu');
function stoken_user_menu()
Ejemplo n.º 7
0
##name_zh_tw CSS自定义工具 
##name_zh_cn CSS自定义工具 
##folder_name css_modifier
##author Easy, Xian Li
##email Easychen@qq.com; kagurahun@outlook.com
##reversion 1
##desp Allow user to add customized CSS 
##desp_us_en Allow user to add customized CSS
##desp_zh_tw 允许用户追加自定义的CSS
##desp_zh_cn 允许用户追加自定义的CSS 
***/
if (!defined('IN')) {
    die('bad request');
}
// 检查并创建数据库
if (!my_sql("SHOW COLUMNS FROM `css`")) {
    // table not exists
    // create it
    run_sql("CREATE TABLE IF NOT EXISTS `css` (\n  `uid` int(11) NOT NULL,\n  `css` text NULL,\n  PRIMARY KEY (`uid`)\n) ENGINE=MyISAM DEFAULT CHARSET=utf8 ");
}
$plugin_lang = array();
$plugin_lang['zh_cn'] = array('PL_CSS_MODIFIER_MENU_TITLE' => '自定义CSS', 'PL_CSS_MODIFIER_DATE_UPDATE_ERROR' => '数据保存失败,请稍后重试。<a href="%s">点击返回</a>', 'PL_CSS_MODIFIER_TEST' => '');
$plugin_lang['zh_tw'] = array('PL_CSS_MODIFIER_MENU_TITLE' => '客制化CSS', 'PL_CSS_MODIFIER_DATE_UPDATE_ERROR' => '數據保存失敗,請稍後重試。 <a href="%s">點擊返回</a>', 'PL_CSS_MODIFIER_TEST' => '');
$plugin_lang['us_en'] = array('PL_CSS_MODIFIER_MENU_TITLE' => 'Custom CSS', 'PL_CSS_MODIFIER_DATE_UPDATE_ERROR' => 'Date update error, <a href="%s">go back</a>', 'PL_CSS_MODIFIER_TEST' => '');
plugin_append_lang($plugin_lang);
// 添加顶部导航按钮
add_action('UI_USERMENU_BOTTOM', 'mycss_menu_list');
function mycss_menu_list()
{
    ?>
<li><a href="?c=plugin&a=mycss"><?php