1
0
mirror of https://github.com/e107inc/e107.git synced 2025-08-01 20:30:39 +02:00

Maintenance administration - ajax implementation;

Solved number of bbcode issues (lot more to do);
e_form::bbarea method added (automated bb textarea creation);
admin_theme for blank theme
This commit is contained in:
secretr
2009-01-07 15:40:06 +00:00
parent 320da6645e
commit bd228fc99f
10 changed files with 304 additions and 114 deletions

View File

@@ -9,8 +9,8 @@
* Administration Area Authorization
*
* $Source: /cvs_backup/e107_0.8/e107_admin/auth.php,v $
* $Revision: 1.6 $
* $Date: 2008-12-10 16:59:19 $
* $Revision: 1.7 $
* $Date: 2009-01-07 15:40:06 $
* $Author: secretr $
*/
@@ -23,6 +23,11 @@ if (ADMIN)
define("ADMIN_PAGE", true);
//don't include it if it'a an AJAX call or not wanted
if(!e_AJAX_REQUEST && !defset('NO_HEADER')) require_once(e_ADMIN."header.php");
/*
* FIXME - missing $style for tablerender
* The Solution: parse_admin() without sending it to the browser if it's an ajax call
* The Problem: doubled render time for the ajax called page!!!
*/
}
else
{
@@ -239,4 +244,4 @@ class auth
}
//------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
?>
?>

View File

