';
if($m[title]){echo '
'.$m[title].'
';}
echo '
';
echo $m[desc];
}
if($m[submenu]){
$class = ($awpall[$id])? 'class="'.$awpall[$id].'"' : '' ;
$e_id = ($id)? ' id="'.$id.'"' : '' ;
echo '
';
$this->admin_panel_sub($m[submenu]);
if($m[action])
do_action($m[action]);
echo '
';
} ?>
['.__('More Information','awp').']';
echo '
'.$menu[info].'
';
$info++;
}
if(is_array($menu[item])){
echo '
';
$this->admin_panel_item($menu[item]);
if($menu[action])
do_action($menu[action]);
echo '
';
}
}
}
function admin_panel_item($items){
global $aWP, $awpall;
static $radios;
foreach($items as $item){
$selected = $size =$post =$pre = $extra='';
$type = $item[type];
$name = $item[name];
if(!$open){
if($item[important] > 0)
$class= ' class="level'.$item[important].'"';
echo sprintf('
',$class);
}
if($item[intro])
echo __($item[intro],'awp').'
';
if($type){
if($type != 'select' && $type != 'textarea'){
switch($type){
case 'text':
$value=$awpall[$name];
break;
case 'checkbox';
$value='1';
$extra = $aWP[$type][$name];
$pre = '';
break;
case 'radio';
$value=$item[value];
$extra = $aWP[$type][$name][$value];
$pre = '';
$radios[$name]++;
break;
default:
$value=$awpall[$name];
}
$size = ($item[size]) ? ' size="'.$item[size].'"' : ' ';
$input = sprintf('',$type,$value,$name,$extra,$size);
}elseif($type == 'textarea'){
$value=$awpall[$name];
$input = '';
}else{
$input = '';
}
if(strpos($item[d],'%s') === false)
$item[d] = '%s «—'.$item[d];
$output = $pre.sprintf($item[d],$input).$post;
if($item[desc]){
$output .= ' [?]';
$inline .= ''.$item[desc].'';
}
}
echo $output;
if(!$item[open] && !$item[nobreak]){
echo $inline.'
'."\n\n";
$inline = $open = null;
}else{
$open = 1;
echo ' ';
if(!$item[nobreak])
echo '
'."\n";
if($item[action])
do_action($item[action]);
}
}
}
function admin_footer_js() {
?>
read() ) !== false ) {
if ( substr($file, 0, 1) == '.' )
continue;
if ( is_dir( $modules_root.'/'.$file ) ) {
$modules_subdir = dir( $modules_root.'/'.$file );
if ( $modules_subdir ) {
while (($subfile = $modules_subdir->read() ) !== false ) {
if ( substr($subfile, 0, 1) == '.' )
continue;
if ( substr($subfile, -4) == '.php' )
$modules_files[] = "$file/$subfile";
}
}
} else {
if ( substr($file, -4) == '.php' )
$modules_files[] = $file;
}
}
}
if ( !$modules_dir || !$modules_files )
return $awp_modules;
foreach ( $modules_files as $modules_file ) {
if ( !is_readable( "$modules_root/$modules_file" ) )
continue;
$modules_data = $this->get_modules_data( "$modules_root/$modules_file" );
if ( empty ( $modules_data['Name'] ) )
continue;
$awp_modules[plugin_basename( $modules_file )] = $modules_data;
}
uasort( $awp_modules, create_function( '$a, $b', 'return strnatcasecmp( $a["Name"], $b["Name"] );' ));
return $awp_modules;
}
function get_modules_data( $mod_file ) {
$mod_data = implode( '', file( $mod_file ));
preg_match( "@(Plugin|Module) Name:(.*)@i", $mod_data, $mod_name );
preg_match( "@(Plugin|Module) URI:(.*)@i", $mod_data, $mod_uri );
preg_match( "@Description:(.*)@i", $mod_data, $description );
preg_match( "@Author:(.*)@i", $mod_data, $author_name );
preg_match( "@Author URI:(.*)@i", $mod_data, $author_uri );
preg_match( "@Requires:(.*)@i", $mod_data, $requires );
if ( preg_match( "@AWP Release:(.*)@i", $mod_data, $awpversion ))
$awpversion = trim( $awpversion[1] );
else
$awpversion = '';
if ( preg_match( "@Version:(.*)@i", $mod_data, $version ))
$version = trim( $version[1] );
else
$version = '';
$description = wptexturize( trim( $description[1] ));
$name = $mod_name[2];
$name = trim( $name );
$mod = $name;
if ('' != $mod_uri[2] && '' != $name ) {
$mod = '
'.$mod.'';
}
if ('' == $author_uri[1] ) {
$author = trim( $author_name[1] );
} else {
$author = '
' . trim( $author_name[1] ) . '';
}
return array('Name' => $name, 'Title' => $mod, 'Description' => $description, 'Author' => $author, 'Version' => $version, 'AWP_Version' => $awpversion, 'Requires' => $requires);
}
function print_modules($c=1){
global $aWP,$awp_mods;
?>
class="widefat plugins">
|
|
|
|
$module_data) {
$style = ('class="alternate"' == $style|| 'class="alternate active"' == $style) ? '' : 'alternate';
if (!empty($awp_mods) && in_array($module_file, $awp_mods)) {
$toggle = "".__('Deactivate')."";
$module_data['Title'] = "{$module_data['Title']}";
$style .= $style == 'alternate' ? ' active' : 'active';
$status = "".__('Active')."";
} else {
$toggle = "".__('Activate')."";
$status = __('Inactive');
}
if($c){
$modules_allowedtags = array('a' => array('href' => array(),'title' => array()),'abbr' => array('title' => array()),'acronym' => array('title' => array()),'code' => array(),'em' => array(),'strong' => array());
}else{
$modules_allowedtags = array('abbr' => array('title' => array()),'acronym' => array('title' => array()),'code' => array(),'em' => array());
}
// Sanitize all displayed data
$module_data['Title'] = wp_kses($module_data['Title'], $modules_allowedtags);
$module_data['Version'] = wp_kses($module_data['Version'], $modules_allowedtags);
$module_data['AWP_Version'] = wp_kses($module_data['AWP_Version'], $modules_allowedtags);
$module_data['Description'] = wp_kses($module_data['Description'], $modules_allowedtags);
$module_data['Author'] = wp_kses($module_data['Author'], $modules_allowedtags);
if ( $style != '' )
$style = 'class="' . $style . '"';
echo "
| {$module_data['Title']} |
{$module_data['Description']} ".sprintf(__('By %s'), $module_data['Author']).". | ";
if($c){ echo "$status | ";}
if($c){ echo "$toggle | ";}
echo "
";
}
?>
get_modules();
$messages = get_option('awp_messages');
if(count($messages) > 1){
$aWP[messages] .= '
AWP Updates:
';
foreach($messages as $m){
if(is_int($m)){$time = $m; continue;}
$aWP[messages] .= '- '.$m.'
';
}
$aWP[messages] .= '
';
}
switch($_GET['act']){
case 'updated':
$aWP[admin_message] .= __('AWP options updated.','awp').'
';
break;
case 'activated':
$aWP[admin_message] .= __('Module Activated Successfully.','awp').'
';
break;
case 'deactivated':
$aWP[admin_message] .= __('Module Deactivated Successfully.','awp').'
';
break;
case 'failed':
$aWP[admin_message] .= __('The module you attempted to activate has an error in it and could not be activated.','awp').'
';
break;
case 'defaults':
$aWP[admin_message] .= __('AWP settings restored to defaults.','awp').'
';
break;
case 'restore':
$aWP[admin_message] .= __('Options successfully saved as test options. Please review them for consistancy before saving.','awp').'
';
break;
case 'test':
$aWP[admin_message] .= __('AWP test options updated. These settings will not go live until you save them.','awp').'
';
break;
case 'testdelete':
$aWP[admin_message] .= __('AWP test options deleted.','awp').'
';
break;
}
if (version_compare($wp_version, '2.1', '<')){
$aWP[admin_message] .= __('This version of Wordpress is outdated and not supported by this plugin. Please upgrade to the latest version from','awp').'
wordpress.org ';
}
$awp_test = get_option('awp_test');
if(is_array($awp_test)){
$awpall = $awp_test;
$aWP['is_test']= true;
$aWP[admin_message] .= __('You are using the test options currently. You must save them as live options or delete them to see the current live options.','awp').__('To view these settings append ?awp=test to any URL in your blog or click the follwing link to view your homepage>','awp').'
'.get_settings('siteurl').'$texts, 'radios'=>$radios, 'selects'=>$selects, 'checkboxes' =>$checkboxes));
foreach($options['radios'] as $radio){
$aWP[radio][$radio[0]][$awpall[$radio[0]]] = 'checked="checked"';
if(!$awpall[$radio[0]])
$aWP[radio][$radio[0]][$radio[1]] = 'checked="checked"';
}
foreach($options['texts'] as $name){
$awpall[$name]= stripslashes(htmlspecialchars($awpall[$name],ENT_QUOTES));
}
foreach($options['checkboxes'] as $name){
if(!empty($awpall[$name]))
$aWP[checkbox][$name]= 'checked="checked"';
}
foreach($options['selects'] as $select){
if(!$awpall[$select]){
$awpall[$select] = 'Disabled';
}
$aWP[select][$select] = ($awpall[$select] == 'Disabled') ? 'Enabled' : 'Disabled';
}
}
}
function admin_panel_overall(){
ob_start();
?>