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

📄 ad_templates.php

📁 泛微协同办公系统标准版E-office V5.5的源代码内含泛微办公系统V5.5自动注册文件。
💻 PHP
📖 第 1 页 / 共 4 页
字号:
<?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 "add" :
			$this->add_splash( );
			break;
		case "edit" :
			$this->show_cats( );
			break;
		case "dedit" :
			$this->do_form( );
			break;
		case "doedit" :
			$this->do_edit( );
			break;
		case "remove" :
			$this->remove( );
			break;
		case "tools" :
			$this->tools( );
			break;
		case "editinfo" :
			$this->edit_info( );
			break;
		case "export" :
			$this->export( );
			break;
		case "edit_bit" :
			$this->edit_bit( );
			break;
		case "download" :
			$this->download_group( );
			break;
		case "upload" :
			$this->upload_form( );
			break;
		case "do_upload" :
			$this->upload_single( );
			break;
		default :
			$this->list_current( );
			break;
		}
	}

	function add_splash( )
	{
		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" )
		{
			$this->add_templates( );
			exit( );
		}
		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( "/<!--TEMPLATE_SET\\|(.+?)-->/", $data, $matches ) )
		{
			$ADMIN->error( "此文件不是合法的论坛论坛模板文件" );
		}
		list( $pack_name, $author, $email, $url ) = explode( ",", trim( $matches[1] ) );
		$pack_name .= "(Upload ID: ".substr( time( ), -6 ).")";
		$pack_name = str_replace( "'", "", $pack_name );
		$author = str_replace( "'", "", $author );
		$email = str_replace( "'", "", $email );
		$url = str_replace( "'", "", $url );
		$DB->query( "INSERT INTO ibf_tmpl_names (skname, author, email, url) VALUES('{$pack_name}', '{$author}', '{$email}', '{$url}')" );
		$setid = $DB->get_insert_id( );
		preg_match_all( "/<!--IBF_GROUP_START:(\\S+?)-->(.+?)<!--IBF_GROUP_END:\\S+?-->/s", $data, $match );
		$i = 0;
		for ( ;	$i < count( $match[0] );	++$i	)
		{
			$match[1][$i] = trim( $match[1][$i] );
			$match[2][$i] = trim( $match[2][$i] );
			$this->process_upload( $match[2][$i], $setid, $match[1][$i], 1 );
		}
		$ADMIN->done_screen( "论坛模板文件导入完成", "论坛模板管理", "act=templ" );
	}

	function upload_single( )
	{
		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 ( !is_dir( $INFO['upload_dir'] ) )
		{
			$ADMIN->error( "无法找到文件上传目录 - 请确认目录 'uploads' 是否存在或设置正确?" );
		}
		if ( $HTTP_POST_FILES['FILE_UPLOAD']['name'] == "" || !$HTTP_POST_FILES['FILE_UPLOAD']['name'] || $HTTP_POST_FILES['FILE_UPLOAD']['name'] == "none" )
		{
			$ADMIN->error( "没有选择需要上传的文件!" );
		}
		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( "无法打开和读取上传目录里的文件!" );
		}
		preg_match( "/<!--IBF_GROUP_START:(\\S+?)-->/", $data, $matches );
		$found_group = trim( $matches[1] );
		if ( $found_group != $IN['group'] )
		{
			$ADMIN->error( "上传的文件不是合法的的论坛模板文件类型。请在论坛模板文件 '{$IN['group']}', 查找 '{$found_group}'" );
		}
		$data = preg_replace( "/<!--IBF_GROUP_END:\\S+-->/", "", $data );
		$this->process_upload( $data, $IN['setid'], $IN['group'] );
		$ADMIN->done_screen( "论坛模板文件更新完成", "论坛模板管理", "act=templ" );
	}

	function upload_form( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		require( "./sources/Admin/skin_info.php" );
		if ( $IN['setid'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的论坛模板文件ID,请返回后重试!" );
		}
		if ( $IN['group'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的论坛模板文件ID,请返回后重试!" );
		}
		$DB->query( "SELECT * FROM ibf_skin_templates WHERE set_id='".$IN['setid']."' AND group_name='".$IN['group']."'" );
		if ( !$DB->get_num_rows( ) )
		{
			$ADMIN->error( "无法在数据库中找到相关的数据信息" );
		}
		$DB->query( "SELECT skname FROM ibf_tmpl_names WHERE skid='".$IN['setid']."'" );
		$row = $DB->fetch_row( );
		$ADMIN->page_detail = "请在提交前仔细审核所有信息";
		$ADMIN->page_title = "上传论坛主题模板文件:{$row['skname']}";
		$ADMIN->html .= $SKIN->start_form( array(
			1 => array( "code", "do_upload" ),
			2 => array( "act", "templ" ),
			3 => array( "MAX_FILE_SIZE", "10000000000" ),
			4 => array(
				"setid",
				$IN['setid']
			),
			5 => array(
				"group",
				$IN['group']
			)
		), "uploadform", " enctype='multipart/form-data'" );
		$SKIN->td_header[] = array( "&nbsp;", "40%" );
		$SKIN->td_header[] = array( "&nbsp;", "60%" );
		$ADMIN->html .= $SKIN->start_table( "上传替换论坛主题模板文件:".$skin_names[$IN['group']][0] );
		$ADMIN->html .= $SKIN->add_td_row( array(
			"<b>请在你的电脑里选择需要上传的文件</b><br>注意:上传的文件将替换所有当数据!",
			$SKIN->form_upload( )
		) );
		$ADMIN->html .= $SKIN->end_form( "上传文件" );
		$ADMIN->html .= $SKIN->end_table( );
		$ADMIN->nav[] = array( "act=templ", "论坛模板管理首页" );
		$ADMIN->nav[] = array(
			"act=templ&code=edit&id={$IN['setid']}",
			$row['skname']
		);
		$ADMIN->output( );
	}

	function export( )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		if ( $IN['id'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的论坛模板文件ID,请返回后重试!" );
		}
		$DB->query( "SELECT * FROM ibf_tmpl_names WHERE skid='".$IN['id']."'" );
		if ( !( $set = $DB->fetch_row( ) ) )
		{
			$ADMIN->error( "无法在数据库中找到相关的论坛模板文件ID,请检查后重试!" );
		}
		$groups = $DB->query( "SELECT DISTINCT(group_name) FROM ibf_skin_templates WHERE set_id='".$IN['id']."'" );
		if ( !$DB->get_num_rows( $groups ) )
		{
			$ADMIN->error( "无法在数据库中找到相关的数据信息" );
		}
		$author = str_replace( ",", "-", $set['author'] );
		$email = str_replace( ",", "-", $set['email'] );
		$url = str_replace( ",", "-", $set['url'] );
		$skname = str_replace( ",", "-", $set['skname'] );
		$output .= "<!--TEMPLATE_SET|{$skname},{$author},{$email},{$url}-->\n\n";
		while ( $row = $DB->fetch_row( $groups ) )
		{
			$output .= $this->download_group( 1, $IN['id'], $row['group_name'] );
		}
		$name = str_replace( " ", "_", $set['skname'] );
		@header( "Content-type: unknown/unknown" );
		@header( "Content-Disposition: attachment; filename={$name}.SET.html" );
		print $output;
		exit( );
	}

	function download_group( $return = 0, $setid = "", $group = "" )
	{
		global $IN;
		global $INFO;
		global $DB;
		global $SKIN;
		global $ADMIN;
		global $std;
		global $MEMBER;
		global $GROUP;
		if ( $setid != "" )
		{
			$IN['setid'] = $setid;
		}
		if ( $group != "" )
		{
			$IN['group'] = $group;
		}
		if ( $IN['setid'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的论坛模板文件ID,请返回后重试!" );
		}
		if ( $IN['group'] == "" )
		{
			$ADMIN->error( "你必须指定一个存在的论坛模板文件ID,请返回后重试!" );
		}
		$aq = $DB->query( "SELECT * FROM ibf_skin_templates WHERE set_id='".$IN['setid']."' AND group_name='".$IN['group']."'" );
		if ( !$DB->get_num_rows( $aq ) )
		{
			$ADMIN->error( "无法在数据库中找到相关的数据信息" );
		}
		$output = "<!-- PLEASE LEAVE ALL 'IBF' COMMENTS IN PLACE, DO NOT REMOVE THEM! -->\n<!--IBF_GROUP_START:{$IN['group']}-->\n\n";

⌨️ 快捷键说明

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