@@ -9,8 +9,8 @@
* Administration Area - Meta Tags
*
* $Source: /cvs_backup/e107_0.8/e107_admin/meta.php,v $
* $Revision: 1.5 $
* $Date: 2008-12-21 12:53:11 $
* $Revision: 1.6 $
* $Date: 2009-01-07 15:40:06 $
* $Author: secretr $
*
*/
@@ -142,10 +142,8 @@ require_once("footer.php");
*/
function headerjs()
{
require_once(e_HANDLER.'js_helper.php');
$ret = "
<script type='text/javascript'>
//add required core lan - delete confirm message
var e107Admin = {}
e107Admin.initRules = {
'Helper': true,

View File

@@ -1,31 +1,34 @@
<?php
/*
+ ----------------------------------------------------------------------------+
| e107 website system
|
| <20>Steve Dunstan 2001-2002
| http://e107.org
| jalist@e107.org
|
| Released under the terms and conditions of the
| GNU General Public License (http://gnu.org).
|
| $Source: /cvs_backup/e107_0.8/e107_admin/ugflag.php,v $
| $Revision: 1.2 $
| $Date: 2008-11-01 23:01:05 $
| $Author: e107steved $
+----------------------------------------------------------------------------+
* e107 website system
*
* Copyright (C) 2001-2008 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* Administration - Site Maintenance
*
* $Source: /cvs_backup/e107_0.8/e107_admin/ugflag.php,v $
* $Revision: 1.3 $
* $Date: 2009-01-07 15:40:06 $
* $Author: secretr $
*
*/
require_once("../class2.php");
if (!getperms("9"))
if (!getperms("9"))
{
header("location:".e_BASE."index.php");
exit;
}
require_once(e_HANDLER."ren_help.php");
require_once(e_HANDLER."form_handler.php");
require_once (e_HANDLER."message_handler.php");
$emessage = &eMessage::getInstance();
$emessage_method = e_AJAX_REQUEST ? 'add' : 'addSession';
if (isset($_POST['updatesettings']))
$frm = new e_form(true);
if (isset($_POST['updatesettings']))
{
$changed = FALSE;
$temp = intval($_POST['maintainance_flag']);
@@ -44,54 +47,99 @@ if (isset($_POST['updatesettings']))
{
$admin_log->log_event(($pref['maintainance_flag'] == 0) ? 'MAINT_02' : 'MAINT_01',$pref['maintainance_text'],E_LOG_INFORMATIVE,'');
save_prefs();
$emessage->$emessage_method(UGFLAN_1, E_MESSAGE_SUCCESS);
}
else $emessage->$emessage_method(UGFLAN_7);
if(!e_AJAX_REQUEST)
{
header("location:".e_SELF);
exit;
}
header("location:".e_SELF."?u");
exit;
}
require_once("auth.php");
if (e_QUERY == "u") {
$ns->tablerender("", "<div style='text-align:center'><b>".UGFLAN_1.".</b></div>");
}
$maintainance_flag = $pref['maintainance_flag'];
$text = "<div style='text-align:center'>
<form method='post' action='".e_SELF."' id='dataform'>
<table style='".ADMIN_WIDTH."' class='fborder'>
<tr>
<td style='width:30%' class='forumheader3'>".UGFLAN_2.": </td>
<td style='width:70%' class='forumheader3'>";
if ($maintainance_flag == 1) {
$text .= "<input type='checkbox' name='maintainance_flag' value='1' checked='checked' />";
} else {
$text .= "<input type='checkbox' name='maintainance_flag' value='1' />";
}
$text .= "</td>
</tr>
<tr>
<td style='width:30%' class='forumheader3'>".UGFLAN_5."<br /><span class='smalltext'>".UGFLAN_6."</span></td>
<td style='width:70%' class='forumheader3'>
<textarea id='maintainance_text' class='tbox' name='maintainance_text' cols='63' style='max-width:80%' rows='10' onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);'>".$pref['maintainance_text']."</textarea>
<br />".display_help("","maintenance")." </td>
</tr>
<tr style='vertical-align:top'>
<td colspan='2' style='text-align:center' class='forumheader'>
<input class='button' type='submit' name='updatesettings' value='".UGFLAN_3."' />
</td>
</tr>
</table>
$text = "
<form method='post' action='".e_SELF."' id='core-ugflag-form'>
<fieldset id='core-ugflag'>
<legend class='e-hideme'>".UGFLAN_4."</legend>
<table cellpadding='0' cellspacing='0' class='adminform'>
<colgroup span='2'>
<col class='col-label' />
<col class='col-control' />
</colgroup>
<tbody>
<tr>
<td class='label'>".UGFLAN_2.": </td>
<td class='control'>
<div class='auto-toggle-area autocheck'>
".$frm->checkbox('maintainance_flag', '1', $pref['maintainance_flag'])."
</div>
</td>
</tr>
<tr>
<td class='label'>".UGFLAN_5."
<div class='field-help'>".UGFLAN_6."</div>
</td>
<td class='control'>
".$frm->bbarea('maintainance_text', $pref['maintainance_text'], 'maintenance', 'maintenance_bbhelp')."
</td>
</tr>
</tbody>
</table>
<div class='buttons-bar center'>
".$frm->admin_button('updatesettings', UGFLAN_3, 'update')."
</div>
</fieldset>
</form>
</div>";
$ns->tablerender(UGFLAN_4, $text);
require_once("footer.php");
";
//Ajax Support
if(!e_AJAX_REQUEST)
{
echo "<div id='ajax-container'>\n";
$e107->ns->tablerender(UGFLAN_4, $emessage->render().$text, 'core-ugflag');
echo "\n</div>";
require_once(e_ADMIN."footer.php");
exit;
}
$e107->ns->tablerender(UGFLAN_4, $emessage->render().$text, 'core-ugflag');
/**
* Handle page DOM within the page header
*
* @return string JS source
*/
function headerjs()
{
$ret = "
<script type='text/javascript'>
//Ajax Support
var CoreUgflagAjaxPage = function(e_event) {
\$('updatesettings').observe('click', function(event) {
var form = \$('core-ugflag-form');
if(form) {
event.stop();
form.submitForm('ajax-container', { overlayPage: 'core-ugflag', parameters: { updatesettings: 1 } });
}
});
}
e107.runOnLoad(CoreUgflagAjaxPage, 'ajax-container', true);
//Admin JS Init Rules
var e107Admin = {}
e107Admin.initRules = {
'Helper': true,
'AdminMenu': false
}
</script>
<script type='text/javascript' src='".e_FILE_ABS."jslib/core/admin.js'></script>
";
return $ret;
}
?>

View File

@@ -11,8 +11,8 @@
| GNU General Public License (http://gnu.org).
|
| $Source: /cvs_backup/e107_0.8/e107_files/shortcode/batch/bbcode_shortcodes.php,v $
| $Revision: 1.8 $
| $Date: 2008-12-29 15:23:06 $
| $Revision: 1.9 $
| $Date: 2009-01-07 15:40:06 $
| $Author: secretr $
+----------------------------------------------------------------------------+
*/
@@ -28,7 +28,7 @@ SC_BEGIN BB
//FIXME - cachevars/getcachedvars!
global $pref, $eplug_bb, $bbcode_func, $bbcode_help, $bbcode_filedir, $bbcode_imagedir, $bbcode_helpactive, $bbcode_helptag, $register_bb, $imode;
if(e_WYSIWYG){ return; }
if(defsettrue('e_WYSIWYG')){ return; }
$bbcode_func = ($bbcode_func) ? $bbcode_func : "addtext";
$bbcode_help = ($bbcode_help) ? $bbcode_help : "help";
@@ -39,7 +39,7 @@ $imagedir_display = str_replace("../","",$bbcode_imagedir);
if($parm == "emotes")
{
if ($pref['comments_emoticons'] && $pref['smiley_activate'] && !e_WYSIWYG)
if ($pref['comments_emoticons'] && $pref['smiley_activate'] && !defsettrue('e_WYSIWYG'))
{
$bbcode['emotes'] = array("expandit","emoticon_selector_".$rand, LANHELP_44, "emotes.png", "Emoticon_Select", "emoticon_selector_".$rand);
}
@@ -72,7 +72,7 @@ $bbcode['prefile'] = array("expandit","prefile_selector_".$rand, LANHELP_39,"pre
if(!isset($iconpath[$parm]))
{
$iconpath[$parm] = (file_exists(THEME."bbcode/bold.png") ? THEME."bbcode/" : e_IMAGE."packs/".$imode."/bbcode/");
$iconpath[$parm] = (file_exists(THEME."bbcode/bold.png") ? THEME_ABS."bbcode/" : e_IMAGE_ABS."bbcode/");
$iconpath[$parm] .= $bbcode[$parm][3];
}
@@ -135,19 +135,19 @@ SC_END
SC_BEGIN BB_HELP
if(e_WYSIWYG){ return; }
if(defsettrue('e_WYSIWYG')) { return; }
global $bbcode_helpactive,$bbcode_helptag;
if($parm) $bbcode_helptag = $parm;
elseif(!varset($bbcode_helptag)) $bbcode_helptag = 'helpb';
$bbcode_helpactive = TRUE;
//FIXME - better bb help
return "<input id='{$bbcode_helptag}' class='helpbox' type='text' name='{$bbcode_helptag}' size='90' readonly='readonly' />\n";
return "<input id='{$bbcode_helptag}' class='tbox large helpbox' type='text' name='{$bbcode_helptag}' size='90' readonly='readonly' />";
SC_END
SC_BEGIN BB_PREIMAGEDIR
if(e_WYSIWYG){ return; }
if(defsettrue('e_WYSIWYG')) { return; }
global $bbcode_imagedir;
$bbcode_imagedir = $parm;
return;

View File

@@ -9,8 +9,8 @@
* Form Handler
*
* $Source: /cvs_backup/e107_0.8/e107_handlers/form_handler.php,v $
* $Revision: 1.13 $
* $Date: 2008-12-30 13:51:41 $
* $Revision: 1.14 $
* $Date: 2009-01-07 15:40:06 $
* $Author: secretr $
*
*/
@@ -100,6 +100,28 @@ class e_form
return "<textarea name='{$name}' rows='{$rows}' cols='{$cols}'".$this->get_attributes($options, $name).">{$value}</textarea>";
}
function bbarea($name, $value, $help_mod = '', $help_tagid='')
{
$options = array('class' => 'tbox large');
if(!defsettrue('e_WYSIWYG'))
{
require_once(e_HANDLER."ren_help.php");
$options['other'] = "onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);'";
$bbbar = display_help($help_tagid, $help_mod);
}
$ret = "
<div class='bbarea'>
<div class='field-spacer'>
".$this->textarea($name, $value, 15, 50, $options)."
</div>
{$bbbar}
</div>
";
return $ret;
}
function checkbox($name, $value, $checked = false, $options = array())
{
$options['checked'] = $checked; //comes as separate argument just for convenience

View File

@@ -11,9 +11,9 @@
| GNU General Public License (http://gnu.org).
|
| $Source: /cvs_backup/e107_0.8/e107_handlers/ren_help.php,v $
| $Revision: 1.7 $
| $Date: 2008-11-20 20:34:44 $
| $Author: e107steved $
| $Revision: 1.8 $
| $Date: 2009-01-07 15:40:06 $
| $Author: secretr $
+----------------------------------------------------------------------------+
*/
@@ -33,7 +33,7 @@ function ren_help($mode = 1, $addtextfunc = "addtext", $helpfunc = "help")
function display_help($tagid="helpb", $mode = 1, $addtextfunc = "addtext", $helpfunc = "help")
{
if(e_WYSIWYG){ return; }
if(defsettrue('e_WYSIWYG')) { return; }
global $tp, $pref, $eplug_bb, $bbcode_func, $register_bb, $bbcode_help, $bbcode_helpactive, $bbcode_helptag;
$bbcode_func = $addtextfunc;
@@ -68,7 +68,7 @@ function display_help($tagid="helpb", $mode = 1, $addtextfunc = "addtext", $help
}
$temp['news'] = $BBCODE_TEMPLATE_NEWSPOST;
$temp['submitnews'] = $BBCODE_TEMPLATE_SUBMITNEWS;
$temp['submitnews'] = $BBCODE_TEMPLATE_SUBMITNEWS;
$temp['extended'] = $BBCODE_TEMPLATE_NEWSPOST;
$temp['admin'] = $BBCODE_TEMPLATE_ADMIN;
$temp['mailout'] = $BBCODE_TEMPLATE_ADMIN."{BB=shortcode}";

View File

@@ -4,17 +4,17 @@
| e107 website system - Language File.
|
| $Source: /cvs_backup/e107_0.8/e107_languages/English/admin/lan_ugflag.php,v $
| $Revision: 1.1.1.1 $
| $Date: 2006-12-02 04:34:42 $
| $Author: mcfly_e107 $
| $Revision: 1.2 $
| $Date: 2009-01-07 15:40:06 $
| $Author: secretr $
+----------------------------------------------------------------------------+
*/
define("UGFLAN_1", "maintenance setting updated");
define("UGFLAN_1", "Maintenance settings updated");
define("UGFLAN_2", "Activate maintenance flag");
define("UGFLAN_3", "Update Maintenance Setting");
define("UGFLAN_4", "Maintenance Setting");
define("UGFLAN_5", "Text to display when site down");
define("UGFLAN_6", "Leave blank to display default message");
define("UGFLAN_7","Update unsuccessful as no changes were made.");
?>

View File

@@ -123,6 +123,7 @@ select, .tbox, .helpbox {
}
option { padding-right: 10px;}
input.input-text, textarea, .tbox, .helpbox { padding:2px; }
.tbox.large { width: 95% !important; }
select.tbox { min-height:17px; padding: 0px; /* setting the height of empty selects */ }
.select.order { width: 40px !important; }
.select.time-offset { width: 60px !important; }
@@ -169,6 +170,7 @@ label { cursor: pointer; }
.adminedit .select { width: 280px; }
.adminedit .input-text { width: 274px;}
.adminedit td.control textarea { width: 274px;}
.adminedit td.control textarea.large { width: 400px; }
.adminedit td.label {}
.adminedit td.control {}

View File

@@ -0,0 +1,100 @@
<?php
include_lan(THEME."languages/".e_LANGUAGE.".php");
$THEME_CORE_JSLIB = array(
'jslib/core/decorate.js' => 'all',
'jslib/core/tabs.js' => 'admin'
);
$register_sc[]='FS_ADMIN_ALT_NAV';
$no_core_css = TRUE;
function theme_head() {
$ret = '';
$ret .= '
<link rel="stylesheet" href="'.THEME_ABS.'menu/menu.css" type="text/css" media="all" />
<!--[if IE]>
<link rel="stylesheet" href="'.THEME_ABS.'ie_all.css" type="text/css" media="all" />
<![endif]-->
<!--[if lte IE 7]>
<script type="text/javascript" src="'.THEME_ABS.'menu/menu.js"></script>
<![endif]-->
';
$ret .= "
<script type='text/javascript'>
/**
* Decorate all tables having e-list class
* TODO: add 'adminlist' class to all list core tables, allow theme decorate.
*/
e107.runOnLoad( function(event) {
var element = event.element() != document ? event.element() : $$('body')[0];
element.select('table.adminlist:not(.no-decorate)').each(function(element) {
e107Utils.Decorate.table(element, {tr_td: 'first last'});
});
element.select('div.admintabs').each(function(element) {
new e107Widgets.Tabs(element);
});
}, document, true);
</script>";
return $ret;
}
function tablestyle($caption, $text, $mod) {
global $style;
$class = '';
if(is_string($mod) && $mod == 'admin_help') $class = ' '.str_replace('_', '-', $mod);
switch(varset($style, 'admin_content')) {
case 'admin_menu' :
echo '
<div class="block">
<h4 class="caption">'.$caption.'</h4>
'.$text.'
</div>
';
break;
case 'site_info' :
echo '
<div class="block'.$class.'">
<h4 class="caption">'.$caption.'</h4>
<div class="block-text">
'.$text.'
</div>
</div>
';
break;
case 'admin_content':
echo '
<div class="block">
<h2 class="caption">'.$caption.'</h2>
<div class="block-text">
'.$text.'
</div>
</div>
';
break;
default:
echo '
<div class="block">
<h4>'.$caption.'</h4>
<div class="block-text">
'.$text.'
</div>
</div>
';
break;
}
}
$HEADER = '';
$FOOTER = '';
?>

View File

@@ -11,9 +11,9 @@
| GNU General Public License (http://gnu.org).
|
| $Source: /cvs_backup/e107_0.8/e107_themes/templates/bbcode_template.php,v $
| $Revision: 1.4 $
| $Date: 2007-11-13 07:54:33 $
| $Author: e107coders $
| $Revision: 1.5 $
| $Date: 2009-01-07 15:40:06 $
| $Author: secretr $
+----------------------------------------------------------------------------+
*/
// How to register your own BBcode button.
@@ -22,8 +22,10 @@
// $register_bb['blank'] = array("", "[blank][/blank]","Blank example helper text",e_IMAGE."packs/".$imode."/bbcode/template.png");
$BBCODE_TEMPLATE = "
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}{BB=right}
{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
<div class='field-spacer'>
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}{BB=right}
{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
</div>
";
// $BBCODE_TEMPLATE .= "{BB=blank}";
@@ -33,41 +35,54 @@ $BBCODE_TEMPLATE = "
// $sc_style['BB_HELP']['post'] = "</div>";
$BBCODE_TEMPLATE_SUBMITNEWS = "
{BB_HELP}<br />
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}{BB=right}
{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}{BB=flash}
<div class='field-spacer'>
{BB_HELP}
</div>
<div class='field-spacer'>
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}{BB=right}
{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}{BB=flash}
</div>
";
// -------- Admin Templates ----------------------
$BBCODE_TEMPLATE_ADMIN = "
{BB_HELP=admin}<br />
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}
{BB=right}{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
{BB_PREIMAGEDIR=".e_IMAGE."}
{BB=preimage}{BB=prefile}{BB=flash}
<div class='field-spacer'>
{BB_HELP=admin}
</div>
<div class='field-spacer'>
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}
{BB=right}{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
{BB_PREIMAGEDIR=".e_IMAGE."}
{BB=preimage}{BB=prefile}{BB=flash}
</div>
";
// $BBCODE_TEMPLATE_ADMIN .= "{BB=blank}";
$BBCODE_TEMPLATE_NEWSPOST = "
{BB_HELP=$mode}<br />
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}
{BB=right}{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
{BB_PREIMAGEDIR=".e_IMAGE."newspost_images/}
{BB=preimage}{BB=prefile}{BB=flash}
<div class='field-spacer'>
{BB_HELP=$mode}
</div>
<div class='field-spacer'>
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}
{BB=right}{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
{BB_PREIMAGEDIR=".e_IMAGE."newspost_images/}
{BB=preimage}{BB=prefile}{BB=flash}
</div>
";
$BBCODE_TEMPLATE_CPAGE = "
{BB_HELP}<br />
{BB=newpage}
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}{BB=right}
{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
{BB_PREIMAGEDIR=".e_IMAGE."custom/}
{BB=preimage}{BB=prefile}{BB=flash}
<div class='field-spacer'>
{BB_HELP}
</div>
<div class='field-spacer'>
{BB=newpage}
{BB=link}{BB=b}{BB=i}{BB=u}{BB=img}{BB=center}{BB=left}{BB=right}
{BB=bq}{BB=code}{BB=list}{BB=fontcol}{BB=fontsize}{BB=emotes}
{BB_PREIMAGEDIR=".e_IMAGE."custom/}
{BB=preimage}{BB=prefile}{BB=flash}
</div>
";
?>