<?php #注册插件 RegisterPlugin("CloudStorage", "ActivePlugin_CloudStorage"); /** * */ function ActivePlugin_CloudStorage() { Add_Filter_Plugin('Filter_Plugin_Upload_Url', 'CS_Return_Url'); Add_Filter_Plugin('Filter_Plugin_Upload_SaveFile', 'CloudStorage'); Add_Filter_Plugin('Filter_Plugin_Upload_DelFile', 'CloudStorage_Del'); // Add_Filter_Plugin('Filter_Plugin_Upload_SaveBase64File','CloudStorage'); } /** * @param $tmp * @param $upload */ function CloudStorage($tmp, &$upload) { global $zbp; $bucket = $zbp->Config('CloudStorage')->CS_Bucket; //云文件夹 $filename = date("Ymd", time()) . mt_rand(1000, 9999) . '_' . mt_rand(0, 1000) . '.' . GetFileExt($upload->SourceName); $object = $zbp->Config('CloudStorage')->CS_Dir . date("Y/m/", time()) . $filename; //构造云文件名 $file_path = $zbp->usersdir . 'upload/tmp.data'; //本地临时文件地址 @move_uploaded_file($tmp, $file_path); //先上传到本地 $upload->Name = $filename;
<?php #注册插件 RegisterPlugin("passwordvisit", "ActivePlugin_passwordvisit"); function ActivePlugin_passwordvisit() { Add_Filter_Plugin('Filter_Plugin_Edit_Response3', 'passwordvisit_show_encrypt_button'); Add_Filter_Plugin('Filter_Plugin_PostArticle_Core', 'passwordvisit_save_postpassword'); Add_Filter_Plugin('Filter_Plugin_ViewList_Template', 'passwordvisit_list_password'); Add_Filter_Plugin('Filter_Plugin_ViewPost_Template', 'passwordvisit_input_password'); } function passwordvisit_list_password($template) { global $zbp; $articles = $template->GetTags('articles'); foreach ($articles as $key => $article) { if ($zbp->Config('passwordvisit')->all_encrypt || $article->Metas->passwordvisit_enable_encrypt) { $article->Intro = $zbp->Config('passwordvisit')->default_text . '<form id="form1" name="form1" method="post" action="' . $article->Url . '"><input name="password" type="password" width="100px" /><input name="submit" type="submit" value="查看"/></form>'; $article->Content = $zbp->Config('passwordvisit')->default_text . '<form id="form1" name="form1" method="post" action="' . $article->Url . '"><input name="password" type="password" width="100px" /><input name="submit" type="submit" value="查看"/></form>'; } } $template->SetTags('articles', $articles); } function passwordvisit_input_password(&$template) { global $zbp; if (isset($_POST['password']) && $_POST['password'] != '') { $article = $template->GetTags('article'); if ($article->Metas->passwordvisit_password != '') { if (GetVars('password', 'POST') == $article->Metas->passwordvisit_password) { return;
<?php #注册插件 RegisterPlugin("KindEditor", "ActivePlugin_KindEditor"); function ActivePlugin_KindEditor() { Add_Filter_Plugin('Filter_Plugin_Edit_Begin', 'KindEditor_addscript_begin'); Add_Filter_Plugin('Filter_Plugin_Edit_End', 'KindEditor_addscript_end'); Add_Filter_Plugin('Filter_Plugin_Html_Js_Add', 'CodeHighLight_print_KindEditor'); } function KindEditor_addscript_begin() { global $zbp; echo '<script type="text/javascript" src="' . $zbp->host . 'zb_users/plugin/KindEditor/kindeditor/kindeditor.js"></script>'; echo '<script type="text/javascript" src="' . $zbp->host . 'zb_users/plugin/KindEditor/kindeditor/lang/zh_CN.js"></script>'; } function CodeHighLight_print_KindEditor() { global $zbp; if ($zbp->option['ZC_SYNTAXHIGHLIGHTER_ENABLE']) { echo 'document.writeln("<script src=\'' . $zbp->host . 'zb_users/plugin/KindEditor/kindeditor/plugins/code/prettify.js\' type=\'text/javascript\'></script><link rel=\'stylesheet\' type=\'text/css\' href=\'' . $zbp->host . 'zb_users/plugin/KindEditor/kindeditor/plugins/code/prettify.css\'/>");' . "\n"; echo "\$(document).ready(function(){prettyPrint();});\n"; } } function KindEditor_addscript_end() { global $zbp; $zbphost = $zbp->host; $s = <<<script <script type="text/javascript"> function editor_init(){
<?php RegisterPlugin('SQLLog', 'ActivePlugin_SQLLog'); define('SQLLOG_PATH', dirname(__FILE__)); define('SQLLOG_LOGPATH', SQLLOG_PATH . '/logs/'); function ActivePlugin_SQLLog() { Add_Filter_Plugin('Filter_Plugin_DbSql_Filter', 'SQLLog_DbSql_Filter'); } function InstallPlugin_SQLLog() { } function UninstallPlugin_SQLLog() { } function SQLLog_getip() { $ip = GetVars('HTTP_CLIENT_IP', 'SERVER'); $ip = $ip == '' ? GetVars('HTTP_X_FORWARDED_FOR', 'SERVER') : $ip; $ip = $ip == '' ? GetVars('REMOTE_ADDR', 'SERVER') : $ip; return $ip; } function SQLLog_DbSql_Filter($sql) { global $zbp; $log_data = array(time(), date('H:i:s(e)', time()), $zbp->user->ID, SQLLog_getip(), $_SERVER['PHP_SELF']); // $time = $template = "【TIME={$log_data['0']}】【FTIME={$log_data['1']}】【UID={$log_data['2']}】【PAGE={$log_data['4']}】【IP={$log_data['3']}】{$sql}" . PHP_EOL; $file_name = SQLLOG_LOGPATH . date('Ymd', time()) . '_zbp_' . $zbp->guid . '.php'; if (!file_exists($file_name)) { $file_pointer = fopen($file_name, 'w');
<?php #注册插件 RegisterPlugin("AppCentre", "ActivePlugin_AppCentre"); if (!function_exists('GetScheme')) { function GetScheme($array) { if (array_key_exists('REQUEST_SCHEME', $array)) { if (strtolower($array['REQUEST_SCHEME']) == 'https') { return 'https://'; } } elseif (array_key_exists('HTTPS', $array)) { if (strtolower($array['HTTPS']) == 'on') { return 'https://'; } } return 'http://'; } } if (!defined('HTTP_SCHEME')) { define('HTTP_SCHEME', GetScheme($_SERVER)); } define('APPCENTRE_URL', HTTP_SCHEME . 'app.zblogcn.com/client/'); define('APPCENTRE_SYSTEM_UPDATE', HTTP_SCHEME . 'update.zblogcn.com/zblogphp/'); define('APPCENTRE_API_URL', HTTP_SCHEME . 'app.zblogcn.com/api/index.php?api='); define('APPCENTRE_API_APP_ISBUY', 'isbuy'); define('APPCENTRE_API_USER_INFO', 'userinfo'); define('APPCENTRE_API_ORDER_LIST', 'orderlist'); define('APPCENTRE_API_ORDER_DETAIL', 'orderdetail'); function ActivePlugin_AppCentre() {
<?php #注册插件 RegisterPlugin("LargeData", "ActivePlugin_LargeData"); $table['Post2Tag'] = '%pre%post2tag'; $datainfo['Post2Tag'] = array('ID' => array('pt_ID', 'integer', '', 0), 'TagID' => array('pt_TagID', 'integer', '', 0), 'LogID' => array('pt_LogID', 'integer', '', 0)); function ActivePlugin_LargeData() { global $zbp; if ($zbp->option['ZC_LARGE_DATA'] == true && $zbp->db->type == 'mysql') { Add_Filter_Plugin('Filter_Plugin_Misc_Begin', 'LargeData_Misc_Begin'); Add_Filter_Plugin('Filter_Plugin_Zbp_Load', 'LargeData_Zbp_Begin'); Add_Filter_Plugin('Filter_Plugin_LargeData_Aritcle', 'LargeData_Aritcle'); Add_Filter_Plugin('Filter_Plugin_LargeData_Page', 'LargeData_Page'); Add_Filter_Plugin('Filter_Plugin_LargeData_Comment', 'LargeData_Comment'); Add_Filter_Plugin('Filter_Plugin_LargeData_CountTagArray', 'LargeData_CountTagArray'); Add_Filter_Plugin('Filter_Plugin_Post_Del', 'LargeData_Post_Del'); Add_Filter_Plugin('Filter_Plugin_Tag_Del', 'LargeData_Tag_Del'); } } function LargeData_Post_Del(&$post) { LargeData_Delete_Post2Tag_ByLogID($post->ID); } function LargeData_Tag_Del(&$tag) { LargeData_Delete_Post2Tag_ByTagID($tag->ID); } function LargeData_CountTagArray(&$array, &$plus, &$log_id) { if ($plus > 0) {
<?php include 'api.php'; RegisterPlugin("api", "ActivePlugin_api"); $apiRealRouteUrl = ""; function ActivePlugin_api() { Add_Filter_Plugin('Filter_Plugin_Index_Begin', 'api_index_begin'); Add_Filter_Plugin('Filter_Plugin_Zbp_Load_Pre', 'api_zbp_load_pre'); } function InstallPlugin_api() { } function UninstallPlugin_api() { } function api_index_begin() { global $apiRealRouteUrl; global $zbp; if ($apiRealRouteUrl == "") { return false; } $requestMethod = strtoupper(GetVars('REQUEST_METHOD', 'SERVER')); //API::$Route::$debug = true; API::$Route->scanRoute($requestMethod, $apiRealRouteUrl); API::$IO->end(-1); } function api_zbp_load_pre() { // Check URL first
<?php #注册插件 RegisterPlugin("changyan", "ActivePlugin_changyan"); if (function_exists('ini_set')) { ini_set('max_execution_time', '0'); } define('CHANGYAN_PLUGIN_PATH', dirname(__FILE__)); require CHANGYAN_PLUGIN_PATH . '/Synchronizer.php'; require CHANGYAN_PLUGIN_PATH . '/Handler.php'; $changyanPlugin = null; #注册插件函数 function ActivePlugin_changyan() { global $changyanPlugin, $zbp; $changyanPlugin = Changyan_Handler::getInstance(); //add_action('init', 'changyan_init'); Add_Filter_Plugin('Filter_Plugin_Zbp_Load', 'changyan_init'); Add_Filter_Plugin('Filter_Plugin_Admin_LeftMenu', 'changyan_AddMenu'); Add_Filter_Plugin('Filter_Plugin_ViewPost_Template', 'changyan_socialcomment'); Add_Filter_Plugin('Filter_Plugin_ViewPost_Template', 'changyan_view_post_template'); Add_Filter_Plugin('Filter_Plugin_ViewList_Template', 'changyan_view_list_template'); Add_Filter_Plugin('Filter_Plugin_Html_Js_Add', 'changyan_html_js_add'); } function changyan_html_js_add() { global $changyanPlugin, $zbp; if (!$changyanPlugin->getOption('changyan_script')) { return; } if (!$changyanPlugin->getOption('changyan_isCron')) {
<?php #注册插件 RegisterPlugin("WhitePage", "ActivePlugin_WhitePage"); function ActivePlugin_WhitePage() { global $zbp; Add_Filter_Plugin('Filter_Plugin_Admin_TopMenu', 'WhitePage_AddMenu'); $s = ''; if ($zbp->Config('WhitePage')->HasKey("custom_bgcolor")) { $zbp->Config('WhitePage')->custom_bgcolor = str_replace('#', '', $zbp->Config('WhitePage')->custom_bgcolor); $s .= "body{background-color:#" . $zbp->Config('WhitePage')->custom_bgcolor . ";}"; } if ($zbp->Config('WhitePage')->HasKey("custom_headtitle")) { $s .= "#BlogTitle,#BlogSubTitle,#BlogCopyRight,#BlogPowerBy{text-align:" . $zbp->Config('WhitePage')->custom_headtitle . ";}"; } if ($zbp->Config('WhitePage')->HasKey("custom_pagewidth")) { if ($zbp->Config('WhitePage')->custom_pagewidth == 1000) { $s .= "#divAll{width:1000px;}#divMiddle{width:940px;padding:0 30px;}#divSidebar{width:240px;padding:0 0 0 20px;}#divMain{width:670px;padding:0 0 20px 0;}#divTop{padding-top:30px;}body{font-size:15px;}"; } } if ($zbp->Config('WhitePage')->HasKey("text_indent")) { $s .= "div.post-body p{text-indent:" . (int) $zbp->Config('WhitePage')->text_indent . "em;}"; } if ($zbp->Config('WhitePage')->HasKey("custom_pagetype")) { if ($zbp->Config('WhitePage')->custom_pagetype == 1) { if ($zbp->Config('WhitePage')->custom_pagewidth == 1000) { $s .= "#divAll{background:url('" . $zbp->host . "zb_users/theme/WhitePage/style/default/bg1000-1.png') no-repeat 50% top;}#divPage{background:url('" . $zbp->host . "zb_users/theme/WhitePage/style/default/bg1000-2.png') no-repeat 50% bottom;}#divMiddle{background:url('" . $zbp->host . "zb_users/theme/WhitePage/style/default/bg1000-3.png') repeat-y 50% 50%;}"; } } if ($zbp->Config('WhitePage')->custom_pagetype == 2) {
<?php #注册插件 RegisterPlugin("AdminColor", "ActivePlugin_AdminColor"); $Filter_Plugin_AdminColor_CSS_Pre = array(); function ActivePlugin_AdminColor() { global $zbp; Add_Filter_Plugin('Filter_Plugin_Admin_SiteInfo_SubMenu', 'AdminColor_ColorButton'); Add_Filter_Plugin('Filter_Plugin_Admin_Header', 'AdminColor_Css'); Add_Filter_Plugin('Filter_Plugin_Login_Header', 'AdminColor_Css'); Add_Filter_Plugin('Filter_Plugin_Other_Header', 'AdminColor_Css'); $zbp->LoadLanguage('plugin', 'AdminColor'); } function AdminColor_Css() { global $zbp; echo '<link rel="stylesheet" type="text/css" href="' . $zbp->host . 'zb_users/plugin/AdminColor/css.php"/>' . "\r\n"; echo '<script type="text/javascript">var lang_admincolor_closemenu = "' . $zbp->lang['AdminColor']['closemenu'] . '";var lang_admincolor_expandmenu = "' . $zbp->lang['AdminColor']['expandmenu'] . '"</script>' . "\r\n"; echo '<script src="' . $zbp->host . 'zb_users/plugin/AdminColor/menu.js" type="text/javascript"></script>' . "\r\n"; Add_Filter_Plugin('Filter_Plugin_Admin_LeftMenu', 'AdminColor_Add_Button'); $hm = GetVars('admincolor_hm', 'COOKIE'); if ($hm == '1') { echo '<style type="text/css">.left{width:36px;background-color:#ededed;}.left #leftmenu span{margin-left:10px;padding-left:100px;}div.main,section.main{padding-left:46px;}</style>'; } } function AdminColor_Add_Button(&$leftmenus) { global $zbp; $hm = GetVars('admincolor_hm', 'COOKIE'); if ($hm == '1') {
<?php #注册插件 RegisterPlugin("forcehttps", "ActivePlugin_forcehttps"); function ActivePlugin_forcehttps() { if (!forcehttps_isHttps()) { $redirect_url = "https://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; Redirect301($redirect_url); } } function InstallPlugin_forcehttps() { } function UninstallPlugin_forcehttps() { } function forcehttps_isHttps() { if (defined('HTTP_SCHEME')) { return HTTP_SCHEME == "https://"; } else { if (array_key_exists('REQUEST_SCHEME', $array)) { if (strtolower($array['REQUEST_SCHEME']) == 'https') { return 'https://'; } } elseif (array_key_exists('HTTPS', $array)) { if (strtolower($array['HTTPS']) == 'on') { return 'https://'; } }
<?php #注册插件 RegisterPlugin("FileSystem", "ActivePlugin_FileSystem"); function ActivePlugin_FileSystem() { Add_Filter_Plugin('Filter_Plugin_Admin_LeftMenu', 'FileSystem_AddMenu'); } function InstallPlugin_FileSystem() { } function UninstallPlugin_FileSystem() { } function FileSystem_AddMenu(&$m) { global $zbp; $m[] = MakeLeftMenu("root", "文件管理", $zbp->host . "zb_users/plugin/FileSystem/main.php", "nav_FileSystem", "aFileSystem", $zbp->host . "zb_system/image/common/file_1.png"); }
<?php #注册插件 RegisterPlugin("markdown", "ActivePlugin_markdown"); require dirname(__FILE__) . '/Markdown.php'; function ActivePlugin_markdown() { Add_Filter_Plugin('Filter_Plugin_Edit_Begin', 'markdown_addscript_begin'); Add_Filter_Plugin('Filter_Plugin_Edit_End', 'markdown_addscript_end'); Add_Filter_Plugin('Filter_Plugin_PostPage_Core', 'markdown_mk2html'); Add_Filter_Plugin('Filter_Plugin_PostArticle_Core', 'markdown_mk2html'); //Add_Filter_Plugin('Filter_Plugin_Cmd_Ajax', 'markdown_upload_ajax'); Add_Filter_Plugin('Filter_Plugin_Html_Js_Add', 'markdown_Js_Add'); } function InstallPlugin_markdown() { } function UninstallPlugin_markdown() { } //执行ajax函数 function markdown_upload_ajax($src_type) { global $zbp; if (isset($src_type) && $src_type == 'image') { call_user_func('markdown_upload_ajax_' . $src_type); } } function markdown_upload_ajax_image() { global $zbp;
<?php include_once $zbp->usersdir . 'plugin/linkmanage/function.php'; #注册插件 RegisterPlugin("linkmanage", "ActivePlugin_linkmanage"); $sysMenu = 'navbar|link|favorite|misc|Menu|Location|Nav|Version'; function ActivePlugin_linkmanage() { Add_Filter_Plugin('Filter_Plugin_Admin_TopMenu', 'linkmanage_TopMenu'); } function linkmanage_TopMenu(&$m) { global $zbp; array_unshift($m, MakeTopMenu("root", '链接管理', $zbp->host . "zb_users/plugin/linkmanage/main.php", "", "topmenu_linkmanage")); } function linkmanage_RegLocation($themeid, $local) { global $zbp; $location = json_decode($zbp->Config('linkmanage')->Location, true); foreach ($local as $key => $value) { $location[$themeid . '_' . $key] = array($themeid, $themeid . '_' . $key, $value); } $zbp->Config('linkmanage')->Location = json_encode($location); $zbp->SaveConfig('linkmanage'); } function linkmanage_SetMenuLocation($id, $location) { global $zbp; $n = json_decode($zbp->Config('linkmanage')->Nav, true); foreach ($n['data'] as $key => $value) { if ($value['id'] == $id) {
<?php define('CLINIC', true); $clinic_register_array = array(); $clinic_register_cate = array(); RegisterPlugin('clinic', 'ActivePlugin_clinic'); function ActivePlugin_clinic() { } function InstallPlugin_clinic() { } function UninstallPlugin_clinic() { }
<?php include 'x2013.php'; RegisterPlugin("x2013", "ActivePlugin_x2013"); function ActivePlugin_x2013() { Add_Filter_Plugin('Filter_Plugin_Admin_TopMenu', 'x2013_AddMenu'); Add_Filter_Plugin('Filter_Plugin_ViewList_Template', 'x2013_tags_set'); Add_Filter_Plugin('Filter_Plugin_ViewPost_Template', 'x2013_tags_set'); } function x2013_AddMenu(&$m) { global $zbp; array_unshift($m, MakeTopMenu("root", 'X2013主题设置', $zbp->host . "zb_users/theme/x2013/main.php", "", "topmenu_x2013")); } function x2013_tags_set(&$template) { global $zbp; $weibo = $qqmail = ''; //weibo if ($zbp->Config('x2013')->SetWeiboSina != '') { $weibo .= "<li><a class=\"btn btn-mini\" target=\"_blank\" href=\"{$zbp->Config('x2013')->SetWeiboSina}\">新浪微博</a></li>"; } if ($zbp->Config('x2013')->SetWeiboQQ != '') { $weibo .= "<li><a class=\"btn btn-mini\" target=\"_blank\" href=\"{$zbp->Config('x2013')->SetWeiboQQ}\">腾讯微博</a></li>"; } if ($weibo != '') { $weibo = '<ul class="popup-follow-weibo">' . $weibo . '</ul>'; } //qqmailfeed if ($zbp->Config('x2013')->DisplayFeed) {
<?php /* TODO: * 原有配置不考虑进行转移或升级 * 1. 提取IP和网址 */ RegisterPlugin("Totoro", "ActivePlugin_Totoro"); define('TOTORO_PATH', dirname(__FILE__)); define('TOTORO_INCPATH', TOTORO_PATH . '/inc/'); function Totoro_init() { require TOTORO_PATH . '/inc/totoro.php'; global $Totoro; $Totoro = new Totoro_Class(); } function ActivePlugin_Totoro() { Add_Filter_Plugin('Filter_Plugin_Admin_CommentMng_SubMenu', 'Totoro_Admin_CommentMng_SubMenu'); Add_Filter_Plugin('Filter_Plugin_PostComment_Core', 'Totoro_PostComment_Core'); Add_Filter_Plugin('Filter_Plugin_Cmd_Begin', 'Totoro_Cmd_Begin'); } function InstallPlugin_Totoro() { } function Totoro_Admin_CommentMng_SubMenu() { global $zbp; echo '<a href="' . $zbp->host . 'zb_users/plugin/Totoro/main.php"><span class="m-right">Totoro设置</span></a>'; echo '<script src="' . $zbp->host . 'zb_users/plugin/Totoro/submenu.js"></script>'; } function Totoro_PostComment_Core(&$comment)
<?php $Filter_Plugin_RegPage_RegSucceed = array(); #注册插件 RegisterPlugin("RegPage", "ActivePlugin_RegPage"); function ActivePlugin_RegPage() { Add_Filter_Plugin('Filter_Plugin_Index_Begin', 'RegPage_Main'); } $RegPage_Table = '%pre%regpage'; $RegPage_DataInfo = array('ID' => array('reg_ID', 'integer', '', 0), 'InviteCode' => array('reg_InviteCode', 'string', 50, ''), 'Level' => array('reg_Level', 'integer', '', 5), 'AuthorID' => array('reg_AuthorID', 'integer', '', 0), 'IsUsed' => array('reg_IsUsed', 'boolean', '', false), 'Intro' => array('reg_Intro', 'string', '', '')); function InstallPlugin_RegPage() { global $zbp; if (!$zbp->Config('RegPage')->default_level) { $zbp->Config('RegPage')->default_level = 5; $zbp->Config('RegPage')->open_reg = 0; $zbp->Config('RegPage')->title_text = '会员注册'; $zbp->SaveConfig('RegPage'); RegPage_CreateTable(); RegPage_CreateCode(100); } } function RegPage_CreateCode($n) { global $zbp; for ($i = 0; $i < 100; $i++) { $r = new Base($GLOBALS['RegPage_Table'], $GLOBALS['RegPage_DataInfo']); $r->InviteCode = GetGuid(); $r->Level = $zbp->Config('RegPage')->default_level; $r->Save();
<?php #ZBP的第一个插件,ueditor插件 #注册插件 RegisterPlugin("UEditor", "ActivePlugin_UEditor"); function ActivePlugin_UEditor() { Add_Filter_Plugin('Filter_Plugin_Edit_Begin', 'ueditor_addscript_begin'); Add_Filter_Plugin('Filter_Plugin_Edit_End', 'ueditor_addscript_end'); Add_Filter_Plugin('Filter_Plugin_Html_Js_Add', 'ueditor_SyntaxHighlighter_print'); } function ueditor_SyntaxHighlighter_print() { global $zbp; if (!$zbp->option['ZC_SYNTAXHIGHLIGHTER_ENABLE']) { return; } echo "\r\n" . 'document.writeln("<script src=\'' . $zbp->host . 'zb_users/plugin/UEditor/third-party/SyntaxHighlighter/shCore.pack.js\' type=\'text/javascript\'></script><link rel=\'stylesheet\' type=\'text/css\' href=\'' . $zbp->host . 'zb_users/plugin/UEditor/third-party/SyntaxHighlighter/shCoreDefault.pack.css\'/>");' . "\r\n"; echo "\r\n\$(document).ready(function(){SyntaxHighlighter.highlight();for(var i=0,di;di=SyntaxHighlighter.highlightContainers[i++];){var tds = di.getElementsByTagName('td');for(var j=0,li,ri;li=tds[0].childNodes[j];j++){ri = tds[1].firstChild.childNodes[j];ri.style.height = li.style.height = ri.offsetHeight + 'px';}}});\r\n"; } function InstallPlugin_UEditor() { } function UninstallPlugin_UEditor() { } function ueditor_addscript_begin() { global $zbp; echo '<script type="text/javascript" src="' . $zbp->host . 'zb_users/plugin/UEditor/ueditor.config.php"></script>'; echo '<script type="text/javascript" src="' . $zbp->host . 'zb_users/plugin/UEditor/ueditor.all.min.js"></script>';
<?php #注册插件 RegisterPlugin("AutoPublisher", "ActivePlugin_AutoPublisher"); function ActivePlugin_AutoPublisher() { Add_Filter_Plugin('Filter_Plugin_Zbp_Load', 'AutoPublisher_Begin'); Add_Filter_Plugin('Filter_Plugin_Edit_Response3', 'AutoPublisher_Response3'); Add_Filter_Plugin('Filter_Plugin_PostArticle_Succeed', 'AutoPublisher_PostArticle_Succeed'); } function AutoPublisher_Begin() { global $zbp; $s = $zbp->Config('AutoPublisher')->idstring; if (!$s) { return; } $s2 = $s; $array = explode('|', $s); foreach ($array as $aid) { $a = $zbp->GetPostByID($aid); if ($a->ID > 0) { if ($a->PostTime <= time() && $a->Status == ZC_POST_STATUS_DRAFT) { $a->Status = ZC_POST_STATUS_PUBLIC; $a->Save(); $s = DelNameInString($s, (string) $a->ID); } } } if ($s != $s2) { $zbp->Config('AutoPublisher')->idstring = $s;
<?php #注册插件 RegisterPlugin("AuditRecords", "ActivePlugin_AuditRecords"); $actions['audit'] = 2; //参数有3个 //1 $article:被审核的文章object (传入引用) //2 $opeate指令 -1(申诉) 0(未通过) 1(通过) //3 $logs文本记录 $Filter_Plugin_AuditRecords_Submit = array(); function ActivePlugin_AuditRecords() { Add_Filter_Plugin('Filter_Plugin_Edit_Response', 'AuditRecords_Edit_Response'); Add_Filter_Plugin('Filter_Plugin_PostArticle_Core', 'AuditRecords_Main'); Add_Filter_Plugin('Filter_Plugin_Edit_Response3', 'AuditRecords_Edit_Response3'); Add_Filter_Plugin('Filter_Plugin_Admin_LeftMenu', 'AuditRecords_AddMenu'); } function AuditRecords_AddMenu(&$m) { global $zbp; array_unshift($m, ''); $n = GetValueInArrayByCurrent($zbp->db->Query('SELECT COUNT(log_ID) AS num FROM ' . $GLOBALS['table']['Post'] . ' WHERE log_Type=0 AND log_Status=2'), 'num'); $m[0] = $m[1]; $m[1] = MakeLeftMenu("audit", "(" . $n . ")审核管理", $zbp->host . "zb_users/plugin/AuditRecords/main.php", "nav_AuditRecords", "aAuditRecords", ""); } $table['AuditRecords'] = '%pre%auditrecords'; $datainfo['AuditRecords'] = array('ID' => array('ar_ID', 'integer', '', 0), 'LogID' => array('ar_LogID', 'integer', '', 0), 'AuthorID' => array('ar_AuthorID', 'integer', '', 0), 'Logs' => array('ar_Logs', 'string', '', ''), 'Opeate' => array('ar_Opeate', 'integer', '', 0), 'PostTime' => array('ar_PostTime', 'integer', '', 0)); class AuditRecords extends Base { public function __construct() {
<?php #注册插件 RegisterPlugin("tpluginmaker", "ActivePlugin_tpluginmaker"); function ActivePlugin_tpluginmaker() { } function InstallPlugin_tpluginmaker() { } function UninstallPlugin_tpluginmaker() { }
<?php #注册插件 RegisterPlugin("Storage", "ActivePlugin_Storage"); function ActivePlugin_Storage() { Add_Filter_Plugin('Filter_Plugin_Upload_Url', 'Storage_Return_Url'); Add_Filter_Plugin('Filter_Plugin_Upload_SaveFile', 'Storage'); Add_Filter_Plugin('Filter_Plugin_Upload_DelFile', 'Storage_Del'); // Add_Filter_Plugin('Filter_Plugin_Upload_SaveBase64File','Storage'); } $domainname = $zbp->Config('Storage')->Storage_Domain; /** * @param $tmp * @param $upload */ function Storage($tmp, &$upload) { global $zbp, $domainname; $filename = date("Ymd", time()) . mt_rand(1000, 9999) . '_' . mt_rand(0, 1000) . '.' . GetFileExt($upload->SourceName); $object = date("Y/m/", time()) . $filename; //构造云文件名 $upload->Name = $filename; $s = new SaeStorage(); $url = $s->upload($domainname, $object, $tmp); $upload->Metas->Storage_URL = $object; $GLOBALS['Filter_Plugin_Upload_SaveFile']['Storage'] = PLUGIN_EXITSIGNAL_RETURN; } /** * @param $upload */
<?php #注册插件 RegisterPlugin("PDC", "ActivePlugin_PDC"); function ActivePlugin_PDC() { }
<?php #注册插件 RegisterPlugin("wp2zbp", "ActivePlugin_wp2zbp"); function ActivePlugin_wp2zbp() { } function InstallPlugin_wp2zbp() { } function UninstallPlugin_wp2zbp() { }
<?php #注册插件 RegisterPlugin("utf84mb", "ActivePlugin_utf84mb"); function ActivePlugin_utf84mb() { Add_Filter_Plugin('Filter_Plugin_DbSql_Filter', 'utf84mb_filter'); Add_Filter_Plugin('Filter_Plugin_Edit_Begin', 'utf84mb_fixHtmlSpecialChars'); } function InstallPlugin_utf84mb() { } function UninstallPlugin_utf84mb() { } function utf84mb_filter(&$sql) { $sql = preg_replace_callback("/[\\x{10000}-\\x{10FFFF}]/u", 'utf84mb_convertToUCS4', $sql); } function utf84mb_fixHtmlSpecialChars() { global $article; $article->Content = preg_replace_callback("/\\&\\#x([0-9A-Z]{2,6})\\;/u", 'utf84mb_convertToUTF8', $article->Content); $article->Intro = preg_replace_callback("/\\&\\#x([0-9A-Z]{2,6})\\;/u", 'utf84mb_convertToUTF8', $article->Intro); } // These code is used for f**k PHP 5.3 and lower. // I love callback! function utf84mb_convertToUCS4($matches) { return sprintf("&#x%s;", ltrim(strtoupper(bin2hex(iconv('UTF-8', 'UCS-4', $matches[0]))), "0")); }
<?php #注册插件 RegisterPlugin("Pad", "ActivePlugin_Pad"); function ActivePlugin_Pad() { Add_Filter_Plugin('Filter_Plugin_Index_Begin', 'Pad_Main'); Add_Filter_Plugin('Filter_Plugin_Cmd_Begin', 'Pad_Template'); } function Pad_Template() { global $zbp, $action; if (GetVars('mod', 'GET') == 'pad') { $zbp->template->SetPath($zbp->usersdir . 'plugin/Pad/compile/'); } } function Pad_Main() { global $zbp; if (GetVars('mod', 'GET') == 'pad') { if (GetVars('act', 'GET') == 'logout') { Pad_Logout(); } if (GetVars('act', 'GET') == 'login') { Pad_Login(); } if (GetVars('act', 'GET') == 'verify') { Pad_Verify(); } if (isset($_GET['q'])) { Pad_Search();
<?php RegisterPlugin("wearingtheme", "ActivePlugin_wearingtheme"); function ActivePlugin_wearingtheme() { Add_Filter_Plugin('Filter_Plugin_Index_Begin', 'wearingtheme_index_begin'); } function wearingtheme_index_begin() { global $zbp; global $usersdir; $app = new App(); $theme = GetVars('theme', 'GET'); if ($theme == '') { $theme = GetVars('theme', 'COOKIE'); } $dir = $usersdir . 'theme/' . $theme; if ($theme == '') { return; } if (!is_dir($dir)) { return; } if (!$app->LoadInfoByXml('theme', $theme)) { return; } $zbp->Config('system')->ZC_BLOG_THEME = $theme; $zbp->option['ZC_BLOG_THEME'] = $theme; $zbp->activeapps[0] = $theme; foreach ($app->GetCssFiles() as $key => $value) { $value = basename($value, '.css');
<?php #注册插件 RegisterPlugin("STACentre", "ActivePlugin_STACentre"); function ActivePlugin_STACentre() { Add_Filter_Plugin('Filter_Plugin_Admin_SettingMng_SubMenu', 'STACentre_AddMenu'); } function STACentre_AddMenu() { global $zbp; echo '<a href="' . $zbp->host . 'zb_users/plugin/STACentre/main.php"><span class="m-left">静态化管理中心</span></a>'; }
<?php #注册插件 RegisterPlugin("Howl", "ActivePlugin_Howl"); function ActivePlugin_Howl() { global $zbp; Add_Filter_Plugin('Filter_Plugin_Zbp_CheckRights', 'Howl_CheckRights'); $zbp->LoadLanguage('plugin', 'Howl'); } function InstallPlugin_Howl() { global $zbp; $zbp->Config('Howl')->version = '1.0'; $zbp->SaveConfig('Howl'); } function UninstallPlugin_Howl() { global $zbp; //$zbp->DelConfig('Howl'); } function Howl_GetRightName($key) { global $zbp; if (isset($zbp->lang['actions'][$key])) { return $zbp->lang['actions'][$key]; } else { return $zbp->lang['Howl']['']; } } function Howl_CheckRights(&$action)