📄 ad_stylesheets.php
字号:
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
if ( $IN['id'] == "" )
{
$ADMIN->error( "你必须指定一个存在的CSS文件ID,请返回后重试!" );
}
$DB->query( "SELECT * from ibf_css WHERE cssid='".$IN['id']."'" );
if ( !( $row = $DB->fetch_row( ) ) )
{
$ADMIN->error( "无法在数据库中找到相关数据" );
}
$name = str_replace( " ", "_", $row['css_name'] );
@header( "Content-type: unknown/unknown" );
@header( "Content-Disposition: attachment; filename={$name},{$row['cssid']}.css" );
print $row['css_text'];
exit( );
}
function remove( )
{
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( "你必须指定一个存在的CSS文件ID,请返回后重试!" );
}
$DB->query( "DELETE FROM ibf_css WHERE cssid='".$IN['id']."'" );
$std->boink_it( $SKIN->base_url."&act=style" );
exit( );
}
function save_wrapper( $type = "add" )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
global $HTTP_POST_VARS;
if ( $type == "edit" && $IN['id'] == "" )
{
$ADMIN->error( "你必须指定一个存在的CSS文件ID,请返回后重试!" );
}
if ( $IN['name'] == "" )
{
$ADMIN->error( "你必须为这个CSS文件指定名称" );
}
if ( $IN['css'] == "" )
{
$ADMIN->error( "你无法使用无内容的层叠式样表(CSS)文件!" );
}
$css = stripslashes( $HTTP_POST_VARS['css'] );
$barney = array(
"css_name" => stripslashes( $HTTP_POST_VARS['name'] ),
"css_text" => $css
);
if ( $type == "add" )
{
$db_string = $DB->compile_db_insert_string( $barney );
$DB->query( "INSERT INTO ibf_css (".$db_string['FIELD_NAMES'].") VALUES(".$db_string['FIELD_VALUES'].")" );
$new_id = $DB->get_insert_id( );
$std->boink_it( $SKIN->base_url."&act=style" );
exit( );
}
else
{
$db_string = $DB->compile_db_update_string( $barney );
$DB->query( "UPDATE ibf_css SET {$db_string} WHERE cssid='".$IN['id']."'" );
$ADMIN->nav[] = array( "act=style", "层叠式样表(CSS)管理首页" );
$ADMIN->nav[] = array(
"act=style&code=edit2&id={$IN['id']}",
"继续编辑层叠式样表(CSS)"
);
$ADMIN->done_screen( "层叠式样表(CSS)已经更新", "层叠式样表(CSS)管理", "act=style" );
}
}
function do_form( $type = "add" )
{
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 cssid, css_text, css_name FROM ibf_css WHERE cssid='".$IN['id']."'" );
if ( !( $cssinfo = $DB->fetch_row( ) ) )
{
$ADMIN->error( "无法在数据库中找到相关的层叠式样表(CSS)文件信息" );
}
$css = $cssinfo['css_text'];
if ( $type == "add" )
{
$code = "doadd";
$button = "建立层叠式样表(CSS)";
$cssinfo['css_name'] = $cssinfo['css_name'].".2";
}
else
{
$code = "doedit";
$button = "编辑层叠式样表(CSS)";
}
$css_elements = array( );
preg_match_all( "/(\\.|\\#)(\\S+?)\\s{0,}\\{.+?\\}/s", $css, $match );
$i = 0;
for ( ; $i < count( $match[0] ); ++$i )
{
$type = trim( $match[1][$i] );
$name = trim( $match[2][$i] );
if ( $type == "." )
{
$css_elements[] = array(
"class|".$name,
$type.$name
);
}
else
{
$css_elements[] = array(
"id|".$name,
$type.$name
);
}
}
$ADMIN->page_detail = "当建立或编辑层叠式样表(CSS)时你需要使用完整的CSS语法。";
$ADMIN->page_title = "叠式样表(CSS)管理";
$ADMIN->html .= "<script language='javascript'>\n\t\t <!--\n\t\t function cssSearch(theID)\n\t\t {\n\t\t \tcssChosen = document.cssForm.csschoice.options[document.cssForm.csschoice.selectedIndex].value;\n\t\t \t\n\t\t \twindow.open('{$SKIN->base_url}&act=rtempl&code=css_search&id='+theID+'&element='+cssChosen,'CSSSEARCH','width=400,height=500,resizable=yes,scrollbars=yes');\n\t\t }\n\t\t \n\t\t function cssPreview(theID)\n\t\t {\n\t\t \tcssChosen = document.cssForm.csschoice.options[document.cssForm.csschoice.selectedIndex].value;\n\t\t \t\n\t\t \twindow.open('{$SKIN->base_url}&act=rtempl&code=css_preview&id='+theID+'&element='+cssChosen,'CSSSEARCH','width=400,height=500,resizable=yes,scrollbars=yes');\n\t\t }\n\t\t \n\t\t //-->\n\t\t </script>";
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "css_search" ),
2 => array( "act", "style" ),
3 => array(
"id",
$IN['id']
)
), "cssForm" );
$SKIN->td_header[] = array( " ", "20%" );
$SKIN->td_header[] = array( " ", "80%" );
$ADMIN->html .= $SKIN->start_table( "查找CSS用法" );
$ADMIN->html .= $SKIN->add_td_row( array(
"请选择...",
$SKIN->form_dropdown( "csschoice", $css_elements )." ... 使用在论坛模板文件 "."<input type=\"button\" value=\"Go!\" onClick=\"cssSearch('".$IN['id']."');\" id=\"editbutton\">"." <input type=\"button\" value=\"预览层叠式样表(CSS)\" onClick=\"cssPreview('".$IN['id']."');\" id=\"editbutton\">"
) );
$ADMIN->html .= $SKIN->end_form( );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->html .= $SKIN->js_no_specialchars( );
$ADMIN->html .= $SKIN->start_form( array(
1 => array(
"code",
$code
),
2 => array( "act", "style" ),
3 => array(
"id",
$IN['id']
)
), "theAdminForm", "onSubmit=\"return no_specialchars('csssheet')\"" );
$SKIN->td_header[] = array( " ", "20%" );
$SKIN->td_header[] = array( " ", "80%" );
$ADMIN->html .= $SKIN->start_table( $button );
$ADMIN->html .= $SKIN->add_td_row( array(
"层叠式样表名称",
$SKIN->form_input( "name", $cssinfo['css_name'] )
) );
$ADMIN->html .= $SKIN->add_td_row( array(
"内容<br><br>(<a href='html/sys-img/css.html' target='_blank'>运行层叠式样表编辑器</a>)",
$SKIN->form_textarea( "css", $css, "70", "30" )
) );
$ADMIN->html .= $SKIN->end_form( $button );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
function list_sheets( )
{
global $IN;
global $INFO;
global $DB;
global $SKIN;
global $ADMIN;
global $std;
global $MEMBER;
global $GROUP;
$form_array = array( );
$show_array = array( );
$ADMIN->page_detail = "你可以在下面建立/编辑/删除层叠式样表。<br><br>层叠式样表为CSS文件,你可以在CSS文件中修改论坛的颜色、字体、字体大小等参数。";
$ADMIN->page_title = "层叠式样表(CSS)管理";
$SKIN->td_header[] = array( "名称", "30%" );
$SKIN->td_header[] = array( "分配", "25%" );
$SKIN->td_header[] = array( "优化", "10%" );
$SKIN->td_header[] = array( "下载", "10%" );
$SKIN->td_header[] = array( "编辑", "10%" );
$SKIN->td_header[] = array( "删除", "15%" );
$DB->query( "SELECT DISTINCT(c.cssid), c.css_name, s.sname from ibf_css c, ibf_skins s WHERE s.css_id=c.cssid ORDER BY c.css_name ASC" );
$used_ids = array( );
if ( $DB->get_num_rows( ) )
{
$ADMIN->html .= $SKIN->start_table( "当前使用的层叠式样表文件" );
while ( $r = $DB->fetch_row( ) )
{
$show_array[$r['cssid']] .= stripslashes( $r['sname'] )."<br>";
if ( in_array( $r['cssid'], $used_ids ) )
{
}
else
{
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>".stripslashes( $r['css_name'] )."</b>",
"<#X-{$r['cssid']}#>",
"<center><a href='".$SKIN->base_url."&act=style&code=optimize&id={$r['cssid']}'>优化</a></center>",
"<center><a href='".$SKIN->base_url."&act=style&code=export&id={$r['cssid']}'>下载</a></center>",
"<center><a href='".$SKIN->base_url."&act=style&code=edit&id={$r['cssid']}'>编辑</a></center>",
"删除前请重新匹配"
) );
$used_ids[] = $r['cssid'];
$form_array[] = array(
$r['cssid'],
$r['css_name']
);
}
}
foreach ( $show_array as $idx => $string )
{
$string = preg_replace( "/<br>\$/", "", $string );
$ADMIN->html = preg_replace( "/<#X-{$idx}#>/", "{$string}", $ADMIN->html );
}
$ADMIN->html .= $SKIN->end_table( );
}
if ( 0 < count( $used_ids ) )
{
$DB->query( "SELECT cssid, css_name FROM ibf_css WHERE cssid NOT IN(".implode( ",", $used_ids ).")" );
if ( $DB->get_num_rows( ) )
{
$SKIN->td_header[] = array( "名称", "55%" );
$SKIN->td_header[] = array( "优化", "10%" );
$SKIN->td_header[] = array( "下载", "10%" );
$SKIN->td_header[] = array( "编辑", "10%" );
$SKIN->td_header[] = array( "删除", "15%" );
$ADMIN->html .= $SKIN->start_table( "当前没有匹配的层叠式样表(CSS)文件" );
$ADMIN->html .= $SKIN->js_checkdelete( );
while ( $r = $DB->fetch_row( ) )
{
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>".stripslashes( $r['css_name'] )."</b>",
"<center><a href='".$SKIN->base_url."&act=style&code=optimize&id={$r['cssid']}'>优化</a></center>",
"<center><a href='".$SKIN->base_url."&act=style&code=export&id={$r['cssid']}'>下载</a></center>",
"<center><a href='".$SKIN->base_url."&act=style&code=edit&id={$r['cssid']}'>编辑</a></center>",
"<center><a href='javascript:checkdelete(\"act=style&code=remove&id={$r['cssid']}\")'>删除</a></center>"
) );
$form_array[] = array(
$r['cssid'],
$r['css_name']
);
}
$ADMIN->html .= $SKIN->end_table( );
}
}
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "add" ),
2 => array( "act", "style" )
) );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "建立新的层叠式样表(CSS) - 复制" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>层叠式样表(CSS)基于...</b>",
$SKIN->form_dropdown( "id", $form_array )
) );
$ADMIN->html .= $SKIN->end_form( "复制到新层叠式样表(CSS)中" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->html .= $SKIN->start_form( array(
1 => array( "code", "css_upload" ),
2 => array( "act", "style" ),
3 => array( "MAX_FILE_SIZE", "10000000000" )
), "uploadform", " enctype='multipart/form-data'" );
$SKIN->td_header[] = array( " ", "40%" );
$SKIN->td_header[] = array( " ", "60%" );
$ADMIN->html .= $SKIN->start_table( "上传新层叠式样表(CSS)文件" );
$ADMIN->html .= $SKIN->add_td_row( array(
"<b>浏览你的本地硬盘</b>",
$SKIN->form_upload( )
) );
$ADMIN->html .= $SKIN->end_form( "上传新层叠式样表(CSS)文件" );
$ADMIN->html .= $SKIN->end_table( );
$ADMIN->output( );
}
}
ad_settings( );
$idx = new ad_settings( );
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -