1
0
mirror of https://github.com/e107inc/e107.git synced 2025-01-17 12:48:24 +01:00

Merged upstream changes.

This commit is contained in:
Lóna Lore 2017-01-15 23:10:46 +01:00
commit 8b7631995e
83 changed files with 1606 additions and 796 deletions

View File

@ -823,6 +823,7 @@ if (!function_exists('checkvalidtheme'))
{
// arg1 = theme to check
//global $ADMIN_DIRECTORY, $tp, $e107;
global $sql;
$e107 = e107::getInstance();
$tp = e107::getParser();
$ADMIN_DIRECTORY = $e107->getFolder('admin');
@ -846,15 +847,27 @@ if (!function_exists('checkvalidtheme'))
define('PREVIEWTHEMENAME', $themeArray[$id]);
define('THEME', e_THEME.$themeArray[$id].'/');
define('THEME_ABS', e_THEME_ABS.$themeArray[$id].'/');
$legacy = (file_exists( e_THEME_ABS.$themeArray[$id].'/theme.xml') === false);
define('THEME_LEGACY',$legacy);
return;
}
$sql->db_Mark_time("Theme Check");
if (@fopen(e_THEME.$theme_check.'/theme.php', 'r'))
// if (is_readable(e_THEME.$theme_check.'/theme.php'))
{
define('THEME', e_THEME.$theme_check.'/');
define('THEME_ABS', e_THEME_ABS.$theme_check.'/');
$legacy = (file_exists(e_THEME.$theme_check.'/theme.xml') === false);
define('THEME_LEGACY',$legacy);
$e107->site_theme = $theme_check;
}
else
@ -889,6 +902,8 @@ if (!function_exists('checkvalidtheme'))
}
}
$sql->db_Mark_time("Theme Check End");
$themes_dir = $e107->getFolder('themes');
$e107->http_theme_dir = "{$e107->server_path}{$themes_dir}{$e107->site_theme}/";
}
@ -916,6 +931,8 @@ if (!class_exists('e107table', false))
private $adminThemeClass = '';
public $frontend = null;
private $uniqueId = null;
private $content = array();
private $contentTypes = array('header','footer','text','title','image', 'list');
function __construct()
@ -944,6 +961,23 @@ if (!class_exists('e107table', false))
}
/**
* Set Advanced Menu content (beyond just $caption and $text)
* @param string $type header|footer|text|title|image
* @param string $val
*/
public function setContent($type, $val)
{
if(!in_array($type,$this->contentTypes))
{
return false;
}
$this->content[$type] = (string) $val;
}
/**
* @param $caption string caption text
* @param $text string
@ -1017,17 +1051,27 @@ if (!class_exists('e107table', false))
{
$thm = new $this->themeClass();
}
$options = $this->content;
$options['uniqueId'] = $this->uniqueId;
$options['menuArea'] = $this->eMenuArea;
$options['menuCount'] = $this->eMenuCount;
$options['menuTotal'] = varset($this->eMenuTotal[$this->eMenuArea]);
$options['setStyle'] = $this->eSetStyle;
if(is_object(vartrue($thm)))
{
$thm->tablestyle($caption, $text, $mode, array('uniqueId'=>$this->uniqueId, 'menuArea'=>$this->eMenuArea, 'menuCount'=>$this->eMenuCount, 'menuTotal'=>varset($this->eMenuTotal[$this->eMenuArea]), 'setStyle'=>$this->eSetStyle));
$thm->tablestyle($caption, $text, $mode, $options);
}
else
{
tablestyle($caption, $text, $mode, array('uniqueId'=>$this->uniqueId, 'menuArea'=>$this->eMenuArea,'menuCount'=>$this->eMenuCount,'menuTotal'=>varset($this->eMenuTotal[$this->eMenuArea]),'setStyle'=>$this->eSetStyle));
tablestyle($caption, $text, $mode, $options);
}
$this->uniqueId = null;
$this->content = array();
}
@ -1869,6 +1913,7 @@ function init_session()
define('USERIMAGE', $user->get('user_image'));
define('USERPHOTO', $user->get('user_sess'));
define('USERJOINED', $user->get('user_join'));
define('USERCURRENTVISIT', $user->get('user_currentvisit'));
define('USERVISITS', $user->get('user_visits'));
define('USERSIGNATURE', $user->get('user_signature'));

View File

@ -303,7 +303,7 @@ class admin_start
$lans = array('x'=>$link, 'y'=>LAN_PLUGIN);
$message = $tp->lanVars(LAN_NEWER_VERSION_OF_X, $lans);
$message .= " <a href='".$dl."' class='e-modal' data-modal-caption=\"".$caption."\" title=\"".LAN_DOWNLOAD."\">".$tp->toGlyph('fa-cloud-download')."</a>";
$message .= " <a href='".$dl."' class='e-modal' data-modal-caption=\"".$caption."\" title=\"".LAN_DOWNLOAD."\">".$tp->toGlyph('fa-arrow-circle-o-down')."</a>";
e107::getMessage()->addInfo($message);
@ -350,7 +350,7 @@ class admin_start
$caption = LAN_DOWNLOAD.": ".$versions[$folder]['name']." ".$versions[$folder]['version'];
$message = $tp->lanVars(LAN_NEWER_VERSION_OF_X, $lans);
$message .= " <a href='".$dl."' class='e-modal' data-modal-caption=\"".$caption."\" title=\"".LAN_DOWNLOAD."\">".$tp->toGlyph('fa-cloud-download')."</a>";
$message .= " <a href='".$dl."' class='e-modal' data-modal-caption=\"".$caption."\" title=\"".LAN_DOWNLOAD."\">".$tp->toGlyph('fa-arrow-circle-o-down')."</a>";
e107::getMessage()->addInfo($message);
@ -507,7 +507,7 @@ class admin_start
$frm = e107::getForm();
$text = $frm->open('deprecatedFiles', 'post');
$text .= "The following old files can be safely deleted from your system: ";
$text .= ADLAN_186;
$text .= "<ul><li>".implode("</li><li>", $found)."</li></ul>";
$text .= $frm->button('delete-deprecated',LAN_DELETE,'delete');
@ -568,7 +568,7 @@ class admin_start
if (count($this->allowed_types) == 0)
{
$this->allowed_types = array('zip' => 1, 'gz' => 1, 'jpg' => 1, 'png' => 1, 'gif' => 1, 'pdf'=>1);
$mes->addInfo("Setting default filetypes: ".implode(', ',array_keys($this->allowed_types)));
$mes->addDebug("Setting default filetypes: ".implode(', ',array_keys($this->allowed_types)));
}
}
@ -759,4 +759,4 @@ function log_request()
require_once("footer.php");
?>
?>

View File

@ -46,7 +46,7 @@ class comments_admin extends e_admin_dispatcher
'main/edit' => 'main/list'
);
protected $menuTitle = 'Comments';
protected $menuTitle = LAN_COMMENTMAN;
}
class comments_admin_ui extends e_admin_ui
@ -73,15 +73,15 @@ class comments_admin_ui extends e_admin_ui
'comment_type' => array('title'=> LAN_TYPE, 'type' => 'method', 'width' => '10%', 'filter'=>TRUE),
'comment_item_id' => array('title'=> "item id", 'type' => 'text', 'readonly'=>2, 'data'=>'int', 'width' => '5%'),
'comment_subject' => array('title'=> "subject", 'type' => 'text', 'width' => 'auto', 'thclass' => 'left first', 'writeParms'=>array('size'=>'xxlarge')), // Display name
'comment_comment' => array('title'=> "comment", 'type' => 'textarea', 'width' => '30%', 'readParms' => 'expand=...&truncate=50&bb=1', 'writeParms'=>'size=xxlarge'), // Display name
'comment_item_id' => array('title'=> LAN_ITEM." ".LAN_ID, 'type' => 'text', 'readonly'=>2, 'data'=>'int', 'width' => '5%'),
'comment_subject' => array('title'=> LAN_SUBJECT, 'type' => 'text', 'width' => 'auto', 'thclass' => 'left first', 'writeParms'=>array('size'=>'xxlarge')), // Display name
'comment_comment' => array('title'=> LAN_COMMENTS, 'type' => 'textarea', 'width' => '30%', 'readParms' => 'expand=...&truncate=50&bb=1', 'writeParms'=>'size=xxlarge'), // Display name
'comment_author_id' => array('title'=> LAN_AUTHOR, 'type' => 'user', 'data' => 'int', 'width' => 'auto', 'writeParms' => 'nameField=comment_author_name'), // User id
'comment_author_name' => array('title'=> "authorName", 'type' => 'text', 'width' => 'auto', 'readParms'=>'idField=comment_author_id&link=1', 'noedit' => true, 'forceSave' => true), // User name
'u.user_name' => array('title'=> "System user", 'type' => 'user', 'width' => 'auto', 'readParms'=>'idField=comment_author_id&link=1', 'noedit' => true), // User name
'comment_author_name' => array('title'=> LAN_USER, 'type' => 'text', 'width' => 'auto', 'readParms'=>'idField=comment_author_id&link=1', 'noedit' => true, 'forceSave' => true), // User name
'u.user_name' => array('title'=> LAN_SYSTEM_USER, 'type' => 'user', 'width' => 'auto', 'readParms'=>'idField=comment_author_id&link=1', 'noedit' => true), // User name
'comment_datestamp' => array('title'=> LAN_DATESTAMP, 'type' => 'datestamp', 'width' => 'auto'), // User date
'comment_ip' => array('title'=> LAN_IP, 'type' => 'ip', 'width' => '10%', 'thclass' => 'center' ), // Real name (no real vetting)
'comment_lock' => array('title'=> "Lock", 'type' => 'boolean', 'data'=> 'int', 'thclass' => 'center', 'class'=>'center', 'filter' => true, 'batch' => true, 'width' => 'auto'),
'comment_lock' => array('title'=> LAN_LOCK, 'type' => 'boolean', 'data'=> 'int', 'thclass' => 'center', 'class'=>'center', 'filter' => true, 'batch' => true, 'width' => 'auto'),
'options' => array('title'=> LAN_OPTIONS, 'type' => null, 'forced'=>TRUE, 'width' => '10%', 'thclass' => 'center last', 'class' => 'center')
);
//required (but should be optional) - default column user prefs
@ -91,7 +91,7 @@ class comments_admin_ui extends e_admin_ui
// optional, if $pluginName == 'core', core prefs will be used, else e107::getPluginConfig($pluginName);
protected $prefs = array(
'comments_engine' => array('title'=>"Engine", 'type'=>'dropdown', 'writeParms'=>array()),
'comments_engine' => array('title'=>LAN_ENGINE, 'type'=>'dropdown', 'writeParms'=>array()),
'comments_disabled' => array('title'=>PRFLAN_161, 'type'=>'boolean', 'writeParms'=>'inverse=1'), // Same as 'writeParms'=>'reverse=1&enabled=LAN_DISABLED&disabled=LAN_ENABLED'
'anon_post' => array('title'=>PRFLAN_32, 'type'=>'boolean'),
'comments_icon' => array('title'=>PRFLAN_89, 'type'=>'boolean'),
@ -108,7 +108,7 @@ class comments_admin_ui extends e_admin_ui
if($engine != 'e107') // Hide all other prefs.
{
$this->prefs = array(
'comments_engine' => array('title'=>"Engine", 'type'=>'dropdown', 'writeParms'=>array()),
'comments_engine' => array('title'=>LAN_ENGINE, 'type'=>'dropdown', 'writeParms'=>array()),
'comments_disabled' => array('title'=>PRFLAN_161, 'type'=>'boolean', 'writeParms'=>'inverse=1'),
);
@ -312,4 +312,4 @@ else
?>
?>

View File

@ -134,7 +134,7 @@ class page_admin_form_ui extends e_admin_form_ui
// BOOKS & CHAPTERS
class page_chapters_ui extends e_admin_ui
{
protected $pluginTitle = 'Page';
protected $pluginTitle = CUSLAN_59;
protected $pluginName = 'core';
protected $table = "page_chapters";
protected $pid = "chapter_id";
@ -808,4 +808,4 @@ require_once(e_ADMIN.'footer.php');
?>
?>

View File

@ -69,7 +69,7 @@ class cron_admin_ui extends e_admin_ui
'cron_tab' => array('title'=> LAN_CRON_3, 'type' => 'method', 'width' => 'auto'), // Display name
'cron_lastrun' => array('title'=> LAN_CRON_4, 'type' => 'datestamp', 'data' => 'int', 'width' => 'auto', 'readonly' => 2),
'cron_active' => array('title'=> LAN_ACTIVE, 'type' => 'boolean', 'data'=> 'int', 'thclass' => 'center', 'class'=>'center', 'filter' => true, 'batch' => true, 'width' => 'auto'),
'options' => array('title'=> LAN_OPTIONS, 'type' => 'method', 'data'=> null, 'noedit'=>TRUE, 'forced'=>TRUE, 'width' => '10%', 'thclass' => 'center last', 'class' => 'center')
'options' => array('title'=> LAN_OPTIONS, 'type' => 'method', 'data'=> null, 'noedit'=>TRUE, 'forced'=>TRUE, 'width' => '10%', 'thclass' => 'center last', 'class' => 'right')
);
@ -566,13 +566,22 @@ class cron_admin_form_ui extends e_admin_form_ui
// Override the default Options field.
function options($parms, $value, $id, $attributes)
{
$att = $attributes;
if($attributes['mode'] == 'read')
{
$text = "<div class='btn-group'>";
$text .= $this->renderValue('options',$value,'',$id);
$func = $this->getController()->getFieldVar('cron_function');
//
if(substr($func,0,7) === '_system')
{
$att['readParms'] = array('disabled'=>'disabled');
}
$text = "<div class='btn-group pull-right'>";
$text .= $this->renderValue('options',$value,$att,$id);
$text .= $this->submit_image('cron_execute['.$id.']', 1, 'execute', LAN_RUN);
$text .= "</div>";
return $text;
}
}

View File

@ -2,14 +2,12 @@
/*
* e107 website system
*
* Copyright (C) 2008-2012 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* Site navigation administration
*
* $URL$
* $Id$
*/
/**
@ -77,13 +75,13 @@ class links_admin_ui extends e_admin_ui
public $sublink_data = null;
protected $fields = array(
'checkboxes' => array('title'=> '', 'width' => '3%','forced' => true, 'thclass' => 'center first','class' => 'center first'),
'link_button' => array('title'=> LAN_ICON, 'type'=>'icon', 'width'=>'5%', 'thclass' => 'center', 'class'=>'center', 'writeParms'=>'glyphs=1'),
'link_id' => array('title'=> LAN_ID, 'type'=>'method','readParms'=>'','noedit'=>TRUE),
'link_name' => array('title'=> LCLAN_15, 'width'=>'auto','type'=>'text', 'inline'=>true, 'required' =>false, 'validate' => false), // not required as only an icon may be used.
'link_category' => array('title'=> LAN_TEMPLATE, 'type' => 'dropdown', 'inline'=>true, 'batch'=>true, 'filter'=>true, 'width' => 'auto'),
'link_parent' => array('title'=> LCLAN_104, 'type' => 'method', 'data'=>'int', 'width' => 'auto', 'batch'=>true, 'filter'=>true, 'thclass' => 'left first'),
'checkboxes' => array('title'=> '', 'width' => '3%', 'forced' => true, 'thclass'=>'center first', 'class'=>'center first'),
'link_button' => array('title'=> LAN_ICON, 'type'=>'icon', 'width'=>'5%', 'thclass'=>'center', 'class'=>'center', 'writeParms'=>'glyphs=1'),
'link_id' => array('title'=> LAN_ID, 'type'=>'method', 'readParms'=>'', 'noedit'=>TRUE),
'link_name' => array('title'=> LAN_NAME, 'type'=>'text', 'inline'=>true, 'required'=>false, 'validate'=>false, 'width'=>'auto'), // not required as only an icon may be used.
'link_category' => array('title'=> LAN_TEMPLATE, 'type'=>'dropdown', 'inline'=>true, 'batch'=>true, 'filter'=>true, 'width'=>'auto'),
'link_parent' => array('title'=> LAN_PARENT, 'type' => 'method', 'data'=>'int', 'width'=>'auto', 'batch'=>true, 'filter'=>true, 'thclass'=>'left first'),
'link_url' => array('title'=> LAN_URL, 'width'=>'auto', 'type'=>'method', 'inline'=>true, 'required'=>true,'validate' => true, 'writeParms'=>'size=xxlarge'),
'link_sefurl' => array('title'=> LAN_SEFURL, 'type' => 'method', 'inline'=>false, 'width' => 'auto', 'help'=>LCLAN_107),
'link_class' => array('title'=> LAN_USERCLASS, 'type' => 'userclass','inline'=>true, 'writeParms' => 'classlist=public,guest,nobody,member,classes,admin,main', 'batch'=>true, 'filter'=>true, 'width' => 'auto'),

View File

@ -16,15 +16,18 @@ if(isset($_GET['configure']))
define("USER_AREA", true);
//Switch to desired layout
define('THEME_LAYOUT', $_GET['configure']);
define('e_DEBUG', false);
define('E107_DEBUG_LEVEL', 0);
if(function_exists('xdebug_disable'))
{
xdebug_disable();
}
@ini_set('display_errors', 0);
error_reporting(0);
if(empty($_GET['debug']))
{
define('e_DEBUG', false);
define('E107_DEBUG_LEVEL', 0);
if(function_exists('xdebug_disable'))
{
xdebug_disable();
}
@ini_set('display_errors', 0);
error_reporting(0);
}
define('e_MENUMANAGER_ACTIVE', true);
}
@ -39,9 +42,9 @@ require_once("../class2.php");
if(e_MENUMANAGER_ACTIVE === false )
{
if(e_DEBUG_MENUMANAGER === true)
if(!deftrue("e_DEBUG_MENUMANAGER"))
{
e107::css('inline', '
e107::getJs()->inlineCSS('
body { overflow:hidden }
@ -73,7 +76,7 @@ if(e_MENUMANAGER_ACTIVE === false )
}
e107::css('inline',"
e107::getJs()->inlineCSS("
.menu-manager-items { padding-right:15px}
.menu-manager-items div.item { padding:5px; margin:5px 0; border:1px solid rgba(255,255,255,0.3); border-radius:3px; cursor: move }
@ -108,7 +111,7 @@ if(e_MENUMANAGER_ACTIVE === false )
@media all and (min-height: 1000px) {
.menu-selector { height:550px }
.menu-selector { height:500px }
}
@media all and (max-height: 800px) {
@ -210,9 +213,9 @@ $JSMODAL = <<<TEMPL
TEMPL;
e107::js('inline', $JSMODAL );
e107::getJs()->footerInline( $JSMODAL );
e107::js('inline', "
e107::getJs()->footerInline("
$(function() {
// Visibility/Instance Options etc.
@ -303,7 +306,7 @@ TEMPL;
");
e107::css('inline'," .column { width:100%; padding-bottom: 100px; }
e107::getJs()->inlineCSS(" .column { width:100%; padding-bottom: 100px; }
#core-menumanager-main th {color: silver; font-family: 'Helvetica Neue',Helvetica,Arial,sans-serif; font-size:14px; font-weight: bold; line-height:24px; background-color:#2F2F2F }
@ -523,7 +526,7 @@ TEMPL;
// e107::js('footer',"http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/jquery-ui.min.js");
// e107::css('url', "http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.1/themes/base/jquery-ui.css");
e107::js('footer-inline','
e107::getJs()->footerInline('
$(function()
{
// post the form back to this script.
@ -626,7 +629,7 @@ TEMPL;
else
{
/*
e107::js('footer-inline', "
@ -667,7 +670,7 @@ else
");
*/
@ -701,7 +704,7 @@ if($_SERVER['E_DEV_MENU'] == 'true')
function e_help()
{
if(e_DEBUG_MENUMANAGER !== true)
if(deftrue("e_DEBUG_MENUMANAGER"))
{
return null;
}
@ -709,19 +712,7 @@ if($_SERVER['E_DEV_MENU'] == 'true')
return e_menu_layout::menuSelector();
/*
$text = '
<ul class="nav nav-tabs">
<li class="active"><a href="#plugins" data-toggle="tab">'.ADLAN_CL_7.'</a></li>
@ -784,7 +775,7 @@ if($_SERVER['E_DEV_MENU'] == 'true')
</div>";
return array('caption'=>MENLAN_57,'text'=>$text);
return array('caption'=>MENLAN_57,'text'=>$text);*/
}
//}

View File

@ -94,12 +94,12 @@ $text = "
</tr>
<tr>
<td>".LAN_COPYRIGHT."</td>
<td><input class='tbox input-text' size='70' type='text' name='meta_copyright' value=\"".varset($meta_copyright[e_LANGUAGE])."\" /></td>
<td><input class='tbox input-text' size='70' type='text' name='meta_copyright' value=\"".$meta_copyright[e_LANGUAGE]."\" /></td>
</tr>
<tr>
<td>".LAN_AUTHOR."</td>
<td><input class='tbox input-text' size='70' type='text' name='meta_author' value=\"".varset($meta_author[e_LANGUAGE])."\" /></td>
<td><input class='tbox input-text' size='70' type='text' name='meta_author' value=\"".$meta_author[e_LANGUAGE]."\" /></td>
</tr>
<tr>

