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

📄 ad_imagemacros.php

📁 泛微协同办公系统标准版E-office V5.5的源代码内含泛微办公系统V5.5自动注册文件。
💻 PHP
📖 第 1 页 / 共 2 页
字号:
<?php

class ad_settings
{

	var $base_url;

	function ad_settings( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		$tmp_in = array_merge( $_GET, $_POST, $_COOKIE );
		foreach ( $tmp_in as $k => $v )
		{
		}
		switch ( $IN['code'] )
		{
		case "wrapper" :
			$this->list_current( );
			break;
		case "add" :
			$this->add_macro_set( );
			break;
		case "edit" :
			$this->show_macros( );
			break;
		case "doedit" :
			$this->edit_set_name( );
			break;
		case "macroedit" :
			$this->macro_form( "edit" );
			break;
		case "macroadd" :
			$this->macro_form( "add" );
			break;
		case "macroremove" :
			$this->macro_remove( );
			break;
		case "doeditmacro" :
			$this->macro_edit( );
			break;
		case "doaddmacro" :
			$this->macro_add( );
			break;
		case "remove" :
			$this->remove( );
			break;
		case "export" :
			$this->export( );
			break;
		case "import" :
			$this->import( );
			break;
		default :
			$this->list_current( );
			break;
		}
	}

	function import( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		global $HTTP_POST_FILES;
		$FILE_NAME = $HTTP_POST_FILES['FILE_UPLOAD']['name'];
		$FILE_SIZE = $HTTP_POST_FILES['FILE_UPLOAD']['size'];
		$FILE_TYPE = $HTTP_POST_FILES['FILE_UPLOAD']['type'];
		$FILE_TYPE = preg_replace( "/^(.+?);.*\$/", "\\1", $FILE_TYPE );
		if ( $HTTP_POST_FILES['FILE_UPLOAD']['name'] == "" || !$HTTP_POST_FILES['FILE_UPLOAD']['name'] || $HTTP_POST_FILES['FILE_UPLOAD']['name'] == "none" )
		{
			$ADMIN->error( "没有选择上传文件,请返回重试!" );
		}
		if ( !is_dir( $INFO['upload_dir'] ) )
		{
			$ADMIN->error( "无法找到上传目录 - 请检查目录 'uploads' 是否存在或设置正确" );
		}
		if ( !move_uploaded_file( $HTTP_POST_FILES['FILE_UPLOAD']['tmp_name'], $INFO['upload_dir']."/".$FILE_NAME ) )
		{
			$ADMIN->error( "上传失败!" );
		}
		else
		{
			@chmod( $INFO['upload_dir']."/".$FILE_NAME, 511 );
		}
		$filename = $INFO['upload_dir']."/".$FILE_NAME;
		if ( $FH = @fopen( $filename, "r" ) )
		{
			$data = @fread( $FH, @filesize( $filename ) );
			@fclose( $FH );
			@unlink( $filename );
		}
		else
		{
			$ADMIN->error( "无法打开和读取上传的文件!" );
		}
		if ( !preg_match( "/~=~/", $data ) )
		{
			$ADMIN->error( "此文件不是有效的论坛图片图标文件" );
		}
		$DB->query( "SELECT MAX(set_id) as max FROM ibf_macro_name" );
		$max = $DB->fetch_row( );
		$new_id = $max['max'] + 1;
		$init_array = array( );
		$final_keys = array( );
		$init_array = explode( "\n", $data );
		foreach ( $init_array as $l )
		{
			if ( preg_match( "~=~", $l ) )
			{
				list( $k, $v ) = explode( "~=~", $l );
				$k = trim( $k );
				$v = trim( $v );
				$final_keys[$k] = $v;
			}
		}
		foreach ( $final_keys as $k => $v )
		{
			if ( $v == "*UNASSIGNED*" )
			{
				$v = "";
			}
			$row['macro_replace'] = str_replace( "\\n", "\n", $v );
			$str = $DB->compile_db_insert_string( array(
				"macro_value" => stripslashes( $k ),
				"macro_replace" => $v,
				"macro_set" => $new_id,
				"can_remove" => 1
			) );
			$DB->query( "INSERT INTO ibf_macro ({$str['FIELD_NAMES']}) VALUES({$str['FIELD_VALUES']})" );
		}
		$set_name = "新图片图标设置 (上传:".substr( time( ), -6 ).")";
		$str = $DB->compile_db_insert_string( array(
			"set_name" => $set_name,
			"set_id" => $new_id
		) );
		$DB->query( "INSERT INTO ibf_macro_name ({$str['FIELD_NAMES']}) VALUES({$str['FIELD_VALUES']})" );
		$ADMIN->done_screen( "模板变量文件导入成功", "模板变量管理", "act=image" );
	}