View File

@ -857,6 +857,7 @@ class news_admin_ui extends e_admin_ui
$temp['news_default_template'] = preg_replace('#[^\w\pL\-]#u', '', $_POST['news_default_template']);
$temp['news_list_limit'] = intval($_POST['news_list_limit']);
$temp['news_list_templates'] = e107::getParser()->toDB($_POST['news_list_templates']);
$temp['news_cache_timeout'] = intval($_POST['news_cache_timeout']);
e107::getConfig()->updatePref($temp);
@ -1141,7 +1142,20 @@ class news_admin_ui extends e_admin_ui
".$frm->textarea('news_ping_services', $pingVal, 4, 100, $pingOpt)."
<div class='field-help'>".LAN_NEWS_89."<br />".LAN_NEWS_90."</div>
</td>
</tr>
</tr>";
// TODO LAN
$tab1 .= "
<tr>
<td>News Cache Timeout </td>
<td>
".$frm->number('news_cache_timeout',varset($pref['news_cache_timeout'],0), 6)."
<div class='field-help'>Time in minutes. Applies only when system cache is enabled.</div>
</td>
</tr>";
$tab1 .= "
<tr>
<td>".NWSLAN_86."</td>

View File

@ -60,10 +60,12 @@ $security_risks = array(
$mes->addWarning("<b>".$risk."</b>: ".$diz);
}
}
$sessionSaveMethod = ini_get('session.save_handler');
if($sessionSavePath = ini_get('session.save_path'))
{
if(!is_writable($sessionSavePath))
if(!is_writable($sessionSavePath) && $sessionSaveMethod === 'files')
{
$mes->addError("<b>session.save_path</b> is not writable! That can cause major issues with your site.");
}

View File

@ -1827,10 +1827,10 @@ $text .= '<tr>';
$text .= '<th>' . LAN_LIBRARY_MANAGER_13 . '</th>';
$text .= '<th class="text-center">' . LAN_LIBRARY_MANAGER_21 . '</th>';
$text .= '<th>' . LAN_LIBRARY_MANAGER_29 . '</th>';
$text .= '<th class="text-center">' . LAN_LIBRARY_MANAGER_14 . '</th>';
$text .= '<th class="text-center">' . LAN_LIBRARY_MANAGER_18 . '</th>';
$text .= '<th>' . LAN_LIBRARY_MANAGER_19 . '</th>';
$text .= '<th></th>';
$text .= '<th class="text-center">' . LAN_VERSION . '</th>';
$text .= '<th class="text-center">' . LAN_STATUS . '</th>';
$text .= '<th>' . LAN_MESSAGE . '</th>';
$text .= '<th>' . LAN_MOREINFO . '</th>';
$text .= '</tr>';
$text .= '</thead>';
$text .= '<tbody>';
@ -1864,7 +1864,7 @@ foreach($libraries as $machineName => $library)
if(empty($libraries))
{
$text .= '<tr>';
$text .= '<td colspan="7">' . LAN_LIBRARY_MANAGER_26 . '</td>';
$text .= '<td colspan="6">' . LAN_NOT_FOUND . '</td>';
$text .= '</tr>';
}
@ -2049,7 +2049,7 @@ function libraryGetHomepage($details)
$href = $details['vendor_url'];
$title = $details['name'];
return '<a href="' . $href . '" title="' . $title . '" target="_blank">' . LAN_LIBRARY_MANAGER_15 . '</a>';
return '<a href="' . $href . '" title="' . $title . '" target="_blank">' . LAN_WEBSITE . '</a>';
}
/**
@ -2065,7 +2065,7 @@ function libraryGetDownload($details)
$href = $details['download_url'];
$title = $details['name'];
return '<a href="' . $href . '" title="' . $title . '" target="_blank">' . LAN_LIBRARY_MANAGER_16 . '</a>';
return '<a href="' . $href . '" title="' . $title . '" target="_blank">' . LAN_DOWNLOAD . '</a>';
}
/**
@ -2074,18 +2074,18 @@ function libraryGetDownload($details)
function libraryGetProvider($details)
{
$text = 'e107';
$provider = LAN_LIBRARY_MANAGER_24;
$provider = LAN_CORE;
if(varset($details['plugin'], false) == true)
{
$text = $details['plugin'];
$provider = LAN_LIBRARY_MANAGER_22;
$provider = LAN_PLUGIN;
}
if(varset($details['theme'], false) == true)
{
$text = $details['theme'];
$provider = LAN_LIBRARY_MANAGER_23;
$provider = LAN_THEME;
}
return '<span data-toggle="tooltip" data-placement="top" title="' . $text . '">' . $provider . '</span>';

View File

@ -36,10 +36,13 @@ if (isset($_POST['update_settings']))
$userData['data']['user_password'] = $sql->escape($userMethods->HashPassword($_POST['a_password'], $currentUser['user_loginname']), FALSE);
unset($_POST['a_password']);
unset($_POST['a_password2']);
if (vartrue($pref['allowEmailLogin']))
{
$new_pass = e107::getParser()->filter($_POST['a_password']);
$user_prefs = e107::getArrayStorage()->unserialize($currentUser['user_prefs']);
$user_prefs['email_password'] = $userMethods->HashPassword($new_pass, $email);
$user_prefs['email_password'] = $userMethods->HashPassword($new_pass, USEREMAIL);
$userData['data']['user_prefs'] = e107::getArrayStorage()->serialize($user_prefs);
}

View File

@ -2,7 +2,7 @@
/*
* e107 website system
*
* Copyright (C) 2008-2015 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
@ -93,13 +93,13 @@ include_lan(e_LANGUAGEDIR.e_LANGUAGE.'/admin/lan_'.e_PAGE);
protected $fields = array(
'checkboxes' => array ( 'title' => '', 'type' => null, 'data' => null, 'width' => '5%', 'thclass' => 'center', 'forced' => '1', 'class' => 'center', 'toggle' => 'e-multiselect', ),
'userclass_id' => array('title'=> LAN_ID, 'type' =>'hidden', 'data'=>'int', 'width' => '5%', 'thclass' => 'left'),
'userclass_icon' => array('title'=> UCSLAN_68, 'type' => 'icon', 'tab'=>0, 'data'=>'str', 'width' => '5%', 'thclass' => 'left', 'class' => 'center'),
'userclass_name' => array('title'=> UCSLAN_12, 'type' => 'text', 'tab'=>0,'data'=>'str', 'inline'=>true, 'width' => 'auto', 'thclass' => 'left'),
'userclass_description' => array('title'=> UCSLAN_13, 'type' => 'text', 'tab'=>0,'data'=>'str', 'inline'=>true,'width' => 'auto', 'thclass' => 'left', 'writeParms'=>array('size'=>'xxlarge')),
'userclass_type' => array('title'=> UCSLAN_79, 'type' => 'dropdown', 'tab'=>0,'data'=>'int', 'width' => '10%', 'thclass' => 'left', 'class'=>'left' ),
'userclass_editclass' => array('title'=> UCSLAN_24, 'type' => 'userclass', 'tab'=>0,'data'=>'int', 'width' => 'auto', 'thclass' => 'left', 'writeParms'=>array('classlist'=>'nobody,public,main,admin,classes,matchclass,member, no-excludes')),
'userclass_visibility' => array('title'=> UCSLAN_34, 'type' => 'userclass', 'tab'=>0,'data'=>'int', 'width' => 'auto', 'thclass' => 'left'),
'userclass_parent' => array('title'=> UCSLAN_35, 'type' => 'userclass', 'tab'=>0,'data'=>'int', 'width' => 'auto', 'thclass' => 'left', 'writeParms'=>array('classlist'=>'main,admin,nobody,public,classes,matchclass,member, no-excludes')),
'userclass_icon' => array('title'=> LAN_ICON, 'type' => 'icon', 'tab'=>0, 'data'=>'str', 'width' => '5%', 'thclass' => 'left', 'class' => 'center'),
'userclass_name' => array('title'=> LAN_NAME, 'type' => 'text', 'tab'=>0,'data'=>'str', 'inline'=>true, 'width' => 'auto', 'thclass' => 'left'),
'userclass_description' => array('title'=> LAN_DESCRIPTION, 'type' => 'text', 'tab'=>0,'data'=>'str', 'inline'=>true,'width' => 'auto', 'thclass' => 'left', 'writeParms'=>array('size'=>'xxlarge')),
'userclass_type' => array('title'=> LAN_TYPE, 'type' => 'dropdown', 'tab'=>0,'data'=>'int', 'width' => '10%', 'thclass' => 'left', 'class'=>'left' ),
'userclass_editclass' => array('title'=> LAN_MANAGER, 'type' => 'userclass', 'tab'=>0,'data'=>'int', 'width' => 'auto', 'thclass' => 'left', 'writeParms'=>array('classlist'=>'nobody,public,main,admin,classes,matchclass,member, no-excludes')),
'userclass_visibility' => array('title'=> LAN_VISIBILITY, 'type' => 'userclass', 'tab'=>0,'data'=>'int', 'width' => 'auto', 'thclass' => 'left'),
'userclass_parent' => array('title'=> LAN_PARENT, 'type' => 'userclass', 'tab'=>0,'data'=>'int', 'width' => 'auto', 'thclass' => 'left', 'writeParms'=>array('classlist'=>'main,admin,nobody,public,classes,matchclass,member, no-excludes')),
'userclass_perms' => array('title'=> "Perms", 'type' => 'hidden', 'tab'=>0,'data'=>'str', 'width' => 'auto', 'thclass' => 'left'),
'options' => array('title'=> LAN_OPTIONS, 'type' => 'method', 'width' => '10%', 'thclass' => 'center last', 'forced'=>TRUE, 'class'=>'right', 'readParms' => array('deleteClass' => e_UC_NOBODY))
@ -212,7 +212,7 @@ include_lan(e_LANGUAGEDIR.e_LANGUAGE.'/admin/lan_'.e_PAGE);
$frm = e107::getForm();
$mes->addWarning(UCSLAN_52."<br />".UCSLAN_53);
$mes->addWarning(LAN_OPTIONS."<br /><br />".UCSLAN_53);
$text = "<h4>".LAN_PREFS."</h4>
<form method='post' action='".e_SELF."?mode=main&action=options' id='treesetForm'>
@ -376,7 +376,7 @@ include_lan(e_LANGUAGEDIR.e_LANGUAGE.'/admin/lan_'.e_PAGE);
}
else
{
$text .= UCSLAN_44;
$text .= LAN_NONE;
}
@ -391,7 +391,7 @@ include_lan(e_LANGUAGEDIR.e_LANGUAGE.'/admin/lan_'.e_PAGE);
<td>".$frm->select('init_class_stage', $initClassStages, $sel_stage)."<span class='field-help'>".UCSLAN_46."</span>
</td></tr></table>
<div class='buttons-bar'>". $frm->admin_button('set_initial_classes','no-value','create',LAN_UPDATE)."</div>";
<div class='buttons-bar center'>". $frm->admin_button('set_initial_classes','no-value','create',LAN_UPDATE)."</div>";
}
else
{
@ -680,7 +680,7 @@ if (isset($_POST['set_initial_classes']))
}
else
{
$message = UCSLAN_42;
$message = LAN_NOCHANGE_NOTSAVED;
}
}
*/
@ -718,7 +718,7 @@ if (isset($_POST['etrigger_delete']) && !empty($_POST['etrigger_delete']))
// unset($pref['frontpage'][$class_id]); // (Should work with both 0.7 and 0.8 front page methods)
// save_prefs();
}
$emessage->add(UCSLAN_3, E_MESSAGE_SUCCESS);
$emessage->add(LAN_DELETED, E_MESSAGE_SUCCESS);
}
else
{
@ -794,8 +794,8 @@ if (isset($_POST['createclass'])) // Add or edit
$e_userclass->save_edited_class($class_record);
userclass2_adminlog('03',"ID:{$class_record['userclass_id']} (".$class_record['userclass_name'].")");
$do_tree = TRUE;
//$message .= UCSLAN_5;
$emessage->add(UCSLAN_5, E_MESSAGE_SUCCESS);
//$message .= LAN_UPDATED.': '.LAN_USERCLASS;
$emessage->add(LAN_UPDATED.': '.LAN_USERCLASS, E_MESSAGE_SUCCESS);
}
else
{ // Creating new class
@ -815,8 +815,8 @@ if (isset($_POST['createclass'])) // Add or edit
$e_userclass->add_new_class($class_record);
userclass2_adminlog("01","ID:{$class_record['userclass_id']} (".$class_record['userclass_name'].")");
$do_tree = TRUE;
//$message .= UCSLAN_6;
$emessage->add(UCSLAN_6, E_MESSAGE_SUCCESS);
//$message .= LAN_UPDATED.': '.LAN_USERCLASS;
$emessage->add(LAN_UPDATED.': '.LAN_USERCLASS, E_MESSAGE_SUCCESS);
}
}
else
@ -940,7 +940,7 @@ switch ($action)
$text .= "
<tr>
<td>".UCSLAN_12."</td>
<td>".LAN_NAME."</td>
<td>";
if ($fullEdit)
{
@ -954,7 +954,7 @@ switch ($action)
</tr>
<tr>
<td>".UCSLAN_13."</td>
<td>".LAN_DESCRIPTION."</td>
<td><input class='tbox' type='text' size='60' maxlength='85' name='userclass_description' value='{$userclass_description}' />
<div class='field-help'>".UCSLAN_31."</div></td>
</tr>";
@ -962,7 +962,7 @@ switch ($action)
// Userclass icon
$text .= "
<tr>
<td>".UCSLAN_68."</td>
<td>".LAN_ICON."</td>
<td>".$frm->iconpicker('userclass_icon', $userclass_icon, LAN_SELECT)."
<div class='field-help'>".UCSLAN_69."</div></td>
</tr>
@ -970,7 +970,7 @@ switch ($action)
$text .= "
<tr>
<td>".UCSLAN_79."</td>
<td>".LAN_TYPE."</td>
<td>";
$classTypes = array(UC_TYPE_STD => UCSLAN_80, UC_TYPE_GROUP => UCSLAN_81);
if ($fullEdit)
@ -992,7 +992,7 @@ switch ($action)
// Who can manage class
$text .= "
<tr id='userclass_type_standard' ".(UC_TYPE_GROUP == $userclass_type ? " style='display:none'" : "").">
<td>".UCSLAN_24."</td>
<td>".LAN_MANAGER."</td>
<td>";
$text .= "<select name='userclass_editclass' class='tbox'>".$e_userclass->vetted_tree('userclass_editclass',array($e_userclass,'select'), $userclass_editclass,'nobody,public,main,admin,classes,matchclass,member, no-excludes').'</select>';
$text .= "<div class='field-help'>".UCSLAN_32."</div></td>
@ -1012,7 +1012,7 @@ switch ($action)
$text .= "
<tr>
<td>".UCSLAN_34."</td>
<td>".LAN_VISIBILITY."</td>
<td>";
$text .= "<select name='userclass_visibility' class='tbox'>".$e_userclass->vetted_tree('userclass_visibility',array($e_userclass,'select'), $userclass_visibility,'main,admin,classes,matchclass,public,member,nobody').'</select>';
$text .= "<div class='field-help'>".UCSLAN_33."</div></td>
@ -1021,7 +1021,7 @@ switch ($action)
$text .= "
<tr>
<td>".UCSLAN_35."</td>
<td>".LAN_PARENT."</td>
<td>";
$text .= "<select name='userclass_parent' class='tbox'>".$e_userclass->vetted_tree('userclass_parent',array($e_userclass,'select'), $userclass_parent,'main,admin,nobody,public,classes,matchclass,member, no-excludes').'</select>';
// .r_userclass("userclass_parent", $userclass_parent, "off", "admin,classes,matchclass,public,member").
@ -1035,9 +1035,9 @@ switch ($action)
if($params == 'edit')
{
$text .= $frm->admin_button('createclass', UCSLAN_14, 'create');
$text .= $frm->admin_button('createclass', LAN_UPDATE, 'create');
$text .= $frm->admin_button('updatecancel', LAN_CANCEL, 'cancel');
// $text .= "<input class='btn' type='submit' id='createclass' name='createclass' value='".UCSLAN_14."' />";
// $text .= "<input class='btn' type='submit' id='createclass' name='createclass' value='".LAN_UPDATE."' />";
// $text .= "&nbsp;&nbsp;<input class='btn' type='submit' id='updatecancel' name='updatecancel' value='".LAN_CANCEL."' />";
$text .= "
<input type='hidden' name='userclass_id' value='{$userclass_id}' />
@ -1045,9 +1045,9 @@ if($params == 'edit')
}
else
{
$text .= $frm->admin_button('createclass', UCSLAN_15, 'create');
$text .= $frm->admin_button('createclass', LAN_CREATE, 'create');
$text .= $frm->admin_button('updatecancel', LAN_CANCEL, 'cancel');
// $text .= "<input class='btn' type='submit' id='createclass' name='createclass' value='".UCSLAN_15."' />
// $text .= "<input class='btn' type='submit' id='createclass' name='createclass' value='".LAN_CREATE."' />
// &nbsp;&nbsp;<input class='btn' type='submit' id='updatecancel' name='updatecancel' value='".LAN_CANCEL."' />";
$text .= "
<input type='hidden' name='userclass_id' value='0' />";
@ -1097,7 +1097,7 @@ unset($title);
}
else
{
$text .= UCSLAN_44;
$text .= LAN_NONE;
}
@ -1133,7 +1133,7 @@ unset($title);
case 'debug' :
// if (!check_class(e_UC_MAINADMIN)) break; // Let ordinary admins see this if they know enough to specify the URL
$text .= $e_userclass->show_graphical_tree(TRUE); // Print with debug options
$ns->tablerender(UCSLAN_21, $text);
$ns->tablerender(LAN_SETTINGS, $text);
$text = "<table class='table adminlist'><tr><td colspan='5'>Class rights for first 20 users in database</td></tr>
<tr><td>User ID</td><td>Disp Name</td><td>Raw classes</td><td>Inherited classes</td><td>Editable classes</td></tr>";
@ -1148,7 +1148,7 @@ unset($title);
</tr>";
}
$text .= "</table>";
$ns->tablerender(UCSLAN_21, $text);
$ns->tablerender(LAN_SETTINGS, $text);
break; // End of 'debug'
@ -1201,7 +1201,7 @@ unset($title);
$mes = e107::getMessage();
$mes->addWarning(UCSLAN_52."<br />".UCSLAN_53);
$mes->addWarning(LAN_OPTIONS."<br />".UCSLAN_53);
$text = "<form method='post' action='".e_SELF."?options{$params}' id='treesetForm'>
<table class='table adminform'>
@ -1460,14 +1460,14 @@ class uclass_manager
$this->fieldpref = (varset($user_pref['admin_userclass_columns'])) ? $user_pref['admin_userclass_columns'] : array("userclass_id","userclass_name","userclass_description");
$this->fields = array(
'userclass_icon' => array('title'=> UCSLAN_68, 'type' => 'icon', 'width' => '5%', 'thclass' => 'center', 'class' => 'center'),
'userclass_icon' => array('title'=> LAN_ICON, 'type' => 'icon', 'width' => '5%', 'thclass' => 'center', 'class' => 'center'),
'userclass_id' => array('title'=> LAN_ID, 'type' => 'int', 'width' => '5%', 'thclass' => 'left'),
'userclass_name' => array('title'=> UCSLAN_12, 'type' => 'text', 'width' => 'auto', 'thclass' => 'left'),
'userclass_description' => array('title'=> UCSLAN_13, 'type' => 'text', 'width' => 'auto', 'thclass' => 'left'),
'userclass_editclass' => array('title'=> UCSLAN_24, 'type' => 'userclass', 'width' => 'auto', 'thclass' => 'left'),
'userclass_parent' => array('title'=> UCSLAN_35, 'type' => 'userclass', 'width' => 'auto', 'thclass' => 'left'),
'userclass_visibility' => array('title'=> UCSLAN_34, 'type' => 'userclass', 'width' => 'auto', 'thclass' => 'left'),
'userclass_type' => array('title'=> UCSLAN_79, 'type' => 'method', 'width' => '10%', 'thclass' => 'left', 'class'=>'left' ),
'userclass_name' => array('title'=> LAN_NAME, 'type' => 'text', 'width' => 'auto', 'thclass' => 'left'),
'userclass_description' => array('title'=> LAN_DESCRIPTION, 'type' => 'text', 'width' => 'auto', 'thclass' => 'left'),
'userclass_editclass' => array('title'=> LAN_MANAGER, 'type' => 'userclass', 'width' => 'auto', 'thclass' => 'left'),
'userclass_parent' => array('title'=> LAN_PARENT, 'type' => 'userclass', 'width' => 'auto', 'thclass' => 'left'),
'userclass_visibility' => array('title'=> LAN_VISIBILITY, 'type' => 'userclass', 'width' => 'auto', 'thclass' => 'left'),
'userclass_type' => array('title'=> LAN_TYPE, 'type' => 'method', 'width' => '10%', 'thclass' => 'left', 'class'=>'left' ),
'options' => array('title'=> LAN_OPTIONS, 'type' => null, 'width' => '10%', 'thclass' => 'center last', 'forced'=>TRUE, 'class'=>'right', 'readParms' => array('deleteClass' => e_UC_NOBODY))
);
@ -1491,14 +1491,14 @@ class uclass_manager
if (!$total = $sql->db_Select('userclass_classes', '*'))
{
$text = "";
$mes->add(UCSLAN_7, E_MESSAGE_INFO);
$mes->add(LAN_NO_RECORDS_FOUND, E_MESSAGE_INFO);
}
else
{
$text = "<form method='post' action='".e_SELF."?".e_QUERY."'>
<fieldset id='core-userclass-list'>
<legend class='e-hideme'>".UCSLAN_5."</legend>
<legend class='e-hideme'>".LAN_UPDATED.': '.LAN_USERCLASS."</legend>
<table class='table adminlist'>".
$frm->colGroup($this->fields,$this->fieldpref).
$frm->thead($this->fields,$this->fieldpref).

View File

@ -1,9 +1,8 @@
<?php
/*
* e107 website system
*
* Copyright (C) 2008-2013 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
@ -995,7 +994,7 @@ class users_admin_ui extends e_admin_ui
}
if ($messaccess == '') $messaccess = UCSLAN_12."\n";
$message = UCSLAN_3." ".$sysuser->getName().",\n\n".UCSLAN_4." ".SITENAME."\n( ".SITEURL." )\n\n".UCSLAN_5.": \n\n".$messaccess."\n".UCSLAN_10."\n".SITEADMIN;
$message = USRLAN_256." ".$sysuser->getName().",\n\n".UCSLAN_4." ".SITENAME."\n( ".SITEURL." )\n\n".UCSLAN_5.": \n\n".$messaccess."\n".UCSLAN_10."\n".SITEADMIN;
// $admin_log->e_log_event(4,__FILE__."|".__FUNCTION__."@".__LINE__,"DBG","User class change",str_replace("\n","<br />",$message),FALSE,LOG_TO_ROLLING);
$options['mail_subject'] = UCSLAN_2;
@ -1075,9 +1074,9 @@ class users_admin_ui extends e_admin_ui
$text .= " <div class='buttons-bar center'>
".$frm->hidden('userid', $userid)."
".$frm->checkbox_label(UCSLAN_8.'&nbsp;&nbsp;', 'notifyuser', 1)."
".$frm->admin_button('etrigger_updateclass', UCSLAN_7, 'update')."
".$frm->admin_button('etrigger_back', 'Back', 'cancel')."
".$frm->checkbox_label(USRLAN_255.'&nbsp;&nbsp;', 'notifyuser', 1)."
".$frm->admin_button('etrigger_updateclass', LAN_NO_RECORDS_FOUND, 'update')."
".$frm->admin_button('etrigger_back', LAN_BACK, 'cancel')."
</div>
</fieldset>
</form>

View File

@ -540,7 +540,7 @@ e107::js('footer-inline', js());
}
else
{
$mes->addDebug("User Extended Column deleted from table");
$mes->addSuccess("User Extended Column deleted from table"); //TODO LAN
}
}
@ -596,7 +596,7 @@ e107::js('footer-inline', js());
// do something
}
function addPageActivate()
private function addPageActivate()
{
$ue = e107::getUserExt();
$tp = e107::getParser();
@ -636,7 +636,35 @@ e107::js('footer-inline', js());
}
private function addPageDeactivate()
{
$tp = e107::getParser();
$sql = e107::getDb();
$ue = e107::getUserExt();
$ret = "";
foreach(array_keys($_POST['deactivate']) as $f)
{
$f = $tp->filter($f);
if($ue->user_extended_remove($f, $f))
{
$ret .= EXTLAN_68." $f ".EXTLAN_72."<br />";
if(is_readable(e_CORE."sql/extended_".$f.".php"))
{
$ret .= ($sql->gen("DROP TABLE ".MPREFIX."user_extended_".$f)) ? LAN_DELETED." user_extended_".$f."<br />" : LAN_DELETED_FAILED." user_extended_".$f."<br />";
}
}
else
{
$ret .= EXTLAN_70." $f ".EXTLAN_73."<br />";
}
}
e107::getLog()->add('EUF_12',implode(', ',$_POST['deactivate']),E_LOG_INFORMATIVE,'');
e107::getMessage()->addSuccess($ret);
return $ret;
}
@ -647,6 +675,7 @@ e107::js('footer-inline', js());
$ue = e107::getUserExt();
$this->addPageActivate();
$this->addPageDeactivate();
// Get list of current extended fields

View File

@ -2,7 +2,7 @@
/*
* e107 website system
*
* Copyright (C) 2008-2013 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
@ -74,15 +74,15 @@ class generic_ui extends e_admin_ui
protected $listOrder = 'gen_id DESC';
protected $fields = array (
'checkboxes' => array ( 'title' => '', 'type' => null, 'data' => null, 'width' => '5%', 'thclass' => 'center', 'forced' => '1', 'class' => 'center', 'toggle' => 'e-multiselect', ),
'gen_id' => array ( 'title' => LAN_ID, 'data' => 'int', 'width' => '5%', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'gen_type' => array ( 'title' => LAN_TYPE, 'type' => 'hidden', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => 'default=wmessage', 'class' => 'left', 'thclass' => 'left', ),
protected $fields = array (
'checkboxes' => array ( 'title' => '', 'type' => null, 'data' => null, 'width' => '5%', 'thclass' => 'center', 'forced' => '1', 'class' => 'center', 'toggle' => 'e-multiselect', ),
'gen_id' => array ( 'title' => LAN_ID, 'data' => 'int', 'width' => '5%', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'gen_type' => array ( 'title' => LAN_TYPE, 'type' => 'hidden', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => 'default=wmessage', 'class' => 'left', 'thclass' => 'left', ),
'gen_datestamp' => array ( 'title' => LAN_DATESTAMP, 'type' => 'hidden', 'data' => 'int', 'width' => 'auto', 'filter' => true, 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'gen_user_id' => array ( 'title' => LAN_ID, 'type' => 'hidden', 'data' => 'int', 'width' => '5%', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'gen_ip' => array ( 'title' => WMLAN_10, 'type' => 'text', 'data' => 'str', 'width' => 'auto', 'inline' => true, 'help' => '', 'readParms' => '', 'writeParms' => 'size=xxlarge', 'class' => 'left', 'thclass' => 'left', ),
'gen_intdata' => array ( 'title' => LAN_VISIBILITY, 'type' => 'userclass', 'data' => 'int', 'inline'=>true, 'batch'=>true, 'filter'=>true, 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'gen_chardata' => array ( 'title' => WMLAN_04, 'type' => 'bbarea', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ),
'gen_user_id' => array ( 'title' => LAN_AUTHOR, 'type' => 'hidden', 'data' => 'int', 'width' => '5%', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'gen_ip' => array ( 'title' => LAN_TITLE, 'type' => 'text', 'data' => 'str', 'width' => 'auto', 'inline' => true, 'help' => '', 'readParms' => '', 'writeParms' => 'size=xxlarge', 'class' => 'left', 'thclass' => 'left', ),
'gen_intdata' => array ( 'title' => LAN_VISIBILITY, 'type' => 'userclass', 'data' => 'int', 'inline'=>true, 'batch'=>true, 'filter'=>true, 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'left', 'thclass' => 'left', ),
'gen_chardata' => array ( 'title' => LAN_MESSAGE, 'type' => 'bbarea', 'data' => 'str', 'width' => 'auto', 'help' => '', 'readParms' => '', 'writeParms' => '', 'class' => 'center', 'thclass' => 'center', ),
'options' => array ( 'title' => LAN_OPTIONS, 'type' => null, 'data' => null, 'width' => '10%', 'thclass' => 'center last', 'class' => 'center last', 'forced' => '1', ),
);
@ -90,7 +90,7 @@ class generic_ui extends e_admin_ui
protected $prefs = array(
'wm_enclose' => array('title'=> WMLAN_05, 'type'=>'radio', 'data' => 'int','help'=> WMLAN_06, 'writeParms'=>array('optArray'=>array(0=> LAN_DISABLED, 1=> LAN_ENABLED, 2=> "Enclosed with Carousel"))),
'wm_enclose' => array('title'=> WMLAN_05, 'type'=>'radio', 'data' => 'int','help'=> WMLAN_06, 'writeParms'=>array('optArray'=>array(0=> LAN_DISABLED, 1=> LAN_ENABLED, 2=> WMLAN_11))),
);
@ -306,7 +306,7 @@ if ($action == "main" || $action == "")
<thead>
<tr>
<th>".LAN_ID."</th>
<th>".WMLAN_02."</th>
<th>".LAN_MESSAGE."</th>
<th class='center'>".LAN_VISIBILITY."</th>
<th class='center'>".LAN_OPTIONS."</th>
</tr>
@ -360,7 +360,7 @@ if ($action == "create" || $action == "edit")
<td>".$frm->text('wm_caption', $tp->toForm(vartrue($row['gen_ip'])), 80)."</td>
</tr>
<tr>
<td>".WMLAN_04."</td>
<td>".LAN_MESSAGE."</td>
<td>";
$text .= $frm->bbarea('data',$row['gen_chardata']);
@ -473,4 +473,4 @@ function welcome_adminlog($msg_num='00', $id=0, $woffle='')
}
*/
?>
?>

View File

@ -491,14 +491,14 @@ class admin_shortcodes
$allconfigs = multiarray_sort($allconfigs,'title'); //XXX FIXME - not sorting correctly.
$text = "<ul id='e-latest' class='unstyled list-unstyled'>";
$text = "<ul id='e-latest' class='list-group'>";
foreach($allconfigs as $k=>$v)
{
foreach($v as $val)
{
$class = admin_shortcodes::getBadge($val['total']);
$link = "<a href='".$val['url']."'>".str_replace(":"," ",$val['title'])." <span class='".$class."'>".$val['total']."</span></a>";
$text .= "<li class='clearfix'>".$val['icon']." ".$link."</li>\n";
$link = "<a href='".$val['url']."'>".$val['icon']." ".str_replace(":"," ",$val['title'])." <span class='".$class."'>".$val['total']."</span></a>";
$text .= "<li class='list-group-item clearfix'>".$link."</li>\n";
}
}
$text .= "</ul>";
@ -1199,15 +1199,15 @@ class admin_shortcodes
$allconfigs = multiarray_sort($allconfigs,'title'); //XXX FIXME - not sorting correctly.
$text = "<ul id='e-status' class='unstyled list-unstyled'>";
$text = "<ul id='e-status' class='list-group'>";
foreach($allconfigs as $k=>$v)
{
foreach($v as $val)
{
$type = empty($val['invert']) ? 'latest' : 'invert';
$class = admin_shortcodes::getBadge($val['total'], $type);
$link = "<a href='".$val['url']."'>".str_replace(":"," ",$val['title'])." <span class='".$class."'>".$val['total']."</span></a>";
$text .= "<li>".$val['icon']." ".$link."</li>\n";
$link = "<a href='".$val['url']."'>".$val['icon']." ".str_replace(":"," ",$val['title'])." <span class='".$class."'>".$val['total']."</span></a>";
$text .= "<li class='list-group-item'>".$link."</li>\n";
}
}
$text .= "</ul>";

View File

@ -15,12 +15,12 @@ if(deftrue('BOOTSTRAP'))
elseif (defined("ICONMAIL") && file_exists(THEME."images/".ICONMAIL))
{
$icon = THEME_ABS."images/".ICONMAIL;
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' />";
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' class='icon S16 action' />";
}
else
{
$icon = e_IMAGE_ABS."generic/email.png";
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' />";
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' class='icon S16 action' />";
}
// message^source^other_parms

View File

@ -10,12 +10,12 @@ if(deftrue('BOOTSTRAP'))
elseif (defined("ICONPRINT") && file_exists(THEME."images/".ICONPRINT))
{
$icon = THEME_ABS."images/".ICONPRINT;
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' />";
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' class='icon S16 action' />";
}
else
{
$icon = e_IMAGE_ABS."generic/printer.png";
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' />";
$img = "<img src='".$icon."' style='border:0' alt='{$parms[0]}' class='icon S16 action' />";
}

View File

@ -2,20 +2,36 @@
// $Id$
function user_avatar_shortcode($parm=null)
{
if(!empty($parm) && is_string($parm))
$data = null;
if(!empty($parm))
{
$data = array('user_image'=>$parm);
}
elseif(!empty($parm) && is_array($parm))
{
$data = $parm;
}
else
{
$data = null;
if(is_numeric($parm))
{
$id = intval($parm);
$data = e107::user($id);
$parm = null;
}
if(is_string($parm))
{
$data = array('user_image'=>$parm);
}
elseif(is_array($parm))
{
if(isset($parm['user_image']))
{
$data = $parm;
}
else
{
$data = null;
}
}
}
return e107::getParser()->toAvatar($data, $data);
return e107::getParser()->toAvatar($data, $parm);
/*
global $loop_uid;

View File

@ -89,8 +89,8 @@ if(!defined($SIGNUP_EXTENDED_USER_FIELDS))
$SIGNUP_EXTENDED_USER_FIELDS = "
<tr>
<td style='width:40%' class='forumheader3'>
{EXTENDED_USER_FIELD_TEXT}
{EXTENDED_USER_FIELD_REQUIRED}
<label>{EXTENDED_USER_FIELD_TEXT}
{EXTENDED_USER_FIELD_REQUIRED}</label>
</td>
<td style='width:60%' class='forumheader3'>
{EXTENDED_USER_FIELD_EDIT}
@ -152,7 +152,7 @@ $sc_style['SIGNUP_LOGINNAME']['post'] = "
$sc_style['SIGNUP_HIDE_EMAIL']['pre'] = "
<tr>
<td class='forumheader3' style='width:30%;white-space:nowrap'>".LAN_USER_83."</td>
<td class='forumheader3' style='width:30%;white-space:nowrap'><label>".LAN_USER_83."</label></td>
<td class='forumheader3' style='width:70%'>";
$sc_style['SIGNUP_HIDE_EMAIL']['post'] = "
</td>
@ -182,7 +182,7 @@ $sc_style['SIGNUP_PASSWORD2']['post'] = "</td>
</tr>";
$sc_style['SIGNUP_USERCLASS_SUBSCRIBE']['pre'] = "<tr>
<td class='forumheader3' style='width:30%;white-space:nowrap'>".LAN_SIGNUP_113."</td>
<td class='forumheader3' style='width:30%;white-space:nowrap'><label>".LAN_SIGNUP_113."</label></td>
<td class='forumheader3' style='width:70%'>";
$sc_style['SIGNUP_USERCLASS_SUBSCRIBE']['post'] = "</td>
</tr>";

View File

@ -98,6 +98,7 @@
<core name="e_meta_list"><![CDATA[array (
'rss_menu' => 'rss_menu',
)]]></core>
<core name="e_module_list"><![CDATA[array ()]]></core>
<core name="e_related_list"><![CDATA[array (
'news' => 'news',
'page' => 'page',

View File

@ -1087,6 +1087,10 @@ class comment
echo $text;
}
}
elseif($return === 'html')
{
return $ns->tablerender(null, $text, 'comment', true);
}
else
{
$ret['comment'] = $text;

View File

@ -605,7 +605,7 @@ class e107_db_debug {
$inc = array(
'BOOTSTRAP','HEADERF','FOOTERF','FILE_UPLOADS','FLOODPROTECT','FLOODTIMEOUT','CHARSET',
'GUESTS_ONLINE','MEMBERS_ONLINE','PAGE_NAME','STANDARDS_MODE','TIMEOFFSET',
'TOTAL_ONLINE','THEME','THEME_ABS','THEME_LAYOUT','THEME_STYLE','META_OG','META_DESCRIPTION','MPREFIX','VIEWPORT','BODYTAG','CSSORDER'
'TOTAL_ONLINE','THEME','THEME_ABS','THEME_LAYOUT', 'THEME_LEGACY','THEME_STYLE','META_OG','META_DESCRIPTION','MPREFIX','VIEWPORT','BODYTAG','CSSORDER'
);
$userCon = get_defined_constants(true);

View File

@ -3536,7 +3536,7 @@ class e_parser
public function toGlyph($text, $space=" ")
{
if(!deftrue('BOOTSTRAP') || empty($text))
if(empty($text))
{
return false;
}
@ -3654,19 +3654,20 @@ class e_parser
$height = ($tp->thumbHeight !== 0) ? $tp->thumbHeight : "";
$linkStart = '';
$linkEnd = '';
if(!isset($userData['user_image']) && USERID)
if($userData === null && USERID)
{
$userData = array();
$userData['user_id'] = USERID;
$userData['user_image'] = USERIMAGE;
$userData['user_name'] = USERNAME;
$userData['user_name'] = USERNAME;
$userData['user_currentvisit'] = USERCURRENTVISIT;
}
$image = (!empty($userData['user_image'])) ? varset($userData['user_image']) : null;
$genericImg = $tp->thumbUrl(e_IMAGE."generic/blank_avatar.jpg","w=".$width."&h=".$height,true);
$genericImg = $tp->thumbUrl(e_IMAGE."generic/blank_avatar.jpg","w=".$width."&h=".$height,true);
if (!empty($image))
{
@ -3714,8 +3715,10 @@ class e_parser
$heightInsert = empty($height) ? '' : "height='".$height."'";
$id = (!empty($options['id'])) ? "id='".$options['id']."' " : "";
$classOnline = (!empty($userData['user_currentvisit']) && intval($userData['user_currentvisit']) > (time() - 300)) ? " user-avatar-online" : '';
$text = $linkStart;
$text .= "<img ".$id."class='".$shape." user-avatar' alt=\"".$title."\" src='".$img."' width='".$width."' ".$heightInsert." />";
$text .= "<img ".$id."class='".$shape." user-avatar".$classOnline."' alt=\"".$title."\" src='".$img."' width='".$width."' ".$heightInsert." />";
$text .= $linkEnd;
// return $img;
return $text;

View File

@ -29,7 +29,8 @@ class e107_event
'fileupload' => 'user_file_upload',
'newspost' => 'admin_news_created',
'newsupd' => 'admin_news_updated',
'newsdel' => 'admin_news_deleted'
'newsdel' => 'admin_news_deleted',
'userdatachanged' => 'user_profile_edit'
);
@ -84,7 +85,8 @@ class e107_event
'user_xup_signup' => 'User social signup',
'user_ban_flood' => NS_LAN_2,
'user_ban_failed_login' => 'IP banned for multiple failed login attempts',
'user_profile_display' => "User views profile"
'user_profile_display' => "User views profile",
'user_profile_edit' => "User edits profile"
),

View File

@ -915,7 +915,7 @@ class e_form
}
// $ret = "<a title=\"{$title}\" rel='external' class='e-dialog' href='".$url."'>".$label."</a>"; // using colorXXXbox.
$ret = "<a title=\"{$title}\" class='e-modal' data-modal-caption='Media Manager' data-cache='false' data-target='#uiModal' href='".$url."'>".$label."</a>"; // using bootstrap.
$ret = "<a title=\"{$title}\" class='e-modal' data-modal-caption='".LAN_EFORM_007."' data-cache='false' data-target='#uiModal' href='".$url."'>".$label."</a>"; // using bootstrap.
// $footer = "<div style=\'padding:5px;text-align:center\' <a href=\'#\' >Save</a></div>";
@ -982,13 +982,13 @@ class e_form
if($localonly == true)
{
$text = "<input class='tbox' style='width:80%' id='{$idinput}' type='hidden' name='image' value='{$curVal}' />";
$text .= "<img src='".$img."' id='{$previnput}' class='img-rounded e-expandit e-tip avatar' style='cursor:pointer; width:".$pref['im_width']."px; height:".$pref['im_height']."px' title='Click on the avatar to change it' alt='Click on the avatar to change it' />"; // TODO LAN
$text .= "<img src='".$img."' id='{$previnput}' class='img-rounded e-expandit e-tip avatar' style='cursor:pointer; width:".$pref['im_width']."px; height:".$pref['im_height']."px' title='".LAN_EFORM_001."' alt='Click on the avatar to change it' />";
}
else
{
$text = "<input class='tbox' style='width:80%' id='{$idinput}' type='text' name='image' size='40' value='$curVal' maxlength='100' title=\"".LAN_SIGNUP_111."\" />";
$text .= "<img src='".$img."' id='{$previnput}' style='display:none' />";
$text .= "<input class='img-rounded btn btn-default button e-expandit' type ='button' style='cursor:pointer' size='30' value=\"Choose Avatar\" />"; //TODO Common LAN.
$text .= "<input class='img-rounded btn btn-default button e-expandit' type ='button' style='cursor:pointer' size='30' value=\"".LAN_EFORM_002."\" />";
}
$avFiles = e107::getFile()->get_files(e_AVATAR_DEFAULT,".jpg|.png|.gif|.jpeg|.JPG|.GIF|.PNG");
@ -1005,7 +1005,7 @@ class e_form
if(count($avFiles) > 0)
{
$text .= "<div class='divider'><span>OR</span></div>";
$text .= "<div class='divider'><span>".LAN_EFORM_003."</span></div>";
$count = 1;
}
}
@ -1014,7 +1014,7 @@ class e_form
foreach($avFiles as $fi)
{
$img_path = $tp->thumbUrl(e_AVATAR_DEFAULT.$fi['fname']);
$text .= "\n<a class='e-expandit' title='Choose this avatar' href='#{$optioni}'><img src='".$img_path."' alt='' onclick=\"insertext('".$fi['fname']."', '".$idinput."');document.getElementById('".$previnput."').src = this.src;return false\" /></a> ";
$text .= "\n<a class='e-expandit' title='".LAN_EFORM_004."' href='#{$optioni}'><img src='".$img_path."' alt='' onclick=\"insertext('".$fi['fname']."', '".$idinput."');document.getElementById('".$previnput."').src = this.src;return false\" /></a> ";
$count++;
@ -1024,11 +1024,14 @@ class e_form
if($count == 0)
{
$text .= "<div class='row'>";
$text .= "<div class='alert alert-info'>No Avatars Available</div>"; //TODO LAN
$text .= "<div class='alert alert-info'>".LAN_EFORM_005."</div>";
if(ADMIN)
{
$text .= "<div class='alert alert-danger'>Admin-Only Notice: The folder <b>".e_AVATAR_DEFAULT."</b> is empty. Upload some default avatars images to this folder for users to choose avatars from.</div>"; //TODO LAN
$EAVATAR = "<b>".e_AVATAR_DEFAULT."</b>";
$text .= "<div class='alert alert-danger'>";
$text .= e107::getParser()->lanVars(LAN_EFORM_006, array('x'=>$EAVATAR));
$text .= "</div>";
}
$text .= "</div>";
@ -1457,7 +1460,7 @@ e107::getDebug()->log($sc_parameters);
if(empty($users))
{
return "Unavailable";
return LAN_UNAVAILABLE;
}
$opt = array();
@ -1842,7 +1845,7 @@ e107::getDebug()->log($sc_parameters);
$text .= "</div>
</div>";
$loading = vartrue($options['loading'],'Please wait...');
$loading = vartrue($options['loading'],LAN_LOADING);
$buttonId = $target.'-start';
@ -2534,7 +2537,7 @@ e107::getDebug()->log($sc_parameters);
$tp = e107::getParser();
$text = '<span class="input-append input-group e-search">
'.$this->text($name, $searchVal,20,'class=search-query&placeholder=Search&hellip;').'
'.$this->text($name, $searchVal,20,'class=search-query&placeholder='.LAN_SEARCH.'&hellip;').'
<span class="input-group-btn"><button class="btn btn-primary" name="'.$submitName.'" type="submit">'.$tp->toGlyph('fa-search',' ').'</button></span>
</span>';
@ -2817,7 +2820,7 @@ e107::getDebug()->log($sc_parameters);
$text = '<div class="btn-group pull-'.$align.'">
<a class="btn dropdown-toggle '.$options['class'].'" data-toggle="dropdown" href="#">
'.($label ? $label : 'No Label Provided').'
'.($label ? $label : LAN_NO_LABEL_PROVIDED).'
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
@ -3372,10 +3375,10 @@ e107::getDebug()->log($sc_parameters);
// navbar-header nav-header
// navbar-header nav-header
$text = '<div class="col-selection dropdown e-tip pull-right" data-placement="left">
<a class="dropdown-toggle" title="Select columns to display" data-toggle="dropdown" href="#"><b class="caret"></b></a>
<a class="dropdown-toggle" title="'.LAN_EFORM_008.'" data-toggle="dropdown" href="#"><b class="caret"></b></a>
<ul class="list-group dropdown-menu col-selection e-noclick" role="menu" aria-labelledby="dLabel">
<li class="list-group-item "><h5 class="list-group-item-heading">Display Columns</h5></li>
<li class="list-group-item "><h5 class="list-group-item-heading">'.LAN_EFORM_009.'</h5></li>
<li class="list-group-item">
<ul class="nav scroll-menu" >';
@ -3962,12 +3965,15 @@ e107::getDebug()->log($sc_parameters);
$cls = (deftrue($parms['deleteClass'])) ? constant($parms['deleteClass']) : $parms['deleteClass'];
if(check_class($cls))
{
$value .= $this->submit_image('etrigger_delete['.$id.']', $id, 'delete', LAN_DELETE.' [ ID: '.$id.' ]', array('class' => 'action delete btn btn-default'.$delcls));
$parms['class'] = 'action delete btn btn-default'.$delcls;
unset($parms['deleteClass']);
$value .= $this->submit_image('etrigger_delete['.$id.']', $id, 'delete', LAN_DELETE.' [ ID: '.$id.' ]', $parms);
}
}
else
{
$value .= $this->submit_image('etrigger_delete['.$id.']', $id, 'delete', LAN_DELETE.' [ ID: '.$id.' ]', array('class' => 'action delete btn btn-default'.$delcls));
$parms['class'] = 'action delete btn btn-default'.$delcls;
$value .= $this->submit_image('etrigger_delete['.$id.']', $id, 'delete', LAN_DELETE.' [ ID: '.$id.' ]', $parms);
}
}
//$attributes['type'] = 'text';
@ -4180,7 +4186,7 @@ e107::getDebug()->log($sc_parameters);
// in case something goes wrong...
if($link)
{
$value = "<a class='e-tip{$dialog}' {$ext} href='" . $link . "' {$modal} title='Quick View' >" . $value . "</a>";
$value = "<a class='e-tip{$dialog}' {$ext} href='" . $link . "' {$modal} title='".LAN_EFORM_010."' >" . $value . "</a>";
}
}
@ -4261,7 +4267,7 @@ e107::getDebug()->log($sc_parameters);
}
// in case something goes wrong...
if($link) $value = "<a class='e-tip{$dialog}' {$ext} href='".$link."' {$modal} title='Quick View' >".$value."</a>";
if($link) $value = "<a class='e-tip{$dialog}' {$ext} href='".$link."' {$modal} title='".LAN_EFORM_010."' >".$value."</a>";
}
if(empty($value))
@ -4593,7 +4599,7 @@ e107::getDebug()->log($sc_parameters);
// Stay in admin area.
$link = e_ADMIN."users.php?mode=main&action=edit&id=".$id."&readonly=1&iframe=1"; // e107::getUrl()->create('user/profile/view', array('id' => $id, 'name' => $ttl))
$value = '<a class="e-modal" data-modal-caption="User #'.$id.' : '.$ttl.'" href="'.$link.'" title="Go to user profile">'.$ttl.'</a>';
$value = '<a class="e-modal" data-modal-caption="User #'.$id.' : '.$ttl.'" href="'.$link.'" title="'.LAN_EFORM_011.'">'.$ttl.'</a>';
}
else
{
@ -4852,7 +4858,7 @@ e107::getDebug()->log($sc_parameters);
if(!empty($attributes['multilan']))
{
$value = is_array($value) ? varset($value[e_LANGUAGE],'') : $value;
$parms['post'] = "<small class='e-tip admin-multilanguage-field input-group-addon' style='cursor:help; padding-left:10px' title='Multi-language field (".e_LANGUAGE.")'>".$tp->toGlyph('fa-language')."</small>";
$parms['post'] = "<small class='e-tip admin-multilanguage-field input-group-addon' style='cursor:help; padding-left:10px' title='".LAN_EFORM_012." (".e_LANGUAGE.")'>".$tp->toGlyph('fa-language')."</small>";
}
if(empty($value) && !empty($parms['default'])) // Allow writeParms to set default value.
@ -6032,7 +6038,7 @@ e107::getDebug()->log($sc_parameters);
<div class='buttons-bar center'>
";
// After submit options
$defsubmitopt = array('list' => 'go to list', 'create' => 'create another', 'edit' => 'edit current');
$defsubmitopt = array('list' => LAN_EFORM_013, 'create' => LAN_EFORM_014, 'edit' => LAN_EFORM_015);
$submitopt = isset($fdata['after_submit_options']) ? $fdata['after_submit_options'] : true;
if(true === $submitopt)
{
@ -6073,7 +6079,7 @@ e107::getDebug()->log($sc_parameters);
<span class="caret"></span>
</button>
<ul class="dropdown-menu col-selection">
<li class="dropdown-header nav-header">After submit:</li>
<li class="dropdown-header nav-header">'.LAN_EFORM_016.'</li>
';
foreach($submitopt as $k=>$v)

View File

@ -248,8 +248,8 @@ class language{
/**
* Converts iso to language-name and visa-versa.
* @param object $data
* @return
* @param string $data
* @return string
*/
function convert($data){
@ -466,15 +466,16 @@ class language{
* Convert the current URL to a multi-lang for the specified language.
* eg. 'http://www.mydomain.com' becomes 'http://es.mydomain.com'
* @param string $language eg. 'Spanish'
* @return URL
* @return string url
*/
function subdomainUrl($language, $url=e_REQUEST_URL)
{
global $pref;
$sitelanguage = e107::getPref('sitelanguage',null);
$iso = (strlen($language) == 2) ? $language : $this->convert($language);
$codelnk = ($language == $pref['sitelanguage']) ? "www" : $iso;
$codelnk = ($language == $sitelanguage) ? "www" : $iso;
if($codelnk == '')
{

View File

@ -86,7 +86,7 @@ class e_library_manager
$libraryPath = e107::getParser()->replaceConstants($library['library_path']);
if($library['library_path'] === false || (!file_exists($libraryPath) && substr($libraryPath, 0, 4) != 'http'))
{
$library['error'] = LAN_LIBRARY_MANAGER_09;
$library['error'] = LAN_NOT_FOUND;
$replace_with = array($library['name']);
$library['error_message'] = e107::getParser()->lanVars(LAN_LIBRARY_MANAGER_03, $replace_with, true);
@ -255,7 +255,7 @@ class e_library_manager
if(!$variant['installed'])
{
$variant['error'] = LAN_LIBRARY_MANAGER_09;
$variant['error'] = LAN_NOT_FOUND;
$replace_with = array($variant_name, $library['name']);
$variant['error_message'] = e107::getParser()->lanVars(LAN_LIBRARY_MANAGER_06, $replace_with, true);

View File

@ -1256,7 +1256,7 @@ class e_menuManager {
$text .= "</div>";
}
// $ns -> tablerender(MENLAN_22.'blabla', $text);
if(e_DEBUG_MENUMANAGER === true)
if(!deftrue("e_DEBUG_MENUMANAGER"))
{
echo "<div class='menu-panel' style='padding:50px'>Main Content Area</div>";
}
@ -1489,10 +1489,11 @@ class e_menuManager {
}
else if(strstr($str, "MENU"))
{
$matches = array();
if(preg_match_all("/\{MENU=([\d]{1,3})(:[\w\d]*)?\}/", $str, $matches))
{
$menuText = "";
foreach($matches[1] as $menu)
{
@ -1501,7 +1502,7 @@ class e_menuManager {
{
$menuText .= $sc_style['MENU']['pre'];
}
// ---------------
$menuText .= "\n\n<!-- START AREA ".$menu." -->";
@ -1569,10 +1570,13 @@ class e_menuManager {
}
$ns->tablerender('', varset($menuText));
echo $menuText;
// $ns->tablerender('', varset($menuText)); // Could fail with a badly built theme.
}
else
{
echo $tp->parseTemplate($str,true);
}

View File

@ -1097,12 +1097,14 @@ class e_model extends e_object
$data = &$this->{$data_src};
for ($i = 0, $l = count($keyArr); $i < $l; $i++)
{
$k = $keyArr[$i];
if (!isset($data[$k]))
if (!isset($data[$k]) || empty($data[$k])) // PHP7.1 fix. Reset to empty array() if $data[$k] is an empty string. Reason for empty string still unknown.
{
$data[$k] = array();
}
$data = &$data[$k];
}

View File

@ -231,7 +231,7 @@ class e_db_mysql
// Set utf8 connection?
//@TODO: simplify when yet undiscovered side-effects will be fixed
$this->db_Set_Charset();
$this->setSQLMode();
// if ($this->pdo!== true && !@mysql_select_db($this->mySQLdefaultdb, $this->mySQLaccess))
if (!$this->database($this->mySQLdefaultdb))
@ -259,7 +259,6 @@ class e_db_mysql
/**
* Connect ONLY - used in v2.x
* @param string $mySQLserver IP Or hostname of the MySQL server
@ -316,6 +315,7 @@ class e_db_mysql
}
$this->db_Set_Charset();
$this->setSQLMode();
if ($db_ConnectionID == NULL){ $db_ConnectionID = $this->mySQLaccess; }
@ -2664,6 +2664,15 @@ class e_db_mysql
return $this->mySQLlastQuery;
}
private function setSQLMode()
{
$this->db_Query("SET SESSION sql_mode='NO_ENGINE_SUBSTITUTION';");
}
/**
* Check if MySQL version is utf8 compatible and may be used as it accordingly to the user choice
*

File diff suppressed because it is too large Load Diff

View File

@ -27,38 +27,38 @@ class PHPMailerOAuth extends PHPMailer
{
/**
* The OAuth user's email address
* @type string
* @var string
*/
public $oauthUserEmail = '';
/**
* The OAuth refresh token
* @type string
* @var string
*/
public $oauthRefreshToken = '';
/**
* The OAuth client ID
* @type string
* @var string
*/
public $oauthClientId = '';
/**
* The OAuth client secret
* @type string
* @var string
*/
public $oauthClientSecret = '';
/**
* An instance of the OAuth class.
* @type OAuth
* An instance of the PHPMailerOAuthGoogle class.
* @var PHPMailerOAuthGoogle
* @access protected
*/
protected $oauth = null;
/**
* Get an OAuth instance to use.
* @return OAuth
* Get a PHPMailerOAuthGoogle instance to use.
* @return PHPMailerOAuthGoogle
*/
public function getOAUTHInstance()
{
@ -79,19 +79,19 @@ class PHPMailerOAuth extends PHPMailer
* @param array $options An array of options compatible with stream_context_create()
* @uses SMTP
* @access public
* @return bool
* @throws phpmailerException
* @return boolean
*/
public function smtpConnect($options = array())
{
if (is_null($this->smtp)) {
$this->smtp = $this->getSMTPInstance();
}
if (is_null($this->oauth)) {
$this->oauth = $this->getOAUTHInstance();
}
// Already connected?
if ($this->smtp->connected()) {
return true;

View File

@ -30,7 +30,13 @@ class PHPMailerOAuthGoogle
private $oauthRefreshToken = '';
private $oauthClientId = '';
private $oauthClientSecret = '';
/**
* @param string $UserEmail
* @param string $ClientSecret
* @param string $ClientId
* @param string $RefreshToken
*/
public function __construct(
$UserEmail,
$ClientSecret,
@ -43,25 +49,26 @@ class PHPMailerOAuthGoogle
$this->oauthUserEmail = $UserEmail;
}
private function getProvider() {
private function getProvider()
{
return new League\OAuth2\Client\Provider\Google([
'clientId' => $this->oauthClientId,
'clientSecret' => $this->oauthClientSecret
]);
}
private function getGrant()
{
return new \League\OAuth2\Client\Grant\RefreshToken();
}
private function getToken()
{
$provider = $this->getProvider();
$grant = $this->getGrant();
return $provider->getAccessToken($grant, ['refresh_token' => $this->oauthRefreshToken]);
}
public function getOauth64()
{
$token = $this->getToken();

View File

@ -31,28 +31,28 @@ class POP3
{
/**
* The POP3 PHPMailer Version number.
* @type string
* @var string
* @access public
*/
public $Version = '5.2.13';
public $Version = '5.2.21';
/**
* Default POP3 port number.
* @type integer
* @var integer
* @access public
*/
public $POP3_PORT = 110;
/**
* Default timeout in seconds.
* @type integer
* @var integer
* @access public
*/
public $POP3_TIMEOUT = 30;
/**
* POP3 Carriage Return + Line Feed.
* @type string
* @var string
* @access public
* @deprecated Use the constant instead
*/
@ -61,66 +61,66 @@ class POP3
/**
* Debug display level.
* Options: 0 = no, 1+ = yes
* @type integer
* @var integer
* @access public
*/
public $do_debug = 0;
/**
* POP3 mail server hostname.
* @type string
* @var string
* @access public
*/
public $host;
/**
* POP3 port number.
* @type integer
* @var integer
* @access public
*/
public $port;
/**
* POP3 Timeout Value in seconds.
* @type integer
* @var integer
* @access public
*/
public $tval;
/**
* POP3 username
* @type string
* @var string
* @access public
*/
public $username;
/**
* POP3 password.
* @type string
* @var string
* @access public
*/
public $password;
/**
* Resource handle for the POP3 connection socket.
* @type resource
* @access private
* @var resource
* @access protected
*/
private $pop_conn;
protected $pop_conn;
/**
* Are we connected?
* @type boolean
* @access private
* @var boolean
* @access protected
*/
private $connected = false;
protected $connected = false;
/**
* Error container.
* @type array
* @access private
* @var array
* @access protected
*/
private $errors = array();
protected $errors = array();
/**
* Line break constant
@ -310,9 +310,9 @@ class POP3
* $size is the maximum number of bytes to retrieve
* @param integer $size
* @return string
* @access private
* @access protected
*/
private function getResponse($size = 128)
protected function getResponse($size = 128)
{
$response = fgets($this->pop_conn, $size);
if ($this->do_debug >= 1) {
@ -325,9 +325,9 @@ class POP3
* Send raw data to the POP3 server.
* @param string $string
* @return integer
* @access private
* @access protected
*/
private function sendString($string)
protected function sendString($string)
{
if ($this->pop_conn) {
if ($this->do_debug >= 2) { //Show client messages when debug >= 2
@ -343,9 +343,9 @@ class POP3
* Looks for for +OK or -ERR.
* @param string $string
* @return boolean
* @access private
* @access protected
*/
private function checkResponse($string)
protected function checkResponse($string)
{
if (substr($string, 0, 3) !== '+OK') {
$this->setError(array(
@ -363,28 +363,38 @@ class POP3
* Add an error to the internal error store.
* Also display debug output if it's enabled.
* @param $error
* @access protected
*/
private function setError($error)
protected function setError($error)
{
$this->errors[] = $error;
if ($this->do_debug >= 1) {
// echo '<pre>';
echo '<pre>';
foreach ($this->errors as $error) {
// print_r($error);
print_r($error);
}
// echo '</pre>';
echo '</pre>';
}
}
/**
* Get an array of error messages, if any.
* @return array
*/
public function getErrors()
{
return $this->errors;
}
/**
* POP3 connection error handler.
* @param integer $errno
* @param string $errstr
* @param string $errfile
* @param integer $errline
* @access private
* @access protected
*/
private function catchWarning($errno, $errstr, $errfile, $errline)
protected function catchWarning($errno, $errstr, $errfile, $errline)
{
$this->setError(array(
'error' => "Connecting to the POP3 server raised a PHP warning: ",

View File

@ -28,25 +28,25 @@ class SMTP
{
/**
* The PHPMailer SMTP version number.
* @type string
* @var string
*/
const VERSION = '5.2.13';
const VERSION = '5.2.21';
/**
* SMTP line break constant.
* @type string
* @var string
*/
const CRLF = "\r\n";
/**
* The SMTP port to use if one is not specified.
* @type integer
* @var integer
*/
const DEFAULT_SMTP_PORT = 25;
/**
* The maximum line length allowed by RFC 2822 section 2.1.1
* @type integer
* @var integer
*/
const MAX_LINE_LENGTH = 998;
@ -77,15 +77,15 @@ class SMTP
/**
* The PHPMailer SMTP Version number.
* @type string
* @var string
* @deprecated Use the `VERSION` constant instead
* @see SMTP::VERSION
*/
public $Version = '5.2.13';
public $Version = '5.2.21';
/**
* SMTP server port number.
* @type integer
* @var integer
* @deprecated This is only ever used as a default value, so use the `DEFAULT_SMTP_PORT` constant instead
* @see SMTP::DEFAULT_SMTP_PORT
*/
@ -93,7 +93,7 @@ class SMTP
/**
* SMTP reply line ending.
* @type string
* @var string
* @deprecated Use the `CRLF` constant instead
* @see SMTP::CRLF
*/
@ -107,7 +107,7 @@ class SMTP
* * self::DEBUG_SERVER (`2`) Client commands and server responses
* * self::DEBUG_CONNECTION (`3`) As DEBUG_SERVER plus connection status
* * self::DEBUG_LOWLEVEL (`4`) Low-level data output, all messages
* @type integer
* @var integer
*/
public $do_debug = self::DEBUG_OFF;
@ -122,7 +122,7 @@ class SMTP
* <code>
* $smtp->Debugoutput = function($str, $level) {echo "debug level $level; message: $str";};
* </code>
* @type string|callable
* @var string|callable
*/
public $Debugoutput = 'echo';
@ -130,7 +130,7 @@ class SMTP
* Whether to use VERP.
* @link http://en.wikipedia.org/wiki/Variable_envelope_return_path
* @link http://www.postfix.org/VERP_README.html Info on VERP
* @type boolean
* @var boolean
*/
public $do_verp = false;
@ -139,26 +139,37 @@ class SMTP
* Default of 5 minutes (300sec) is from RFC2821 section 4.5.3.2
* This needs to be quite high to function correctly with hosts using greetdelay as an anti-spam measure.
* @link http://tools.ietf.org/html/rfc2821#section-4.5.3.2
* @type integer
* @var integer
*/
public $Timeout = 300;
/**
* How long to wait for commands to complete, in seconds.
* Default of 5 minutes (300sec) is from RFC2821 section 4.5.3.2
* @type integer
* @var integer
*/
public $Timelimit = 300;
/**
* @var array patterns to extract smtp transaction id from smtp reply
* Only first capture group will be use, use non-capturing group to deal with it
* Extend this class to override this property to fulfil your needs.
*/
protected $smtp_transaction_id_patterns = array(
'exim' => '/[0-9]{3} OK id=(.*)/',
'sendmail' => '/[0-9]{3} 2.0.0 (.*) Message/',
'postfix' => '/[0-9]{3} 2.0.0 Ok: queued as (.*)/'
);
/**
* The socket for the server connection.
* @type resource
* @var resource
*/
protected $smtp_conn;
/**
* Error information, if any, for the last SMTP command.
* @type array
* @var array
*/
protected $error = array(
'error' => '',
@ -170,7 +181,7 @@ class SMTP
/**
* The reply the server sent to us for HELO.
* If null, no HELO string has yet been received.
* @type string|null
* @var string|null
*/
protected $helo_rply = null;
@ -181,13 +192,13 @@ class SMTP
* represents the server name. In case of HELO it is the only element of the array.
* Other values can be boolean TRUE or an array containing extension options.
* If null, no HELO/EHLO string has yet been received.
* @type array|null
* @var array|null
*/
protected $server_caps = null;
/**
* The most recent reply received from the server.
* @type string
* @var string
*/
protected $last_reply = '';
@ -206,7 +217,7 @@ class SMTP
}
//Avoid clash with built-in function names
if (!in_array($this->Debugoutput, array('error_log', 'html', 'echo')) and is_callable($this->Debugoutput)) {
call_user_func($this->Debugoutput, $str, $this->do_debug);
call_user_func($this->Debugoutput, $str, $level);
return;
}
switch ($this->Debugoutput) {
@ -272,8 +283,8 @@ class SMTP
$errstr = '';
if ($streamok) {
$socket_context = stream_context_create($options);
//Suppress errors; connection failures are handled at a higher level
$this->smtp_conn = @stream_socket_client(
set_error_handler(array($this, 'errorHandler'));
$this->smtp_conn = stream_socket_client(
$host . ":" . $port,
$errno,
$errstr,
@ -281,12 +292,14 @@ class SMTP
STREAM_CLIENT_CONNECT,
$socket_context
);
restore_error_handler();
} else {
//Fall back to fsockopen which should work in more places, but is missing some features
$this->edebug(
"Connection: stream_socket_client not available, falling back to fsockopen",
self::DEBUG_CONNECTION
);
set_error_handler(array($this, 'errorHandler'));
$this->smtp_conn = fsockopen(
$host,
$port,
@ -294,6 +307,7 @@ class SMTP
$errstr,
$timeout
);
restore_error_handler();
}
// Verify we connected properly
if (!is_resource($this->smtp_conn)) {
@ -336,11 +350,22 @@ class SMTP
if (!$this->sendCommand('STARTTLS', 'STARTTLS', 220)) {
return false;
}
//Allow the best TLS version(s) we can
$crypto_method = STREAM_CRYPTO_METHOD_TLS_CLIENT;
//PHP 5.6.7 dropped inclusion of TLS 1.1 and 1.2 in STREAM_CRYPTO_METHOD_TLS_CLIENT
//so add them back in manually if we can
if (defined('STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT')) {
$crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT;
$crypto_method |= STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT;
}
// Begin encrypted connection
if (!stream_socket_enable_crypto(
$this->smtp_conn,
true,
STREAM_CRYPTO_METHOD_TLS_CLIENT
$crypto_method
)) {
return false;
}
@ -356,7 +381,7 @@ class SMTP
* @param string $authtype The auth type (PLAIN, LOGIN, NTLM, CRAM-MD5, XOAUTH2)
* @param string $realm The auth realm for NTLM
* @param string $workstation The auth workstation for NTLM
* @param null|OAuth $OAuth An optional OAuth instance (@see PHPMailerOAuth)
* @param null|OAuth $OAuth An optional OAuth instance (@see PHPMailerOAuth)
* @return bool True if successfully authenticated.* @access public
*/
public function authenticate(
@ -389,7 +414,7 @@ class SMTP
);
if (empty($authtype)) {
foreach (array('LOGIN', 'CRAM-MD5', 'NTLM', 'PLAIN', 'XOAUTH2') as $method) {
foreach (array('CRAM-MD5', 'LOGIN', 'PLAIN', 'NTLM', 'XOAUTH2') as $method) {
if (in_array($method, $this->server_caps['AUTH'])) {
$authtype = $method;
break;
@ -463,7 +488,7 @@ class SMTP
$temp = new stdClass;
$ntlm_client = new ntlm_sasl_client_class;
//Check that functions are available
if (!$ntlm_client->Initialize($temp)) {
if (!$ntlm_client->initialize($temp)) {
$this->setError($temp->error);
$this->edebug(
'You need to enable some modules in your php.ini file: '
@ -473,7 +498,7 @@ class SMTP
return false;
}
//msg1
$msg1 = $ntlm_client->TypeMsg1($realm, $workstation); //msg1
$msg1 = $ntlm_client->typeMsg1($realm, $workstation); //msg1
if (!$this->sendCommand(
'AUTH NTLM',
@ -492,7 +517,7 @@ class SMTP
$password
);
//msg3
$msg3 = $ntlm_client->TypeMsg3(
$msg3 = $ntlm_client->typeMsg3(
$ntlm_res,
$username,
$realm,
@ -736,7 +761,7 @@ class SMTP
protected function parseHelloFields($type)
{
$this->server_caps = array();
$lines = explode("\n", $this->last_reply);
$lines = explode("\n", $this->helo_rply);
foreach ($lines as $n => $s) {
//First 4 chars contain response code followed by - or space
@ -814,15 +839,15 @@ class SMTP
* Sets the TO argument to $toaddr.
* Returns true if the recipient was accepted false if it was rejected.
* Implements from rfc 821: RCPT <SP> TO:<forward-path> <CRLF>
* @param string $toaddr The address the message is being sent to
* @param string $address The address the message is being sent to
* @access public
* @return boolean
*/
public function recipient($toaddr)
public function recipient($address)
{
return $this->sendCommand(
'RCPT TO',
'RCPT TO:<' . $toaddr . '>',
'RCPT TO:<' . $address . '>',
array(250, 251)
);
}
@ -841,9 +866,9 @@ class SMTP
/**
* Send a command to an SMTP server and check its return code.
* @param string $command The command name - not sent to the server
* @param string $command The command name - not sent to the server
* @param string $commandstring The actual command to send
* @param integer|array $expect One or more expected integer success codes
* @param integer|array $expect One or more expected integer success codes
* @access protected
* @return boolean True on success.
*/
@ -853,6 +878,11 @@ class SMTP
$this->setError("Called $command without being connected");
return false;
}
//Reject line breaks in all commands
if (strpos($commandstring, "\n") !== false or strpos($commandstring, "\r") !== false) {
$this->setError("Command '$command' contained line breaks");
return false;
}
$this->client_send($commandstring . self::CRLF);
$this->last_reply = $this->get_lines();
@ -1173,4 +1203,47 @@ class SMTP
{
return $this->Timeout;
}
/**
* Reports an error number and string.
* @param integer $errno The error number returned by PHP.
* @param string $errmsg The error message returned by PHP.
*/
protected function errorHandler($errno, $errmsg)
{
$notice = 'Connection: Failed to connect to server.';
$this->setError(
$notice,
$errno,
$errmsg
);
$this->edebug(
$notice . ' Error number ' . $errno . '. "Error notice: ' . $errmsg,
self::DEBUG_CONNECTION
);
}
/**
* Will return the ID of the last smtp transaction based on a list of patterns provided
* in SMTP::$smtp_transaction_id_patterns.
* If no reply has been received yet, it will return null.
* If no pattern has been matched, it will return false.
* @return bool|null|string
*/
public function getLastTransactionID()
{
$reply = $this->getLastReply();
if (empty($reply)) {
return null;
}
foreach($this->smtp_transaction_id_patterns as $smtp_transaction_id_pattern) {
if(preg_match($smtp_transaction_id_pattern, $reply, $matches)) {
return $matches[1];
}
}
return false;
}
}

View File

@ -10,34 +10,138 @@
* If no refresh token is obtained when running this file, revoke access to your app
* using link: https://accounts.google.com/b/0/IssuedAuthSubTokens and run the script again.
* This script requires PHP 5.4 or later
* PHP Version 5.4
*/
namespace League\OAuth2\Client\Provider;
require 'vendor/autoload.php';
use League\OAuth2\Client\Provider\Exception\IdentityProviderException;
use League\OAuth2\Client\Token\AccessToken;
use League\OAuth2\Client\Tool\BearerAuthorizationTrait;
use Psr\Http\Message\ResponseInterface;
session_start();
//If this automatic URL doesn't work, set it yourself manually
$redirectUri = isset($_SERVER['HTTPS']) ? 'https://' : 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
//$redirectUri = 'http://localhost/phpmailer/get_oauth_token.php';
//These details obtained are by setting up app in Google developer console.
$clientId = 'RANDOMCHARS-----duv1n2.apps.googleusercontent.com';
$clientSecret = 'RANDOMCHARS-----lGyjPcRtvP';
//All details obtained by setting up app in Google developer console.
class Google extends AbstractProvider
{
use BearerAuthorizationTrait;
const ACCESS_TOKEN_RESOURCE_OWNER_ID = 'id';
/**
* @var string If set, this will be sent to google as the "access_type" parameter.
* @link https://developers.google.com/accounts/docs/OAuth2WebServer#offline
*/
protected $accessType;
/**
* @var string If set, this will be sent to google as the "hd" parameter.
* @link https://developers.google.com/accounts/docs/OAuth2Login#hd-param
*/
protected $hostedDomain;
/**
* @var string If set, this will be sent to google as the "scope" parameter.
* @link https://developers.google.com/gmail/api/auth/scopes
*/
protected $scope;
public function getBaseAuthorizationUrl()
{
return 'https://accounts.google.com/o/oauth2/auth';
}
public function getBaseAccessTokenUrl(array $params)
{
return 'https://accounts.google.com/o/oauth2/token';
}
public function getResourceOwnerDetailsUrl(AccessToken $token)
{
return ' ';
}
protected function getAuthorizationParameters(array $options)
{
if (is_array($this->scope)) {
$separator = $this->getScopeSeparator();
$this->scope = implode($separator, $this->scope);
}
$params = array_merge(
parent::getAuthorizationParameters($options),
array_filter([
'hd' => $this->hostedDomain,
'access_type' => $this->accessType,
'scope' => $this->scope,
// if the user is logged in with more than one account ask which one to use for the login!
'authuser' => '-1'
])
);
return $params;
}
protected function getDefaultScopes()
{
return [
'email',
'openid',
'profile',
];
}
protected function getScopeSeparator()
{
return ' ';
}
protected function checkResponse(ResponseInterface $response, $data)
{
if (!empty($data['error'])) {
$code = 0;
$error = $data['error'];
if (is_array($error)) {
$code = $error['code'];
$error = $error['message'];
}
throw new IdentityProviderException($error, $code, $data);
}
}
protected function createResourceOwner(array $response, AccessToken $token)
{
return new GoogleUser($response);
}
}
//Set Redirect URI in Developer Console as [https/http]://<yourdomain>/<folder>/get_oauth_token.php
$provider = new League\OAuth2\Client\Provider\Google (
[
$provider = new Google(
array(
'clientId' => $clientId,
'clientSecret' => $clientSecret,
'redirectUri' => $redirectUri,
'scopes' => ['https://mail.google.com/'],
'accessType' => 'offline'
]
'scope' => array('https://mail.google.com/'),
'accessType' => 'offline'
)
);
if (!isset($_GET['code'])) {
// If we don't have an authorization code then get one
$authUrl = $provider->getAuthorizationUrl();
$_SESSION['oauth2state'] = $provider->state;
$_SESSION['oauth2state'] = $provider->getState();
header('Location: ' . $authUrl);
exit;
// Check given state against previously stored one to mitigate CSRF attack
@ -45,20 +149,14 @@ if (!isset($_GET['code'])) {
unset($_SESSION['oauth2state']);
exit('Invalid state');
} else {
$provider->accessType = 'offline';
// Try to get an access token (using the authorization code grant)
$token = $provider->getAccessToken(
'authorization_code',
[
array(
'code' => $_GET['code']
]
)
);
// Use this to interact with an API on the users behalf
// echo $token->accessToken.'<br>';
// Use this to get a new access token if the old one expires
echo 'Refresh Token: ' . $token->refreshToken;
// Unix timestamp of when the token will expire, and need refreshing
// echo $token->expires;
echo 'Refresh Token: ' . $token->getRefreshToken();
}

View File

@ -203,8 +203,14 @@ class e_session
if(!defined('E107_INSTALL'))
{
$systemSaveMethod = ini_get('session.save_handler');
// e107::getDebug()->log("Save Method:".$systemSaveMethod);
$saveMethod = (!empty($systemSaveMethod)) ? $systemSaveMethod : 'files';
$config['SavePath'] = e107::getPref('session_save_path', false); // FIXME - new pref
$config['SaveMethod'] = e107::getPref('session_save_method', 'files'); // FIXME - new pref
$config['SaveMethod'] = e107::getPref('session_save_method', $saveMethod); // FIXME - new pref
$options['lifetime'] = (integer) e107::getPref('session_lifetime', 86400); //
$options['path'] = e107::getPref('session_cookie_path', ''); // FIXME - new pref
$options['secure'] = e107::getPref('ssl_enabled', false); //
@ -458,7 +464,7 @@ class e_session
default:
if(!isset($_SESSION))
{
session_module_name('files');
session_module_name($this->_sessionSaveMethod);
}
break;
}
@ -887,11 +893,11 @@ class e_core_session extends e_session
// $details .= print_r($_POST,true);
// $details .= "\n_GET:\n";
// $details .= print_r($_GET,true);
if($pref['plug_installed'])
/* if($pref['plug_installed'])
{
$details .= "\nPlugins:\n";
$details .= print_r($pref['plug_installed'],true);
}
}*/
$details .= "die = ".($die == true ? 'true' : 'false')."\n\n---------------------------------\n\n";

View File

@ -2,14 +2,10 @@
/*
* e107 website system
*
* Copyright (C) 2008-2009 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
*
*
* $URL$
* $Id$
*/
if (!defined('e107_INIT')) { exit; }
@ -683,8 +679,8 @@ class e_navigation
$this->admin_cat['title'][1] = LAN_SETTINGS;
$this->admin_cat['id'][1] = 'setMenu';
$this->admin_cat['img'][1] = $tp->toGlyph('e-settings-16');
$this->admin_cat['lrg_img'][1] = $tp->toGlyph('e-settings-32');
$this->admin_cat['img'][1] = 'fa-cogs.glyph';
$this->admin_cat['lrg_img'][1] = 'e-settings-32.glyph';
$this->admin_cat['sort'][1] = true;
/*
@ -701,26 +697,26 @@ i.e-cat_users-32{ background-position: -555px 0; width: 32px; height: 32px; }
$this->admin_cat['title'][2] = ADLAN_CL_2;
$this->admin_cat['id'][2] = 'userMenu';
$this->admin_cat['img'][2] = $tp->toGlyph('e-cat_users-16');
$this->admin_cat['img'][2] = 'fa-users.glyph'; // $tp->toGlyph('e-cat_users-16');
$this->admin_cat['lrg_img'][2] = $tp->toGlyph('e-cat_users-32');
$this->admin_cat['sort'][2] = true;
$this->admin_cat['title'][3] = ADLAN_CL_3;
$this->admin_cat['id'][3] = 'contMenu';
$this->admin_cat['img'][3] = $tp->toGlyph('e-cat_content-16');
$this->admin_cat['img'][3] = 'file-text-o.glyph'; // $tp->toGlyph('e-cat_content-16');
$this->admin_cat['lrg_img'][3] = $tp->toGlyph('e-cat_content-32');
$this->admin_cat['sort'][3] = true;
$this->admin_cat['title'][4] = ADLAN_CL_6;
$this->admin_cat['id'][4] = 'toolMenu';
$this->admin_cat['img'][4] = $tp->toGlyph('e-cat_tools-16');
$this->admin_cat['img'][4] = 'wrench.glyph'; // $tp->toGlyph('e-cat_tools-16');
$this->admin_cat['lrg_img'][4] = $tp->toGlyph('e-cat_tools-32');
$this->admin_cat['sort'][4] = true;
// Manage
$this->admin_cat['title'][5] = LAN_MANAGE;
$this->admin_cat['id'][5] = 'managMenu';
$this->admin_cat['img'][5] = $tp->toGlyph('e-manage-16');
$this->admin_cat['img'][5] = 'fa-desktop.glyph' ; // $tp->toGlyph('e-manage-16');
$this->admin_cat['lrg_img'][5] = $tp->toGlyph('e-manage-32');
$this->admin_cat['sort'][5] = TRUE;
@ -728,7 +724,7 @@ i.e-cat_users-32{ background-position: -555px 0; width: 32px; height: 32px; }
{
$this->admin_cat['title'][6] = ADLAN_CL_7;
$this->admin_cat['id'][6] = 'plugMenu';
$this->admin_cat['img'][6] = $tp->toGlyph('e-cat_plugins-16');
$this->admin_cat['img'][6] = 'fa-puzzle-piece.glyph'; // $tp->toGlyph('e-cat_plugins-16');
$this->admin_cat['lrg_img'][6] = $tp->toGlyph('e-cat_plugins-32');
$this->admin_cat['sort'][6] = false;
}
@ -737,7 +733,7 @@ i.e-cat_users-32{ background-position: -555px 0; width: 32px; height: 32px; }
// Misc.
$this->admin_cat['title'][6] = ADLAN_CL_8;
$this->admin_cat['id'][6] = 'miscMenu';
$this->admin_cat['img'][6] = ''; // E_16_CAT_MISC;
$this->admin_cat['img'][6] = 'fa-puzzle-piece.glyph'; ; // E_16_CAT_MISC;
$this->admin_cat['lrg_img'][6] = ''; // E_32_CAT_MISC;
$this->admin_cat['sort'][6] = TRUE;
}
@ -745,7 +741,7 @@ i.e-cat_users-32{ background-position: -555px 0; width: 32px; height: 32px; }
//About menu - No 20 - leave space for user-categories.
$this->admin_cat['title'][20] = LAN_ABOUT;
$this->admin_cat['id'][20] = 'aboutMenu';
$this->admin_cat['img'][20] = ''; // E_16_CAT_ABOUT;//E_16_NAV_DOCS
$this->admin_cat['img'][20] = 'fa-info-circle.glyph'; // E_16_CAT_ABOUT;//E_16_NAV_DOCS
$this->admin_cat['lrg_img'][20] = ''; // E_32_CAT_ABOUT;
$this->admin_cat['sort'][20] = false;

View File

@ -272,6 +272,7 @@ class e_theme
$themeArray['path'] = $path;
$themeArray['layouts'] = $lays;
$themeArray['description'] = $themeArray['info'];
if(file_exists(e_THEME.$path."/preview.jpg"))
{
@ -330,6 +331,7 @@ class e_theme
$vars['preview'] = varset($vars['screenshots']['image']);
$vars['thumbnail'] = varset($vars['preview'][0]);
if(!empty($vars['themePrefs']))
{
@ -341,7 +343,7 @@ class e_theme
}
unset($vars['authorEmail'], $vars['authorUrl'], $vars['xhtmlCompliant'], $vars['cssCompliant'], $vars['description'],$vars['screenshots']);
unset($vars['authorEmail'], $vars['authorUrl'], $vars['xhtmlCompliant'], $vars['cssCompliant'], $vars['screenshots']);
// Compile layout information into a more usable format.
@ -731,6 +733,7 @@ class themeHandler
function getThemeInfo($file)
{
// return e_theme::getThemeInfo($file);
$mes = e107::getMessage();
$reject = array('e_.*');
@ -1315,7 +1318,6 @@ class themeHandler
$price = (!empty($theme['price'])) ? "<span class='label label-primary'><i class='icon-shopping-cart icon-white'></i> ".$theme['price']."</span>" : "<span class='label label-success'>".TPVLAN_76."</span>";
$text = "<table class='table table-striped'>";
@ -1608,7 +1610,7 @@ class themeHandler
$previewPath = e_BASE."index.php?themepreview.".$theme['id'];
}
$thumbnail = "<img src='".$thumbPath."' style='width:100%; max-height:200px;' alt='' />";
$thumbnail = "<img src='".$thumbPath."' style='max-width:100%' alt='' />";
if($_GET['mode'] == 'online')
@ -2345,8 +2347,8 @@ class themeHandler
if($core->save())
{
$mes->addDebug(MENLAN_31.": ".$deflayout);
$mes->addDebug(MENLAN_56.": ".print_a($customPages,true));
$mes->addDebug("Default Layout: ".$deflayout);
$mes->addDebug("Custom Pages: ".print_a($customPages,true));
$med = e107::getMedia();
$med->import('_common_image', e_THEME.$name, "^.*?logo.*?(\.png|\.jpeg|\.jpg|\.JPG|\.GIF|\.PNG)$");

View File

@ -2,7 +2,7 @@
/*
* e107 website system
*
* Copyright (C) 2008-2013 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
@ -1509,7 +1509,7 @@ class user_class_admin extends user_class
if ($this->class_tree[$listnum]['userclass_type'] == UC_TYPE_GROUP)
{
$name_line .= '<b>'.$this->class_tree[$listnum]['userclass_name'].'</b> '.UCSLAN_84; // Highlight groups
$name_line .= '<b>'.$this->class_tree[$listnum]['userclass_name'].'</b> ('.UCSLAN_81.').'; // Highlight groups
}
else
{

View File

@ -114,6 +114,7 @@ define("LAN_FILES","Files");
define("LAN_SIZE", "Size");
define("LAN_VERSION", "Version");
define("LAN_DOWNLOAD", "Download");
define("LAN_WEBSITE", "Website");
define("LAN_COMMENTS", "Comments");
define("LAN_LOCATION", "Location");
define("LAN_NO_RECORDS_FOUND","No Records Found");
@ -121,6 +122,7 @@ define("LAN_RATING", "Rating");
define("LAN_IMAGE","Image");
define("LAN_ABOUT", "About");
define("LAN_TITLE", "Title");
define("LAN_MESSAGE", "Message");
define("LAN_USER", "User");
define("LAN_EMAIL","Email address");
define("LAN_WROTE", "wrote"); // as in John wrote.." ";

View File

@ -16,7 +16,7 @@ if (!getperms("2"))
exit;
}
if(e_DEBUG_MENUMANAGER === true)
if(!deftrue("e_DEBUG_MENUMANAGER"))
{
return;
}

View File

@ -2,19 +2,14 @@
/*
* e107 website system
*
* Copyright (C) 2008-2009 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
*
*
* $Source: /cvs_backup/e107_0.8/e107_languages/English/admin/help/wmessage.php,v $
* $Revision$
* $Date$
* $Author$
*/
if (!defined('e107_INIT')) { exit; }
$text = "This page allows you to set a message that will appear at the top of your front page all the time it's activated. You can set a different message for guests, registered/logged-in members and administrators.";
$ns -> tablerender("WMessage Help", $text);
$text = WMLAN_13 ;
$ns -> tablerender( WMLAN_12, $text);

View File

@ -197,6 +197,7 @@ define("ADLAN_170", "These stats are for demonstration purposes only.");
define("ADLAN_171", "Install Site Stats Plugin");
define("ADLAN_185", "Toggle Sidebar");
define("ADLAN_186", "The following old files can be safely deleted from your system:");
// define("ADLAN_CL_1", "Settings");
define("ADLAN_CL_2", "Users");
@ -238,6 +239,7 @@ Below is the list of files that could potentially be malicious:");
define("LAN_CREATE","Create");
define("LAN_MANAGE","Manage");
define("LAN_UPDATE","Update");
define("LAN_INSTALLED","Installed");//TODO elsewhere
define("LAN_LAST_UPDATED","Last Updated");
define("LAN_UPDATE_AVAILABLE","Update Available");
define("LAN_ADD", "Add");
@ -295,6 +297,7 @@ define("LAN_PLUGIN","Plugin");
define("LAN_PLUGIN_FOLDER","Plugin Folder");
define("LAN_THEMES","Themes");
define("LAN_THEME","Theme");
define("LAN_CORE","Core");
define("LAN_LATEST_e107_NEWS","Latest e107 News");
define("LAN_WEBSITE_STATUS","Website Status");
define("LAN_STATS","Stats");
@ -359,7 +362,7 @@ define("LAN_UNCHECKALL", "Uncheck All");
define("LAN_DELCHECKED", "Delete Checked");
define("LAN_USERCLASS", "Userclass");
define("LAN_MANAGER", "Manager");
define("LAN_HELP", "Help");
define("LAN_CUSTOM", "Custom");
@ -385,6 +388,7 @@ define("LAN_ID", "ID");
define("LAN_VISIBILITY", "Visibility");
define("LAN_VISIBLE_TO", "Visible To");
define("LAN_PARENT", "Parent");
define("LAN_ICON", "Icon");
define("LAN_LOADING", "Loading...");
@ -402,7 +406,7 @@ define("LAN_TEMPLATES","Templates");
define("LAN_CATEGORIES", "Categories");
define("LAN_DEMO_FORBIDDEN", "Changes on this page are not possible in demo mode.");
define("LAN_COPYRIGHT", "Copyright");
define("LAN_MANAGER", "Manage Permissions");
define("LAN_MANAGEPERMS", "Manage Permissions");
define("LAN_PING", "Ping");
define("LAN_START", "Start");
define("LAN_END", "End");
@ -486,24 +490,29 @@ define("LAN_PERSONALIZE_MENUS", "Personalize Menus");
define("LAN_LATEST_COMMENTS", "Latest Comments");
define("LAN_COMMENTS_ALLOWED", "Comments Allowed");
define("LAN_PERSONALIZE", "Personalize");
define("LAN_SELECT_COLUMNS_TO_DISPLAY", "Select columns to display");
define("LAN_DISPLAY_COLUMNS", "Display Columns");
//define("LAN_SELECT_COLUMNS_TO_DISPLAY", "Select columns to display"); // Moved to lan_form_handler.php
//define("LAN_DISPLAY_COLUMNS", "Display Columns"); // Moved to lan_form_handler.php
define("LAN_SETTINGS_NOT_SAVED_NO_CHANGES_MADE", "Settings not saved as no changes were made.");
define("LAN_DASHBOARD_LAYOUT", "Dashboard Layout");
define("LAN_AFTER_SUBMIT", "After submit:");
//define("LAN_AFTER_SUBMIT", "After submit:"); // Moved to lan_form_handler.php
define("LAN_UNAVAILABLE", "Unavailable");
define("LAN_READY_UP_FOLDER_FIELDS", "Ready to use upload form fields, optional - file list view");
//define("LAN_READY_UP_FOLDER_FIELDS", "Ready to use upload form fields, optional - file list view"); // Not used only debug
define("LAN_NO_LABEL_PROVIDED", "No Label Provided");
define("LAN_NOT_FOUND", "Not Found!");
define("LAN_QUICK_VIEW", "Quick View");
define("LAN_GO_TO_USER_PROFILE", "Go to user profile");
define("LAN_MULTI_LANGUAGE_FIELD", "Multi-language field");
define("LAN_GO_TO_LIST", "go to list");
define("LAN_CREATE_ANOTHER", "create another");
define("LAN_EDIT_CURRENT", "edit current");
//define("LAN_QUICK_VIEW", "Quick View"); // Moved to lan_form_handler.php
//define("LAN_GO_TO_USER_PROFILE", "Go to user profile"); // Moved to lan_form_handler.php
//define("LAN_MULTI_LANGUAGE_FIELD", "Multi-language field"); // Moved to lan_form_handler.php
//define("LAN_GO_TO_LIST", "go to list"); // Moved to lan_form_handler.php
//define("LAN_CREATE_ANOTHER", "create another"); // Moved to lan_form_handler.php
//define("LAN_EDIT_CURRENT", "edit current"); // Moved to lan_form_handler.php
define("LAN_MAINTENANCE", "Maintenance");
define("LAN_RETURN_TO_FRONT_PANEL", "Return to Front Panel");
define("LAN_CHANGE_LANGUAGE", "Change Language");
define("LAN_NEWER_VERSION_OF_X", "A newer version of the [x] [y] is available for download."); // x= Name y = Theme | Plugin
define("LAN_SUBJECT", "Subject");
define("LAN_ITEM", "Item");
define("LAN_LOCK", "Lock");
define("LAN_SYSTEM_USER", "System user");
define("LAN_ENGINE", "Engine");

View File

@ -1,10 +1,14 @@
<?php
/*
* Copyright (C) 2008-2013 e107 Inc (e107.org), Licensed under GNU GPL (http://www.gnu.org/licenses/gpl.txt)
* e107 website system
*
* Admin Language File
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
*/
* Language file - Site Links Admin
*
*/
// define("LCLAN_1", "Options Saved");
// define("LCLAN_2", "Saving link to database.");
@ -14,7 +18,7 @@
// define("LCLAN_8", "Site Navigation Links");
// define("LCLAN_12", "Link Rendertype");
// define("LCLAN_13", "Render");
define("LCLAN_15", "Link Name");
//define("LCLAN_15", "Link Name");//LAN_NAME
// define("LCLAN_16", "Link URL");
// define("LCLAN_17", "Link Description");
// define("LCLAN_18", "Link Button / Icon");
@ -57,7 +61,7 @@ define("LCLAN_81", "Sub-menus will display only after clicking their parent. (Li
// define("LCLAN_102", "New 600x400");
// define("LCLAN_103", "New 800x600");
define("LCLAN_104", "Sublink of");
//define("LCLAN_104", "Sublink of");//LAN_PARENT
define("LCLAN_105", "Function");
define("LCLAN_106", "Owned by");
define("LCLAN_107", "Enable to override URL with a dynamically created Search-Engine-Friendly URL");
@ -78,4 +82,4 @@ define("LINKLAN_9", "Download Categories");
// define("LINKLAN_10", "Create Sublink");
// define('LINKLAN_11', 'Nothing changed - not updated');
?>
?>

View File

@ -1,108 +1,112 @@
<?php
/*
+ ----------------------------------------------------------------------------+
| e107 website system - Language File.
|
| $Source: /cvs_backup/e107_0.8/e107_languages/English/admin/lan_userclass2.php,v $
| $Revision$
| $Date$
| $Author$
+----------------------------------------------------------------------------+
* e107 website system
*
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* Administration Area - User classes
*
*/
//define("UCSLAN_1", "Cleared all users from class.");
//define("UCSLAN_2", "Class users updated.");
define("UCSLAN_3", "Class deleted.");
// define("UCSLAN_4", "Please tick the confirm box to delete this user class"); currently not in use
define("UCSLAN_5", "Class updated.");
define("UCSLAN_6", "Class saved to database.");
define("UCSLAN_7", "No user classes yet.");
define("UCSLAN_8", "Existing Classes");
define("UCSLAN_9", "No Icon");
//define("UCSLAN_3", "Class deleted.");//NOT USED
//define("UCSLAN_4", "Please tick the confirm box to delete this user class"); currently not in use
//define("UCSLAN_5", "Class updated.");//LAN_UPDATED.': '.LAN_USERCLASS
//define("UCSLAN_6", "Class saved to database.");//LAN_UPDATED.': '.LAN_USERCLASS
//define("UCSLAN_7", "No user classes yet.");//LAN_NO_RECORDS_FOUND
//define("UCSLAN_8", "Existing Classes");//NOT USED
//define("UCSLAN_9", "No Icon");//NOT USED
define("UCSLAN_10", "Class not deleted - it is a core class, or is used in the definition of another class, as either parent or edit class");
define("UCSLAN_11", "tick to confirm");
define("UCSLAN_12", "Class Name");
define("UCSLAN_13", "Class Description");
define("UCSLAN_14", "Update User Class");
define("UCSLAN_15", "Create New Class");
//define("UCSLAN_11", "tick to confirm");//NOT USED
//define("UCSLAN_12", "Class Name");//LAN_NAME
//define("UCSLAN_13", "Class Description");//LAN_DESCRIPTION
//define("UCSLAN_14", "Update User Class");//LAN_UPDATE
//define("UCSLAN_15", "Create New Class");//LAN_CREATE
//define("UCSLAN_16", "Assign users to class");
//define("UCSLAN_17", "Remove");
define("UCSLAN_18", "Clear Class");
//define("UCSLAN_18", "Clear Class");//NOT USED
//define("UCSLAN_19", "Assign users to");
define("UCSLAN_20", "class");
define("UCSLAN_21", "User Class Settings");
//define("UCSLAN_20", "class");//NOT USED
//define("UCSLAN_21", "User Class Settings");//LAN_SETTINGS
//define("UCSLAN_22", "Users - click to move ...");
//define("UCSLAN_23", "Users in this class ...");
define("UCSLAN_24", "Class Manager");
define("UCSLAN_25", "Create/Edit Classes");
define("UCSLAN_26", "Class Membership");
define("UCSLAN_27", "Debug Help");
//define("UCSLAN_24", "Class Manager");//LAN_MANAGER
//define("UCSLAN_25", "Create/Edit Classes");//NOT USED
//define("UCSLAN_26", "Class Membership");//NOT USED
//define("UCSLAN_27", "Debug Help");//NOT USED
//define("UCSLAN_28", "Modify Class Membership");
define("UCSLAN_29", "That class must not be deleted");
//define("UCSLAN_29", "That class must not be deleted");//NOT USED
define("UCSLAN_30", "Short name displayed in selectors");
define("UCSLAN_31", "Information about applicability of class");
define("UCSLAN_32", "Users in this class can add/remove themselves from the class being edited");
define("UCSLAN_33", "Determines which users can see this class in drop-down lists");
define("UCSLAN_34", "Class Visibility");
define("UCSLAN_35", "Class Parent");
//define("UCSLAN_34", "Class Visibility");//LAN_VISIBILITY
//define("UCSLAN_35", "Class Parent");//LAN_PARENT
define("UCSLAN_36", "If the top of the tree is 'No One', permissions increase towards the top of the tree<br />If the top of the tree is 'Everyone', permissions increase as you go down the tree");
define("UCSLAN_37", "You must enter a name for the class");
define("UCSLAN_38", "Initial User Class");
define("UCSLAN_39", "No classes which can be set");
define("UCSLAN_40", "Set initial classes");
define("UCSLAN_41", "Settings updated");
define("UCSLAN_42", "Nothing changed - not updated");
//define("UCSLAN_42", "Nothing changed - not updated");//LAN_NOCHANGE_NOTSAVED
define("UCSLAN_43", "Existing classes: ");
define("UCSLAN_44", "None");
//define("UCSLAN_44", "None");//LAN_NONE
define("UCSLAN_45", "Point at which classes set:");
define("UCSLAN_46", "(ignored if no verification)");
define("UCSLAN_47", "Initial Signup");
define("UCSLAN_48", "Verification by email or admin");
define("UCSLAN_49", "These classes are set for any newly signed up user - either immediately, or once their site membership has been verified");
define("UCSLAN_50", "Options/Setup");
define("UCSLAN_51", "User Class Functions");
define("UCSLAN_52", "Setup Options");
define("UCSLAN_53", "Caution! Only use these options if you understand what they do");
//define("UCSLAN_50", "Options/Setup");//NOT USED
//define("UCSLAN_51", "User Class Functions");//NOT USED
//define("UCSLAN_52", "Setup Options");//LAN_OPTIONS
define("UCSLAN_53", "Caution! Only use these options when requested by support.");
define("UCSLAN_54", "Set a default user hierarchy");
define("UCSLAN_55", "Clear the user hierarchy");
define("UCSLAN_56", "(this sets a 'flat' user class structure)");
define("UCSLAN_57", "(the hierarchy can be modified later)");
define("UCSLAN_58", "Execute");
define("UCSLAN_59", "Enable admin logging of user class edits");
define("UCSLAN_60", "User Class Configuration options");
define("UCSLAN_61", "User class setup");
//define("UCSLAN_59", "Enable admin logging of user class edits");//NOT USED
//define("UCSLAN_60", "User Class Configuration options");//NOT USED
//define("UCSLAN_61", "User class setup");//NOT USED
define("UCSLAN_62", "Create default class tree: ");
define("UCSLAN_63", "That class name already exists - please choose another");
define("UCSLAN_64", "completed");
define("UCSLAN_65", "Flatten user class hierarchy: ");
define("UCSLAN_66", "Confirm flatten user class hierarchy");
define("UCSLAN_67", "Confirm set default user class hierarchy");
define("UCSLAN_68", "Class Icon");
//define("UCSLAN_66", "Confirm flatten user class hierarchy");
//define("UCSLAN_67", "Confirm set default user class hierarchy");
//define("UCSLAN_68", "Class Icon");//LAN_ICON
define("UCSLAN_69", "Optional icon associated with class - directory ");
define("UCSLAN_70", "Rebuilding class hierarchy: ");
define("UCSLAN_71", "User Class Maintenance");
define("UCSLAN_72", "Rebuild class hierarchy ");
define("UCSLAN_73", "(This may be required if database corruption occurs)");
//userclass_class.php
define("UCSLAN_74", "Administrators and Moderators");
define("UCSLAN_75", "Registered and logged in members");
define("UCSLAN_76", "Site Administrators");
define("UCSLAN_77", "Main site Administrators");
define("UCSLAN_77", "Main Site Administrators");
define("UCSLAN_78", "Moderators for Forums and other areas");
define("UCSLAN_79", "Class Type");
//define("UCSLAN_79", "Class Type");
define("UCSLAN_80", "Standard");
define("UCSLAN_81", "Group");
define("UCSLAN_82", "A group brings together a number of individual classes");
define("UCSLAN_83", "Classes in group");
define("UCSLAN_84", " (Group)");
//define("UCSLAN_84", " (Group)");//UCSLAN_81
define("UCSLAN_85", "You have assigned all available classes; please reassign one which is not in use");
define("UCSLAN_86", "Some settings not allowed for admin classes - they have been set to defaults. ");
define("UCSLAN_87", "Recently joined users");
define("UCSLAN_88", "Identified search bots");
define("UCSLAN_89", "Checked classes are members of the group");
define("UCSLAN_90", "You can't edit certain system user classes!");
define("UCSLAN_91", "");
//define("UCSLAN_91", "");//NOT USED
define("UCSLAN_UPDATE", "Update");
//define("UCSLAN_UPDATE", "Update");//NOT USED ... LAN_UPDATE
?>

View File

@ -2,16 +2,12 @@
/*
* e107 website system
*
* Copyright (C) 2008-2009 e107 Inc (e107.org)
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* Language file - user admin
*
* $Source: /cvs_backup/e107_0.8/e107_languages/English/admin/lan_users.php,v $
* $Revision$
* $Date$
* $Author$
*
*/
define("USRLAN_1", "Options Saved.");
@ -279,16 +275,18 @@ define("USRLAN_251", "Leave blank for no change");
define("USRLAN_252", "Resend account activation email to unactivated users.");
define("USRLAN_253", "Older than");
define("USRLAN_254", "Reset all passwords");
define("USRLAN_255", "Notify User");
define("USRLAN_256", "Dear");
// These need review - there are duplicates above - they come from admin/lan_userclass.php.
// These need review - there are duplicates above - they come from admin/lan_userclass.php and are unconsistent with userclass defines. TODO LANS
define("UCSLAN_1", "Sending notification email to");
define("UCSLAN_2", "Updated Privileges");
define("UCSLAN_3", "Dear");
//define("UCSLAN_3", "Dear");//USRLAN_256
define("UCSLAN_4", "Your privileges have been updated at");
define("UCSLAN_5", "You now have access to the following area(s)");
define("UCSLAN_6", "Set class for user");
define("UCSLAN_7", "Set Classes");
define("UCSLAN_8", "Notify User");
//define("UCSLAN_8", "Notify User");//incorrect//USRLAN_255
define("UCSLAN_9", "Classes Updated.");
define("UCSLAN_10", "Regards,");
define("UCSLAN_11", "Class membership for user ID --UID-- changed to --CLASSES--");

View File

@ -1,14 +1,13 @@
<?php
/*
+ ----------------------------------------------------------------------------+
| e107 website system - Language File.
|
| $Source: /cvs_backup/e107_0.8/e107_languages/English/admin/lan_wmessage.php,v $
| $Revision$
| $Date$
| $Author$
+----------------------------------------------------------------------------+
*/
* e107 website system
*
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
*/
// define("WMGLAN_1", "Message for Guests");
// define("WMGLAN_2", "Message for Members");
// define("WMGLAN_3", "Message for Administrators");
@ -19,16 +18,20 @@
define("WMLAN_00","Welcome Messages");
//define("WMLAN_01","Create New Message");
define("WMLAN_02","Message");
//define("WMLAN_02","Message");//NOT_USED
//define("WMLAN_03","Visibility");
define("WMLAN_04","Message Text");
//define("WMLAN_04","Message Text");//LAN_MESSAGE
define("WMLAN_05","Enclose");
define("WMLAN_06","When enabled, the message will be rendered inside a box");
define("WMLAN_07","Override standard system to use {WMESSAGE} shortcode:");
// define("WMLAN_08","Preferences");
define("WMLAN_09","No welcome messages set yet");
define("WMLAN_10","Message Caption");
//define("WMLAN_09","No welcome messages set yet");//NOT USED
//define("WMLAN_10","Message Caption");//LAN_TITLE
?>
define("WMLAN_11","Enclosed with Carousel");
define("WMLAN_12","Welcome Message Help");
define("WMLAN_13","This page allows you to set a message that will appear at the top of your front page all the time it's activated. You can set a different message for guests, registered/logged-in members and administrators.");
?>

View File

@ -9,4 +9,19 @@
*/
define("LAN_EFORM_001", "");
define("LAN_EFORM_001", "Click on the avatar to change it");
define("LAN_EFORM_002", "Choose Avatar");
define("LAN_EFORM_003", "OR");
define("LAN_EFORM_004", "Choose this avatar");
define("LAN_EFORM_005", "No Avatars Available");
define("LAN_EFORM_006", "Admin-Only Notice: The folder [x] is empty. Upload some default avatars images to this folder for users to choose avatars from.");
define("LAN_EFORM_007", "Media Manager");
define("LAN_EFORM_008", "Select columns to display");
define("LAN_EFORM_009", "Display Columns");
define("LAN_EFORM_010", "Quick View");
define("LAN_EFORM_011", "Go to user profile");
define("LAN_EFORM_012", "Multi-language field");
define("LAN_EFORM_013", "go to list");
define("LAN_EFORM_014", "create another");
define("LAN_EFORM_015", "edit current");
define("LAN_EFORM_016", "After submit:");

View File

@ -1,38 +1,42 @@
<?php
/**
* @file
/*
* e107 website system
*
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* Language definitions for Library Manager.
*/
define('LAN_LIBRARY_MANAGER_01', 'The [x] library, which the [y] library depends on, is not installed.');
define('LAN_LIBRARY_MANAGER_02', 'The version [x] of the [y] library is not compatible with the [z] library.');
define('LAN_LIBRARY_MANAGER_03', 'The [x] library could not be found.');
define('LAN_LIBRARY_MANAGER_04', 'The version of the [x] library could not be detected.');
define('LAN_LIBRARY_MANAGER_05', 'The installed version [x] of the [y] library is not supported.');
define('LAN_LIBRARY_MANAGER_06', 'The [x] variant of the [y] library could not be found.');
define('LAN_LIBRARY_MANAGER_07', 'missing dependency');
define('LAN_LIBRARY_MANAGER_08', 'incompatible dependency');
define('LAN_LIBRARY_MANAGER_09', 'not found');
define('LAN_LIBRARY_MANAGER_10', 'not detected');
define('LAN_LIBRARY_MANAGER_11', 'not supported');
define("LAN_LIBRARY_MANAGER_01", "The [x] library, which the [y] library depends on, is not installed.");
define("LAN_LIBRARY_MANAGER_02", "The version [x] of the [y] library is not compatible with the [z] library.");
define("LAN_LIBRARY_MANAGER_03", "The [x] library could not be found.");
define("LAN_LIBRARY_MANAGER_04", "The version of the [x] library could not be detected.");
define("LAN_LIBRARY_MANAGER_05", "The installed version [x] of the [y] library is not supported.");
define("LAN_LIBRARY_MANAGER_06", "The [x] variant of the [y] library could not be found.");
define("LAN_LIBRARY_MANAGER_07", "missing dependency");
define("LAN_LIBRARY_MANAGER_08", "incompatible dependency");
//define("LAN_LIBRARY_MANAGER_09", "not found");//LAN_NOT_FOUND
define("LAN_LIBRARY_MANAGER_10", "not detected");
define("LAN_LIBRARY_MANAGER_11", "not supported");
define('LAN_LIBRARY_MANAGER_12', 'List');
define('LAN_LIBRARY_MANAGER_13', 'Library');
define('LAN_LIBRARY_MANAGER_14', 'Version');
define('LAN_LIBRARY_MANAGER_15', 'Homepage');
define('LAN_LIBRARY_MANAGER_16', 'Download');
define('LAN_LIBRARY_MANAGER_17', 'Installed');
define('LAN_LIBRARY_MANAGER_18', 'Status');
define('LAN_LIBRARY_MANAGER_19', 'Message');
define('LAN_LIBRARY_MANAGER_20', 'link');
define('LAN_LIBRARY_MANAGER_21', 'Provider');
define('LAN_LIBRARY_MANAGER_22', 'plugin');
define('LAN_LIBRARY_MANAGER_23', 'theme');
define('LAN_LIBRARY_MANAGER_24', 'core');
define('LAN_LIBRARY_MANAGER_25', 'Third-party libraries');
define('LAN_LIBRARY_MANAGER_26', 'No library found');
define('LAN_LIBRARY_MANAGER_27', 'Machine name: [x]');
//define("LAN_LIBRARY_MANAGER_12", "List");//NOT USED
define("LAN_LIBRARY_MANAGER_13", "Library");
//define("LAN_LIBRARY_MANAGER_14", "Version");//LAN_VERSION
//define("LAN_LIBRARY_MANAGER_15", "Homepage");//LAN_WEBSITE
//define("LAN_LIBRARY_MANAGER_16", "Download");//LAN_DOWNLOAD
//define("LAN_LIBRARY_MANAGER_17", "Installed");//LAN_INSTALLED //NOT USED but is elsewhere
//define("LAN_LIBRARY_MANAGER_18", "Status");//LAN_STATUS
//define("LAN_LIBRARY_MANAGER_19", "Message");//LAN_MESSAGE
//define("LAN_LIBRARY_MANAGER_20", "link");//NOT USED
define("LAN_LIBRARY_MANAGER_21", "Provider");
//define("LAN_LIBRARY_MANAGER_22", "plugin");//LAN_PLUGIN
//define("LAN_LIBRARY_MANAGER_23", "theme");//LAN_THEME
//define("LAN_LIBRARY_MANAGER_24", "core");//LAN_CORE
define("LAN_LIBRARY_MANAGER_25", "Third-party libraries");
//define("LAN_LIBRARY_MANAGER_26", "No library found");//LAN_NOT_FOUND
define("LAN_LIBRARY_MANAGER_27", "Machine name: [x]");
define('LAN_LIBRARY_MANAGER_28', 'Library path: [x]');
define('LAN_LIBRARY_MANAGER_29', 'Library path');
define('LAN_LIBRARY_MANAGER_30', 'CDN settings');

View File

@ -1,27 +1,26 @@
<?php
/*
+ ----------------------------------------------------------------------------+
| e107 website system - Language File.
|
| $Source: /cvs_backup/e107_0.8/e107_languages/English/lan_print.php,v $
| $Revision$
| $Date$
| $Author$
+----------------------------------------------------------------------------+
* e107 website system
*
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* English language file - Printer Friendly Page
*
*/
if (!defined("PAGE_NAME")) { define("PAGE_NAME", "Printer Friendly"); }
define("LAN_PRINT_86", "Category:");
define("LAN_PRINT_87", "by ");
define("LAN_PRINT_94", "Posted by");
define("LAN_PRINT_135", "News Item: ");
//define("LAN_PRINT_86", "Category:");//LAN_CATEGORY // NOT USED
//efine("LAN_PRINT_87", "by ");//NOT USED
//define("LAN_PRINT_94", "Posted by");//LAN_POSTED_BY//NOT USED
//define("LAN_PRINT_135", "News Item: ");//NOT USED
define("LAN_PRINT_303", "This news item is from ");
//define("LAN_PRINT_304", "Title: ");//LAN_TITLE
define("LAN_PRINT_305", "Subheading: ");
define("LAN_PRINT_306", "This is from: ");
define("LAN_PRINT_307", "Print this page");
//define("LAN_PRINT_305", "Subheading: ");//NOT USED
//define("LAN_PRINT_306", "This is from: ");//NOT USED
define("LAN_PRINT_1", "printer friendly");
define("LAN_PRINT_307", "Print this page");//TODO LANS GENERIC CANDIDATE
define("LAN_PRINT_1", "printer friendly");//TODO LANS GENERIC CANDIDATE
?>
?>

View File

@ -1,15 +1,16 @@
<?php
/*
+ ----------------------------------------------------------------------------+
| e107 website system - Language File.
|
| $Source: /cvs_backup/e107_0.8/e107_languages/English/lan_sitelinks.php,v $
| $Revision$
| $Date$
| $Author$
+----------------------------------------------------------------------------+
* e107 website system
*
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* English language file - for site links
*
*/
define("LAN_SITELINKS_183", "Main Menu");
define("LAN_SITELINKS_502", "Admin Area");
?>
define("LAN_SITELINKS_183", "Main Menu");
//define("LAN_SITELINKS_502", "Admin Area");//NOT USED
?>

View File

@ -30,7 +30,7 @@ class banner_setup
'banner_clientlogin' => '',
'banner_clientpassword' => '',
'banner_image' => '{e_PLUGIN}banner/images/banner1.png',
'banner_clickurl' => 'http://e107.org',
'banner_clickurl' => 'https://e107.org',
'banner_impurchased' => '0',
'banner_startdate' => '0',
'banner_enddate' => '0',
@ -38,7 +38,7 @@ class banner_setup
'banner_clicks' => '0',
'banner_impressions' => '0',
'banner_ip' => '',
'banner_description' => 'Learn more about e107 CMS.',
'banner_description' => '',
'banner_campaign' => 'e107promo'
);

View File

@ -44,6 +44,7 @@ if (!e107::isInstalled('download'))
$dl = new download();
if(!defined("e_PAGETITLE")) {define("e_PAGETITLE", LAN_PLUGIN_DOWNLOAD_NAME);}
if(!defined("USER_WIDTH") && !deftrue('BOOTSTRAP')) { define("USER_WIDTH","width:100%"); }
@ -51,7 +52,7 @@ if (!e107::isInstalled('download'))
if(deftrue('BOOTSTRAP'))
{
define("IMAGE_DOWNLOAD", (file_exists(THEME."images/download.png") ? THEME."images/download.png" : e_IMAGE."generic/download.png"));
define("IMAGE_DOWNLOAD", (file_exists(THEME."images/download.png") ? THEME."images/download.png" : 'icon-download.glyph'));
define("IMAGE_NEW", (file_exists(THEME."images/new.png") ? THEME."images/new.png" : 'icon-star.glyph'));
}
else
@ -101,4 +102,4 @@ if (!e107::isInstalled('download'))
exit ;
?>
?>

View File

@ -211,7 +211,7 @@ class download
if ($dlcat->down_count == 0)
{
return $ns->tablerender(LAN_PLUGIN_DOWNLOAD_NAME, "<div style='text-align:center'>".LAN_NO_RECORDS_FOUND."</div>",'download-categories',true);
return $ns->tablerender(LAN_PLUGIN_DOWNLOAD_NAME, "<div ".(deftrue('BOOTSTRAP')?"class='alert alert-warning' >":"")."style='text-align:center'>".LAN_NO_RECORDS_FOUND."</div>",'download-categories',true);
}
$download_cat_table_string = "";
@ -419,6 +419,7 @@ class download
{
$template = e107::getTemplate('download','download');
$DOWNLOAD_LIST_CAPTION = $template['list']['caption'];
$DOWNLOAD_LIST_TABLE_START = $template['list']['start'];
$DOWNLOAD_LIST_TABLE = $template['list']['item'];
$DOWNLOAD_LIST_TABLE_END = $template['list']['end'];
@ -578,6 +579,8 @@ class download
if($filetotal)
{
$caption = varset($DOWNLOAD_LIST_CAPTION) ? $tp->parseTemplate($DOWNLOAD_LIST_CAPTION, TRUE, $sc) : LAN_PLUGIN_DOWNLOAD_NAME;
// Only show list if some files in it
$dl_text .= $tp->parseTemplate($DOWNLOAD_LIST_TABLE_START, TRUE, $sc);
@ -610,8 +613,8 @@ class download
}
$dl_text .= $tp->parseTemplate($this->templateFooter, TRUE, $sc);
$text .= $ns->tablerender(LAN_PLUGIN_DOWNLOAD_NAME, $dl_text, 'download-list', true);
$text .= $ns->tablerender($caption, $dl_text, 'download-list', true);
}
if(!isset($DOWNLOAD_LIST_NEXTPREV))
@ -1011,4 +1014,4 @@ function sort_download_mirror_order($a, $b)
}
return ($a[1] < $b[1]) ? -1 : 1;
}
?>
?>

View File

@ -524,6 +524,8 @@ $DOWNLOAD_TEMPLATE['view']['nextprev'] = '
// ##### ------------------------------------------------------------------------------------------
//$DOWNLOAD_TEMPLATE['list']['caption'] = "Test custom caption";
$DOWNLOAD_TEMPLATE['list']['start'] = "
<form method='post' action='".e_SELF."?".e_QUERY."'>
<div class='table-responsive'>
@ -655,4 +657,4 @@ $DOWNLOAD_TEMPLATE['footer'] = '';
?>
?>

View File

@ -48,7 +48,11 @@ class plugin_featurebox_item extends e_model
*/
public function sc_featurebox_title($parm = '')
{
parse_str($parm, $parm);
if(!empty($parm) && is_string($parm))
{
parse_str($parm, $parm);
}
$tp = e107::getParser();
if(isset($parm['alt']))
{

View File

@ -0,0 +1,60 @@
<?php
/*
* e107 website system
*
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
* XXX HIGHLY EXPERIMENTAL AND SUBJECT TO CHANGE WITHOUT NOTICE.
*/
if (!defined('e107_INIT')) { exit; }
class forum_event
{
function config()
{
$event = array();
$event[] = array(
'name' => "login",
'function' => "forum_eventlogin"
);
$event[] = array(
'name' => "user_forum_post_created",
'function' => "forum_eventnewpost"
);
return $event;
}
function forum_eventlogin($data) // Clear user_plugin_forum_viewed on user LOGIN
{
$myfile = fopen("newfile.txt", "a") or die("Unable to open file!");
$txt = "login (".USERID.")\n";
fwrite($myfile, $txt);
fwrite($myfile, print_r($data,true));
fclose($myfile);
echo('hola');
print_a($data);
e107::getDb()->update('user_extended', "user_plugin_forum_viewed = NULL WHERE user_extended_id = ".$data[user_id]);
}
function forum_eventnewpost($data) // Remove thread id from user_plugin_forum_viewed when a new reply is posted
{
//e107::getDb()->update('user_extended', "user_plugin_forum_viewed = REPLACE(user_plugin_forum_viewed, '{$data[post_thread]}', '0') WHERE user_extended_id != ".$data[post_user]);
e107::getDb()->update('user_extended', "user_plugin_forum_viewed = TRIM(BOTH ',' FROM REPLACE(CONCAT(',', user_plugin_forum_viewed, ','), ',".$data[post_thread].",', ',')) WHERE FIND_IN_SET('".$data[post_thread]."', user_plugin_forum_viewed) AND user_extended_id != ".$data[post_user]);
}
} //end class

View File

@ -309,28 +309,33 @@ str_replace("[x]", ($total_topics+$total_replies), LAN_FORUM_0031)." ($total_top
if(empty($FORUM_TEMPLATE))
{
// include(e_PLUGIN.'forum/templates/forum_template.php');
// Override with theme template
if (file_exists(THEME.'forum_template.php')) //v1.x fallback.
if(THEME_LEGACY !== true) //v2.x
{
$FORUM_TEMPLATE = e107::getTemplate('forum','forum'); // required to use v2.x wrapper shortcode wrappers.
}
elseif (file_exists(THEME.'forum_template.php')) //v1.x fallback.
{
include(e_PLUGIN.'forum/templates/forum_template.php');
include_once(THEME.'forum_template.php');
}
elseif(file_exists(THEME.'templates/forum/forum_template.php'))
{
$FORUM_TEMPLATE = e107::getTemplate('forum','forum');
// $FORUM_TEMPLATE = e107::getTemplate('forum','forum');
require_once(THEME.'templates/forum/forum_template.php');
}
else //v2.x
else
{
$FORUM_TEMPLATE = e107::getTemplate('forum','forum'); // required to use v2.x wrapper shortcode wrappers.
require_once(e_PLUGIN.'forum/templates/forum_template.php');
}
}
if(is_array($FORUM_TEMPLATE)) // new v2.x format.
if(is_array($FORUM_TEMPLATE) && THEME_LEGACY !== true) // new v2.x format.
{
if(varset($FORUM_TEMPLATE['main-start'])) // correction of previous v2.x setup.

View File

@ -131,7 +131,7 @@ $forumInfo = $forum->forumGet($forumId);
if (empty($FORUM_VIEW_START))
{
if(deftrue('BOOTSTRAP'))
if(THEME_LEGACY !== true)
{
$FORUM_VIEWFORUM_TEMPLATE = e107::getTemplate('forum','forum_viewforum');
}
@ -141,11 +141,11 @@ if (empty($FORUM_VIEW_START))
{
require_once(THEME.'templates/forum/forum_viewforum_template.php');
}
elseif (file_exists(THEME.'forum_viewforum_template.php'))
elseif (file_exists(THEME.'forum_viewforum_template.php')) //v1.x
{
require_once(THEME.'forum_viewforum_template.php');
}
elseif (file_exists(THEME.'forum_template.php'))
elseif (file_exists(THEME.'forum_template.php')) //v1.x
{
require_once(THEME.'forum_template.php');
}
@ -160,7 +160,7 @@ if (empty($FORUM_VIEW_START))
}
if(!empty($FORUM_VIEWFORUM_TEMPLATE) && is_array($FORUM_VIEWFORUM_TEMPLATE) && deftrue('BOOTSTRAP',false)) // New v2.x bootstrap Template.
if(!empty($FORUM_VIEWFORUM_TEMPLATE) && is_array($FORUM_VIEWFORUM_TEMPLATE) && THEME_LEGACY !== true) // New v2.x bootstrap Template.
{
$FORUM_VIEW_CAPTION = $FORUM_VIEWFORUM_TEMPLATE['caption'];

View File

@ -205,7 +205,7 @@ if(file_exists(THEME.'forum_design.php')) // legacy file
// New in v2.x
if(deftrue('BOOTSTRAP',false))
if(THEME_LEGACY !== true)
{
$FORUM_VIEWTOPIC_TEMPLATE = e107::getTemplate('forum','forum_viewtopic');
@ -220,7 +220,7 @@ if(deftrue('BOOTSTRAP',false))
}
else
{
if (!vartrue($FORUMSTART))
if (empty($FORUMSTART))
{
if(file_exists(THEME.'forum_viewtopic_template.php'))
{
@ -606,7 +606,7 @@ if ($thread->threadInfo['thread_lastpost'] > USERLV && !in_array($thread->thread
else
{
$ret = array('lastpost'=>$thread->threadInfo['thread_lastpost'], 'lastvisit'=>USERLV, 'thread'=>$thread->threadId, 'viewed'=>$threadsViewed);
$mes->addDebug(print_a($ret,true));
e107::getDebug()->log($ret);
unset($ret);
}

View File

@ -45,7 +45,7 @@ class forum_newforumposts_menu // plugin folder + menu name (without the .php)
$qry = "
SELECT
p.post_user, p.post_id, p.post_datestamp, p.post_user_anon, p.post_entry,
t.thread_id, t.thread_datestamp, t.thread_name, u.user_name, f.forum_sef
t.thread_id, t.thread_datestamp, t.thread_name, u.user_id, u.user_name, u.user_image, u.user_currentvisit, f.forum_sef
FROM `#forum_post` as p
LEFT JOIN `#forum_thread` AS t ON t.thread_id = p.post_thread
@ -67,14 +67,19 @@ class forum_newforumposts_menu // plugin folder + menu name (without the .php)
$pref = e107::getPref();
$qry = $this->getQuery();
$ns = e107::getRender();
$list = null;
$text = null;
if($results = $sql->gen($qry))
{
$text = "<ul class='newforumposts-menu'>";
$list = "<ul class='media-list newforumposts-menu'>";
while($row = $sql->fetch())
{
$datestamp = $tp->toDate($row['post_datestamp'], 'relative');
$id = $row['thread_id'];
$topic = ($row['thread_datestamp'] == $row['post_datestamp'] ? '' : 'Re:');
@ -116,22 +121,32 @@ class forum_newforumposts_menu // plugin folder + menu name (without the .php)
));
$text .= "<li>";
$list .= "<li class='media'>";
$list .= "<div class='media-left'>";
$list .= "<a href='".$url."'>".$tp->toAvatar($row, array('shape'=>'circle'))."</a>";
$list .= "</div>";
$list .= "<div class='media-body'>";
if (!empty($this->menuPref['title']))
{
$text .= "<a href='{$url}'>{$topic}</a><br />{$post}<br /><small class='text-muted muted'>".LAN_FORUM_MENU_001." {$poster} {$datestamp}</small>";
$list .= "<h4 class='media-header'><a href='{$url}'>{$topic}</a></h4>{$post}<br /><small class='text-muted muted'>".LAN_FORUM_MENU_001." {$poster} {$datestamp}</small>";
}
else
{
$text .= "<a href='{$url}'>".LAN_FORUM_MENU_001."</a> {$poster} <small class='text-muted muted'>{$datestamp}</small><br />{$post}<br />";
$list .= "<a href='{$url}'>".LAN_FORUM_MENU_001."</a> {$poster} <small class='text-muted muted'>{$datestamp}</small><br />{$post}<br />";
}
$text .= "</li>";
$list .= "</div></li>";
}
$text .= "</ul>";
$list .= "</ul>";
$text = $list;
}
else
{
@ -150,7 +165,7 @@ class forum_newforumposts_menu // plugin folder + menu name (without the .php)
// e107::debug('menuPref', $this->menuPref);
e107::getRender()->tablerender($caption, $text, 'nfp_menu');
$ns->tablerender($caption, $text, 'nfp_menu');
}

View File

@ -65,7 +65,7 @@ define('IMAGE_untrack', '<img src="'.img_path('untrack.png').'" alt="'.LAN_FORU
// User info
define('IMAGE_website', '<img src="'.img_path('website.png').'" alt="'.LAN_FORUM_2034.'" title="'.LAN_FORUM_2034.'" />');
define('IMAGE_email', '<img src="'.img_path('email.png').'" alt="'.LAN_FORUM_2044.'" title="'.LAN_FORUM_2044.'" />');
define('IMAGE_email', '<img src="'.img_path('email.png').'" alt="'.LAN_FORUM_2044.'" title="'.LAN_FORUM_2044.'" class="icon S16 action" />');
define('IMAGE_profile', '<img src="'.img_path('profile.png').'" alt="'.LAN_FORUM_4007.'" title="'.LAN_FORUM_4007.'" />');
// action

View File

@ -27,7 +27,7 @@ if (!isset($FORUM_MAIN_FORUM))
{
$SC_WRAPPER['LASTPOST:type=date'] = "{---}<br>";
$SC_WRAPPER['LASTPOST:type=url'] = " <a href='{---}'>".IMAGE_post2."</a>";
$FORUM_MAIN_FORUM = "<tr>\n<td style='width:5%; text-align:center' class='forumheader2'>{NEWFLAG}</td>\n<td style='width:55%' class='forumheader2'>{FORUMNAME}<br /><span class='smallblacktext'>{FORUMDESCRIPTION}</span>{FORUMSUBFORUMS}</td>\n<td style='width:10%; text-align:center' class='forumheader3'>{THREADS}</td>\n<td style='width:10%; text-align:center' class='forumheader3'>{REPLIES}</td>\n<td style='width:20%; text-align:center' class='forumheader3'><span class='smallblacktext'>{LASTPOST:type=date}{LASTPOSTUSER}{LASTPOST:type=url}</span></td>\n</tr>";
$FORUM_MAIN_FORUM = "<tr>\n<td style='width:5%; text-align:center' class='forumheader2'>{NEWFLAG}</td>\n<td style='width:55%' class='forumheader2'>{FORUMNAME}<br /><span class='smallblacktext'>{FORUMDESCRIPTION}</span>{FORUMSUBFORUMS}</td>\n<td style='width:10%; text-align:center' class='forumheader3'>{THREADS}</td>\n<td style='width:10%; text-align:center' class='forumheader3'>{REPLIES}</td>\n<td style='width:20%; text-align:center' class='forumheader3'><span class='smallblacktext'>{LASTPOST}</span></td>\n</tr>";
}
if (!isset($FORUM_MAIN_END))
{

View File

@ -70,7 +70,7 @@ if(empty($FORUM_VIEW_START_CONTAINER))
";
}
// XXX These templates should remain unchanged.
if (empty($FORUM_VIEW_FORUM)) {
$SC_WRAPPER['LASTPOST:type=date'] = "{---}<br>";
$SC_WRAPPER['LASTPOST:type=url'] = " <a href='{---}'>".IMAGE_post2."</a>";
@ -91,7 +91,7 @@ if (empty($FORUM_VIEW_FORUM)) {
<td style='vertical-align:middle; text-align:center; width:20%' class='forumheader3'>{POSTER}<br />{THREADDATE}</td>
<td style='vertical-align:middle; text-align:center; width:5%' class='forumheader3'>{REPLIES}</td>
<td style='vertical-align:middle; text-align:center; width:5%' class='forumheader3'>{VIEWS}</td>
<td style='vertical-align:middle; text-align:center; width:20%' class='forumheader3'>{LASTPOST:type=date}{LASTPOSTUSER}{LASTPOST:type=url}</td>
<td style='vertical-align:middle; text-align:center; width:20%' class='forumheader3'>{LASTPOST}</td>
</tr>";
}

View File

@ -604,11 +604,11 @@ class listclass
global $qs;
$lvisit = defined('USERLV') ? USERLV : time() + 1000; // Set default value
if(vartrue($qs[0]) == "new")
if(!empty($qs[0]) && $qs[0] === "new")
{
if(vartrue($this->list_pref['new_page_timelapse']))
if(!empty($this->list_pref['new_page_timelapse']))
{
if(vartrue($this->list_pref['new_page_timelapse_days']) && is_numeric($this->list_pref['new_page_timelapse_days']))
if(!empty($this->list_pref['new_page_timelapse_days']) && is_numeric($this->list_pref['new_page_timelapse_days']))
{
$days = $this->list_pref['new_page_timelapse_days'];
}

View File

@ -33,6 +33,7 @@ class news_front
private $text = null;
private $pref = array();
private $debugInfo = array();
private $cacheRefreshTime = false;
// private $interval = 1;
function __construct()
@ -44,6 +45,7 @@ class news_front
$this->pref = e107::getPref();
$this->cacheRefreshTime = vartrue($this->pref['news_cache_timeout'],false);
// $this->interval = $this->pref['newsposts']-$this>pref['newsposts_archive'];
require_once(e_HANDLER."news_class.php");
@ -258,9 +260,9 @@ class news_front
echo "<h4>News Debug Info</h4>";
echo "<b>action:</b> ".$this->action." ";
echo "<br /><b>subaction:</b> ".$this->subAction." ";
echo "<br /><b>route</b> ".$this->route." ";
echo "<br /><b>route:</b> ".$this->route." ";
echo "<br /><b>e_QUERY:</b> ".e_QUERY." ";
echo "<br /><b>CacheTimeout:</b> ".$this->cacheRefreshTime." ";
echo "<br /><b>_GET:</b> ".print_r($_GET,true);
foreach($this->debugInfo as $key=>$val)
@ -520,9 +522,9 @@ class news_front
$this->addDebug("checkCache", 'true');
$e107cache->setMD5(null);
$cache_data = $e107cache->retrieve($cacheString);
$cache_title = $e107cache->retrieve($cacheString."_title");
$cache_diz = $e107cache->retrieve($cacheString."_diz");
$cache_data = $e107cache->retrieve($cacheString, $this->cacheRefreshTime);
$cache_title = $e107cache->retrieve($cacheString."_title", $this->cacheRefreshTime);
$cache_diz = $e107cache->retrieve($cacheString."_diz", $this->cacheRefreshTime);
$etitle = ($cache_title != "e_PAGETITLE") ? $cache_title : "";
$ediz = ($cache_diz != "META_DESCRIPTION") ? $cache_diz : "";
@ -1033,13 +1035,14 @@ class news_front
{
global $comment_edit_query; //FIXME - kill me
$comment_edit_query = 'comment.news.'.$news['news_id'];
$comments = e107::getComment()->compose_comment('news', 'comment', $news['news_id'], null, $news['news_title'], false, true);
$text = e107::getComment()->compose_comment('news', 'comment', $news['news_id'], null, $news['news_title'], false, 'html');
if(!empty($comments))
if(!empty($text))
{
$text = $comments['comment_form'] . $comments['comment'] .$comments['moderate'];
return e107::getRender()->tablerender($comments['caption'], $text,'comment', true);
// $text = $comments['comment_form'] . $comments['comment'] .$comments['moderate'];
return $text;
// return e107::getRender()->tablerender($comments['caption'], $text,'comment', true);
}
}

View File

@ -7,6 +7,7 @@
#news-carousel-images { margin-top:20px; padding-right:0; height:350px }
}
#news-carousel-images img { min-height: 350px; min-width: 100%; max-width:150%; }
#news-carousel-images .carousel-caption { left:15px; right:15px; margin:0; padding:0; bottom:10px; text-align:left }
#news-carousel-images .carousel-caption h1 { margin:0 }
#news-carousel-images .carousel-caption small { font-size: 11px; margin: 0; text-transform: uppercase; }

View File

@ -95,7 +95,7 @@ $ONLINE_MENU_WRAPPER['extended']['ONLINE_MEMBERS'] = "<li class
$ONLINE_MENU_WRAPPER['extended']['ONLINE_MEMBERS_LIST'] = "<ul>{---}</ul>";
$ONLINE_MENU_WRAPPER['extended']['ONLINE_MEMBERS_LIST_EXTENDED'] = "<ul class='unstyled list-unstyled'>{---}</ul>";
$ONLINE_MENU_WRAPPER['extended']['ONLINE_ONPAGE'] = "<li>".LAN_ONLINE_3."<span class='label label-default pull-right'>{---}</span></li>";
$ONLINE_MENU_WRAPPER['extended']['ONLINE_MEMBER_TOTAL'] = "<li>".LAN_ONLINE_2."<span class='label label-default pull-right'>{---}</span></li>";
$ONLINE_MENU_WRAPPER['extended']['ONLINE_MEMBERS_TOTAL'] = "<li>".LAN_ONLINE_2."<span class='label label-default pull-right'>{---}</span></li>";
$ONLINE_MENU_WRAPPER['extended']['ONLINE_MEMBER_NEWEST'] = "<li class='online-menu-extended-label'>".LAN_ONLINE_6."</li><li><ul class='unstyled list-unstyled'>{---}</ul></li>";
$ONLINE_MENU_WRAPPER['extended']['ONLINE_MOST'] = "<a class='e-expandit' href='#online-menu-extended-most'>".LAN_ONLINE_8."</a><span class='label label-default pull-right'>{---}</span><br />";
$ONLINE_MENU_WRAPPER['extended']['ONLINE_MOST_MEMBERS'] = LAN_ONLINE_2."{---}";

View File

@ -10,4 +10,4 @@ CREATE TABLE rss (
rss_limit tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (rss_id),
KEY rss_name (rss_name)
) ENGINE=MyISAM;
) ENGINE=MyISAM;

View File

@ -533,6 +533,13 @@ class wysiwyg
{title: 'Code Highlighted', block: 'pre', classes: 'prettyprint linenums' }
]},
{title: 'Lists', items: [
{title: 'FontAwesome', selector: 'ul', classes: 'fa-ul' },
{title: 'FontAwesome List Icon', selector: 'i', classes: 'fa-li' },
{title: 'Bootstrap Listgroup', selector: 'ul', classes: 'list-group' },
{title: 'Bootstrap Listgroup Item', selector: 'li', classes: 'list-group-item' },
]},
{title: 'Alignment', items: [
{title: 'Left', block: 'div', classes: 'text-left', icon: 'alignleft'},
{title: 'Center', block: 'div',classes: 'text-center', icon: 'aligncenter'},
@ -615,6 +622,8 @@ class wysiwyg
{title: 'Button (Danger)', value: 'btn btn-danger'}
]";
/* $ret['setup'] = "function(ed) {
ed.addMenuItem('test', {
text: 'Clear Floats',

View File

@ -260,7 +260,11 @@ img.image-selector { margin-bottom:0; }
.dropdown-menu img { padding: 0 0; margin-right: 10px; }
ul.navbar-nav li ul.dropdown-menu > li a img,
ul.navbar-nav li ul.dropdown-menu > li a i {
ul.navbar-nav li ul.dropdown-menu > li a i,
ul#e-latest img,
ul#e-latest i,
ul#e-status img,
ul#e-status i {
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-ms-filter: grayscale(100%);
@ -270,7 +274,11 @@ ul.navbar-nav li ul.dropdown-menu > li a i {
}
ul.navbar-nav li ul.dropdown-menu a:hover i,
ul.navbar-nav li ul.dropdown-menu a:hover img
ul.navbar-nav li ul.dropdown-menu a:hover img,
ul#e-latest a:hover img,
ul#e-latest a:hover i,
ul#e-status a:hover img,
ul#e-status a:hover i
{
filter: none;
-webkit-filter: none;
@ -1230,8 +1238,10 @@ li.rssRow > div {
/* Theme selection */
.admin-theme-thumb { width:100%; height:130px;overflow:hidden;border:1px solid black; margin:0; margin-bottom:10px; padding:0; }
.admin-theme-thumb { position:relative; width:100%; height:130px;overflow:hidden;border:1px solid black; margin:0; margin-bottom:10px; padding:0; }
.admin-theme-thumb:hover { opacity:0.4 }
.admin-theme-thumb img { position:absolute; height:130px; left:-10px; min-width:110%; }
.admin-theme-options {
transition: opacity .20s ease-in-out;
@ -1325,6 +1335,14 @@ footer {
}
*/
@media (max-width: 1400px ){
ul.navbar-nav.navbar-left > li > a > i { display:none; }
}
@media (max-width: 1100px) {
.navbar-header {
float: none;

View File

@ -26,8 +26,8 @@ $E_ADMIN_NAVIGATION['start_other'] = '<ul class="nav navbar-nav navbar-right">';
$E_ADMIN_NAVIGATION['button'] = '
<li class="dropdown">
<a class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#" href="{LINK_URL}" >
{LINK_TEXT}
<a class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#" href="{LINK_URL}" title="{LINK_TEXT}">
{LINK_IMAGE} {LINK_TEXT}
<b class="caret"></b>
</a>
{SUB_MENU}
@ -284,11 +284,12 @@ else
</div>
{ADMIN_SITEINFO=creditsonly}
{SETSTYLE=admin_menu}
{SETSTYLE=lists}
{ADMIN_LATEST=infopanel}
{ADMIN_STATUS=infopanel}
{SETSTYLE=admin_menu}
{ADMIN_LOG=request}
{ADMIN_MSG=request}
{ADMIN_PLUGINS}

View File

@ -165,6 +165,17 @@ class bootstrap3_admintheme
</div>';
break;
case 'lists':
echo '<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">' . $caption . '</h3>
</div>
' . $text . '
</div>';
break;
case 'no_caption':
echo '<!-- Start Style: ' . $style . ' Mode: ' . $mode . ' -->
<div class="block">

View File

@ -39,4 +39,17 @@ ul.breadcrumb li span.divider { padding-left:5px; }
.thumbnail img { border-radius:8px; }
.img-responsive { max-width:100%; }
.logo.img-responsive { height: auto; }
.media-list {
padding-left: 0;
list-style: none;
}
.media-body, .media-left, .media-right {
display: table-cell;
vertical-align: top;
}
.media-left, .media > .pull-left {
padding-right: 10px;
}

View File

@ -8,7 +8,7 @@ a.media-select-image:hover { border:1px solid red; }
a.media-select-image,
a.media-select-none { margin:5px; text-decoration:none; width:80px; height:80px; box-shadow: 0px 1px 0px rgba(255, 255, 255, 0.1), 0px 1px 7px 0px rgba(0, 0, 0, 0.8) inset; background: none repeat scroll 0% 0% rgba(0, 0, 0, 0.3);}
a.media-select-none { margin:5px; margin-left:0; text-decoration:none; width:80px; height:80px; box-shadow: 0px 1px 0px rgba(255, 255, 255, 0.1), 0px 1px 7px 0px rgba(0, 0, 0, 0.8) inset; background: none repeat scroll 0% 0% rgba(0, 0, 0, 0.3);}
@media (min-height: 500px){
a.media-select-image,

View File

@ -485,24 +485,22 @@ $(document).ready(function()
$('#e-modal-loading', window.parent.document).show();
$('iframe', window.parent.document).attr('scrolling', 'no'); // hide the scrollbar.
$(id).hide('slide', { direction: outDir }, 1500, function(){ });
$.get(src, function( data ) {
$(id).hide('slide', { direction: outDir }, 1200, function(){
// alert('done');
// alert('done');
$(id ).html( data );
newVal = $('#admin-ui-media-select-count-hidden').text();
$('#admin-ui-media-select-count').text(newVal).fadeIn();
$(id).show('slide', { direction: inDir },1200,function(){
$(id).show('slide', { direction: inDir },500,function(){
$('#e-modal-loading', window.parent.document).hide();
});
});

View File

@ -11,7 +11,7 @@
*/
// minimal software version
define('MIN_PHP_VERSION', '5.3');
define('MIN_PHP_VERSION', '5.4');
define('MIN_MYSQL_VERSION', '4.1.2');
define('MAKE_INSTALL_LOG', true);
@ -2006,7 +2006,7 @@ function create_tables_unattended()
$einstall->previous_steps['generate_content'] = isset($_GET['gen']) ? intval($_GET['gen']) : 1;
$einstall->previous_steps['install_plugins'] = isset($_GET['plugins']) ? intval($_GET['plugins']) : 1;
$einstall->previous_steps['prefs']['sitename'] = isset($_GET['sitename']) ? urldecode($_GET['sitename']) : LANINS_113;
$einstall->previous_steps['prefs']['sitetheme'] = isset($_GET['theme']) ? urldecode($_GET['theme']) : 'jayya';
$einstall->previous_steps['prefs']['sitetheme'] = isset($_GET['theme']) ? urldecode($_GET['theme']) : 'bootstrap3';
//@include_once("./{$HANDLERS_DIRECTORY}e107_class.php");
//$e107_paths = compact('ADMIN_DIRECTORY', 'FILES_DIRECTORY', 'IMAGES_DIRECTORY', 'THEMES_DIRECTORY', 'PLUGINS_DIRECTORY', 'HANDLERS_DIRECTORY', 'LANGUAGES_DIRECTORY', 'HELP_DIRECTORY', 'CACHE_DIRECTORY', 'DOWNLOADS_DIRECTORY', 'UPLOADS_DIRECTORY');
@ -2228,4 +2228,4 @@ function die_fatal_error($error)
echo $template;
exit;
}

View File

@ -96,7 +96,7 @@ if (!USER || getperms('0'))
if(getperms('0'))
{
echo "<div class='alert alert-block alert-error alert-danger center'> You are currently logged in.</div>";
echo "<div class='alert alert-block alert-error alert-danger center'> You are currently logged in as the Main Admin.</div>"; //TODO LAN
}

View File

@ -1,21 +1,15 @@
<?php
/*
+ ----------------------------------------------------------------------------+
| e107 website system
|
| Copyright (C) 2008-2009 e107 Inc
| http://e107.org
|
|
| Released under the terms and conditions of the
| GNU General Public License (http://gnu.org).
|
| $Source: /cvs_backup/e107_0.8/print.php,v $
| $Revision$
| $Date$
| $Author$
+----------------------------------------------------------------------------+
* e107 website system
*
* Copyright (C) 2008-2017 e107 Inc (e107.org)
* Released under the terms and conditions of the
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt)
*
* Printer Friendly
*
*/
require_once("class2.php");
//include_lan(e_LANGUAGEDIR.e_LANGUAGE.'/lan_'.e_PAGE);
@ -69,7 +63,7 @@ if(strpos($source,'plugin:') !== FALSE)
}
else
{
echo "file missing.";
echo LAN_FILE_NOT_FOUND;
exit;
}
}
@ -108,9 +102,9 @@ else
$print_text = "<span style=\"font-size: 13px; color: black; font-family: tahoma, verdana, arial, helvetica; text-decoration: none\">
<h2>".LAN_PRINT_135.$news_title."</h2>
<br />
(".LAN_PRINT_86." ".$tp->toHTML($category_name,FALSE,"defs").")
(".LAN_CATEGORY." ".$tp->toHTML($category_name,FALSE,"defs").")
<br />
".LAN_PRINT_94." ".$a_name."<br />
".LAN_POSTED_BY." ".$a_name."<br />
".$news_datestamp."
<br /><br />".
$news_body;
@ -168,4 +162,4 @@ else
}
require_once(FOOTERF);
?>
?>

View File

@ -661,6 +661,7 @@ class usersettings_front // Begin Usersettings rewrite.
if (count($triggerData))
{
e107::getEvent()->trigger('userdatachanged', $triggerData);
e107::getEvent()->trigger('user_profile_edit', $triggerData);
}
if (e_QUERY == 'update')