	function edit_set_name( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		global $HTTP_POST_VARS;
		if ( $IN['id'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的模板变量文件ID,请返回后重试!" );
		}
		$DB->query( "SELECT * FROM ibf_macro WHERE macro_id='".$IN['id']."'" );
		if ( !( $row = $DB->fetch_row( ) ) )
		{
			$ADMIN->error( "无法在数据库中找到相关的数据信息" );
		}
		$DB->query( "UPDATE ibf_macro_name SET set_name='{$IN['macro_name']}' WHERE set_id='".$IN['id']."'" );
		$ADMIN->done_screen( "模板变量已经更新", "模板变量管理 {$row['macro_name']}", "act=image&code=edit&id={$row['macro_set']}" );
	}

	function macro_remove( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		global $HTTP_POST_VARS;
		if ( $IN['mid'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的模板变量文件ID,请返回后重试!" );
		}
		$DB->query( "SELECT * FROM ibf_macro WHERE macro_id='".$IN['mid']."'" );
		$row = $DB->fetch_row( );
		$DB->query( "DELETE FROM ibf_macro WHERE macro_id='".$IN['mid']."'" );
		$ADMIN->done_screen( "模板变量已经删除", "模板变量管理 {$row['macro_name']}", "act=image&code=edit&id={$row['macro_set']}" );
	}

	function macro_edit( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		global $HTTP_POST_VARS;
		if ( $IN['mid'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的模板变量文件ID,请返回后重试!" );
		}
		$DB->query( "SELECT * FROM ibf_macro WHERE macro_id='".$IN['mid']."'" );
		if ( !( $row = $DB->fetch_row( ) ) )
		{
			$ADMIN->error( "无法在数据库中找到相关的数据信息" );
		}
		$key = str_replace( "'", "\\'", stripslashes( $HTTP_POST_VARS['macro_value'] ) );
		$val = str_replace( "'", "\\'", stripslashes( $HTTP_POST_VARS['macro_replace'] ) );
		$DB->query( "UPDATE ibf_macro SET macro_value='{$key}', macro_replace='{$val}' WHERE macro_id='".$IN['mid']."'" );
		$ADMIN->done_screen( "模板变量已经更新", "模板变量设置 {$row['macro_name']}", "act=image&code=edit&id={$row['macro_set']}" );
	}

	function macro_add( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		global $HTTP_POST_VARS;
		if ( $IN['id'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的模板变量文件ID,请返回后重试!" );
		}
		$DB->query( "SELECT * FROM ibf_macro WHERE macro_set='".$IN['id']."' LIMIT 0,1" );
		if ( !( $row = $DB->fetch_row( ) ) )
		{
			$ADMIN->error( "无法在数据库中找到相关的数据信息" );
		}
		$str = $DB->compile_db_insert_string( array(
			"macro_value" => stripslashes( $HTTP_POST_VARS['macro_value'] ),
			"macro_replace" => stripslashes( $HTTP_POST_VARS['macro_replace'] ),
			"can_remove" => 1,
			"macro_set" => $row['macro_set']
		) );
		$DB->query( "INSERT INTO ibf_macro ({$str['FIELD_NAMES']}) VALUES({$str['FIELD_VALUES']})" );
		$ADMIN->done_screen( "模板变量已经添加", "模板变量管理 {$row['macro_name']}", "act=image&code=edit&id={$row['macro_set']}" );
	}

	function macro_form( $type = "edit" )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		if ( $type == "edit" )
		{
			if ( $IN['mid'] == "" )
			{
				$ADMIN->error( "你必须指定一个存在的模板变量文件ID,请返回后重试!" );
			}
			$DB->query( "SELECT m.*, mn.set_name from ibf_macro m, ibf_macro_name mn WHERE macro_id='".$IN['mid']."' AND mn.set_id=m.macro_set" );
			if ( !( $row = $DB->fetch_row( ) ) )
			{
				$ADMIN->error( "无法在数据库中找到相关的数据信息" );
			}
			$button = "编辑模板变量";
			$title = "编辑模板变量在文件:<a href='{$SKIN->base_url}&act=image&code=edit&id={$row['macro_set']}'>{$row['set_name']}</a>";
			$code = "doeditmacro";
		}
		else
		{
			if ( $IN['id'] == "" )
			{
				$ADMIN->error( "你必须指定一个存在的模板变量文件ID,请返回后重试!" );
			}
			$DB->query( "SELECT set_name from ibf_macro_name WHERE set_id='".$IN['id']."'" );
			if ( !( $row = $DB->fetch_row( ) ) )
			{
				$ADMIN->error( "无法在数据库中找到相关的数据信息" );
			}
			$code = "doaddmacro";
			$title = "添加模板变量到文件:<a href='{$SKIN->base_url}&act=image&code=edit&id={$IN['id']}'>{$row['set_name']}</a>";
			$button = "添加模板变量";
		}
		$ADMIN->page_detail = "模板变量可以在任何论坛模板中使用。<br>\n\t\t\t\t\t\t\t <b>例如:</b>如果添加一个模板变量为 'green_font' ,并且指定变量转换的内容 '&lt;font color='green'>',以后所有像 <span style='color:red'><b>&lt;{green_font}&gt;</b></span> 这样的模板变量将被自动转换为 &lt;font color='green'>\n\t\t\t\t\t\t\t <br><b>&lt;#IMG_DIR#></b> - 可以在任何模板文件中使用,系统将自动转换变量名称为主题界面中的对应图片文件路径";
		$ADMIN->page_title = "模板变量管理:{$row['set_name']}";
		$ADMIN->html .= $SKIN->js_no_specialchars( );
		$ADMIN->html .= $SKIN->start_form( array(
			1 => array(
				"code",
				$code
			),
			2 => array( "act", "image" ),
			3 => array(
				"id",
				$IN['id']
			),
			4 => array(

⌨️ 快捷键说明

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