".NWSLAN_86." |
diff --git a/e107_files/default_install.xml b/e107_files/default_install.xml
index 2ec5b00e0..ba42ef9bd 100644
--- a/e107_files/default_install.xml
+++ b/e107_files/default_install.xml
@@ -116,6 +116,7 @@
10
0
+ news
0
0
diff --git a/e107_files/e_url/core/news/apache_mod_rewrite/main.php b/e107_files/e_url/core/news/apache_mod_rewrite/main.php
index 9f66bfb10..4991db54c 100644
--- a/e107_files/e_url/core/news/apache_mod_rewrite/main.php
+++ b/e107_files/e_url/core/news/apache_mod_rewrite/main.php
@@ -1,33 +1,50 @@
\ No newline at end of file
diff --git a/e107_files/e_url/core/news/main.php b/e107_files/e_url/core/news/main.php
index 1bcd612b2..12487e6a7 100644
--- a/e107_files/e_url/core/news/main.php
+++ b/e107_files/e_url/core/news/main.php
@@ -1,7 +1,7 @@
\ No newline at end of file
diff --git a/e107_files/shortcode/batch/news_shortcodes.php b/e107_files/shortcode/batch/news_shortcodes.php
index 279f23d8b..6eb69e52a 100644
--- a/e107_files/shortcode/batch/news_shortcodes.php
+++ b/e107_files/shortcode/batch/news_shortcodes.php
@@ -1,7 +1,7 @@
e107->url->getUrl('core:news', 'main', 'action=cat&value='.$this->news_item['news_category'])."'> ";
+ return "news_item['news_category'].'&sef='.$this->news_item['news_category_rewrite_string'])."'> ";
}
function sc_newsauthor($parm)
@@ -155,7 +155,7 @@ class news_shortcodes
function sc_newscategory($parm)
{
$category_name = $this->e107->tp->toHTML($this->news_item['category_name'], FALSE ,'defs');
- return "param['catlink'] : "#")."' href='".$this->e107->url->getUrl('core:news', 'main', 'action=cat&value='.$this->news_item['news_category'])."'>".$category_name."";
+ return "param['catlink'] : "#")."' href='".$this->e107->url->getUrl('core:news', 'main', 'action=list&id='.$this->news_item['news_category'].'&sef='.$this->news_item['news_category_rewrite_string'])."'>".$category_name."";
}
function sc_newsdate($parm)
@@ -247,7 +247,7 @@ class news_shortcodes
}
else
{
- return $es1."news_item['news_id'])."'>".EXTENDEDSTRING."".$es2;
+ return $es1."news_item['news_id'].'&sef='.$this->news_item['news_rewrite_string'])."'>".EXTENDEDSTRING."".$es2;
}
}
return '';
@@ -276,14 +276,40 @@ class news_shortcodes
return ($this->news_item['news_summary']) ? $this->news_item['news_summary'].' ' : '';
}
- function sc_newsthumbnail()
+ function sc_newsthumbnail($parm = '')
{
- return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail']) ? "news_item['news_id']}&value2={$this->news_item['news_category']}")."'> " : '';
+ switch($parm)
+ {
+ case 'src':
+ return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail'] ? e_IMAGE_ABS.$this->news_item['news_thumbnail'] : '');
+ break;
+
+ case 'tag':
+ return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail'] ? " " : '');
+ break;
+
+ default:
+ return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail']) ? "news_item['news_id']}&catid={$this->news_item['news_category']}&sef={$this->news_item['news_rewrite_string']}")."'> " : '';
+ break;
+ }
}
- function sc_newsimage()
+ function sc_newsimage($parm = '')
{
- return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail']) ? "news_item['news_id']}&value2={$this->news_item['news_category']}")."'> " : '';
+ switch($parm)
+ {
+ case 'src':
+ return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail'] ? e_IMAGE_ABS.$this->news_item['news_thumbnail'] : '');
+ break;
+
+ case 'tag':
+ return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail'] ? " " : '');
+ break;
+
+ default:
+ return (isset($this->news_item['news_thumbnail']) && $this->news_item['news_thumbnail']) ? "news_item['news_id']}&catid={$this->news_item['news_category']}&sef={$this->news_item['news_rewrite_string']}")."'> " : '';
+ break;
+ }
}
function sc_sticky_icon()
@@ -291,12 +317,18 @@ class news_shortcodes
return $this->news_item['news_sticky'] ? $this->param['image_sticky'] : '';
}
- function sc_newstitlelink()
+ function sc_newstitlelink($parm = '')
{
- return "param['itemlink'] : 'null')."' href='".$this->e107->url->getUrl('core:news', 'main', "action=item&value1={$this->news_item['news_id']}&value2={$this->news_item['news_category']}")."'>".$this->news_item['news_title'].'';
+ parse_str($parm, $parms);
+ $url = $this->e107->url->getUrl('core:news', 'main', "action=".vartrue($parms['action'], 'extend')."&id={$this->news_item['news_id']}&sef={$this->news_item['news_rewrite_string']}");
+ if(isset($parms['href']))
+ {
+ return $url;
+ }
+ return "param['itemlink'] : 'null')."' href='{$url}'>".$this->news_item['news_title'].'';
}
- function sc_newscaticon()
+ function sc_newscaticon($parm = '')
{
$category_icon = str_replace('../', '', trim($this->news_item['category_icon']));
if (!$category_icon) { return ''; }
@@ -308,10 +340,24 @@ class news_shortcodes
{
$category_icon = e_IMAGE_ABS.'icons/'.$category_icon;
}
-
+
+ //TODO - remove inline styles
if($this->param['caticon'] == ''){$this->param['caticon'] = 'border:0px';}
- //TODO use CSS class
- return "news_item['news_category']}")."'> ";
+
+ switch($parm)
+ {
+ case 'src':
+ return $category_icon;
+ break;
+
+ case 'tag':
+ return " ";
+ break;
+
+ default:
+ return "news_item['news_category']}&sef={$this->news_item['news_category_rewrite_string']}")."'> ";
+ break;
+ }
}
function sc_newsinfo()
diff --git a/e107_handlers/admin_log_class.php b/e107_handlers/admin_log_class.php
index 7d59778d9..6d2adbbb3 100644
--- a/e107_handlers/admin_log_class.php
+++ b/e107_handlers/admin_log_class.php
@@ -11,8 +11,8 @@
| GNU General Public License (http://gnu.org).
|
| $Source: /cvs_backup/e107_0.8/e107_handlers/admin_log_class.php,v $
- | $Revision: 1.15 $
- | $Date: 2009-09-10 19:08:36 $
+ | $Revision: 1.16 $
+ | $Date: 2009-09-13 16:37:18 $
| $Author: secretr $
To do:
1. Do we need to check for presence of elements of debug_backtrace() to avoid notices?
@@ -92,7 +92,6 @@ class e_admin_log
*/
function log_event($event_title, $event_detail, $event_type = E_LOG_INFORMATIVE , $event_code = '')
{
- global $e107,$tp;
if ($event_code == '')
{
if (strlen($event_title) <= 10)
@@ -111,12 +110,13 @@ class e_admin_log
$tmp = array();
if (isset($event_detail['data']))
{
- foreach ($event_detail as $v)
- {
- $tmp[] = $v;
- }
+ $event_detail = $event_detail['data'];
}
- $event_detail = implode(', ', $tmp);
+ foreach ($event_detail as $k => $v)
+ {
+ $tmp[] = $k.'=>'.$v;
+ }
+ $event_detail = implode("[!br!]\n", $tmp);
unset($tmp);
}
@@ -388,5 +388,3 @@ class e_admin_log
}
}
-
-?>
diff --git a/e107_handlers/e107_class.php b/e107_handlers/e107_class.php
index cfdb7376b..685513641 100644
--- a/e107_handlers/e107_class.php
+++ b/e107_handlers/e107_class.php
@@ -9,8 +9,8 @@
* e107 Main
*
* $Source: /cvs_backup/e107_0.8/e107_handlers/e107_class.php,v $
- * $Revision: 1.48 $
- * $Date: 2009-09-13 10:31:09 $
+ * $Revision: 1.49 $
+ * $Date: 2009-09-13 16:37:18 $
* $Author: secretr $
*/
@@ -99,6 +99,17 @@ class e107
* @var array
*/
protected static $_known_handlers = array (
+ 'db' => '{e_HANDLER}mysql_class.php',
+ 'ecache' => '{e_HANDLER}cache_handler.php',
+ 'user_class' => '{e_HANDLER}userclass_class.php',
+ 'e107_event' => '{e_HANDLER}event_class.php',
+ 'ArrayData' => '{e_HANDLER}arraystorage_class.php',
+ 'eURL' => '{e_HANDLER}e107Url.php',
+ 'e_file' => '{e_HANDLER}file_class.php',
+ 'e_admin_log' => '{e_HANDLER}admin_log_class.php',
+ 'notify' => '{e_HANDLER}notify_class.php',
+ 'e_online' => '{e_HANDLER}online_class.php',
+ 'convert' => '{e_HANDLER}date_handler.php',
'e_news_item' => '{e_HANDLER}news_class.php',
'e_news_tree' => '{e_HANDLER}news_class.php',
'news' => '{e_HANDLER}news_class.php',
@@ -645,7 +656,7 @@ class e107
*/
public static function getDb($instance_id = '')
{
- return self::getSingleton('db', e_HANDLER.'mysql_class.php', $instance_id);
+ return self::getSingleton('db', true, $instance_id);
}
/**
@@ -655,7 +666,7 @@ class e107
*/
public static function getCache()
{
- return self::getSingleton('ecache', e_HANDLER.'cache_handler.php');
+ return self::getSingleton('ecache', true);
}
/**
@@ -665,7 +676,7 @@ class e107
*/
public static function getUserClass()
{
- return self::getSingleton('user_class', e_HANDLER.'userclass_class.php');
+ return self::getSingleton('user_class', true);
}
/**
@@ -685,7 +696,7 @@ class e107
*/
public static function getEvent()
{
- return self::getSingleton('e107_event', e_HANDLER.'event_class.php');
+ return self::getSingleton('e107_event', true);
}
/**
@@ -695,7 +706,7 @@ class e107
*/
public static function getArrayStorage()
{
- return self::getSingleton('ArrayData', e_HANDLER.'arraystorage_class.php');
+ return self::getSingleton('ArrayData', true);
}
/**
@@ -705,7 +716,7 @@ class e107
*/
public static function getMenu()
{
- return self::getSingleton('e_menu', e_HANDLER.'menu_class.php');
+ return self::getSingleton('e_menu', true);
}
/**
@@ -715,7 +726,7 @@ class e107
*/
public static function getUrl()
{
- return self::getSingleton('eURL', e_HANDLER.'e107Url.php');
+ return self::getSingleton('eURL', true);
}
/**
@@ -728,9 +739,9 @@ class e107
{
if($singleton)
{
- return self::getSingleton('e_file', e_HANDLER.'file_class.php');
+ return self::getSingleton('e_file', true);
}
- return self::getObject('e_file', null, e_HANDLER.'file_class.php');
+ return self::getObject('e_file', null, true);
}
/**
@@ -740,7 +751,7 @@ class e107
*/
public static function getAdminLog()
{
- return self::getSingleton('e_admin_log', e_HANDLER.'admin_log_class.php');
+ return self::getSingleton('e_admin_log', true);
}
/**
@@ -750,7 +761,7 @@ class e107
*/
public static function getDateConvert()
{
- return self::getSingleton('convert', e_HANDLER.'date_handler.php');
+ return self::getSingleton('convert', true);
}
/**
@@ -760,7 +771,7 @@ class e107
*/
public static function getNotify()
{
- return self::getSingleton('notify', e_HANDLER.'notify_class.php');
+ return self::getSingleton('notify', true);
}
/**
@@ -770,7 +781,7 @@ class e107
*/
public static function getOnline()
{
- return self::getSingleton('e_online', e_HANDLER.'online_class.php');
+ return self::getSingleton('e_online', true);
}
/**
diff --git a/e107_handlers/form_handler.php b/e107_handlers/form_handler.php
index 166fd952c..12d898324 100644
--- a/e107_handlers/form_handler.php
+++ b/e107_handlers/form_handler.php
@@ -9,8 +9,8 @@
* Form Handler
*
* $Source: /cvs_backup/e107_0.8/e107_handlers/form_handler.php,v $
- * $Revision: 1.40 $
- * $Date: 2009-08-25 08:41:41 $
+ * $Revision: 1.41 $
+ * $Date: 2009-09-13 16:37:18 $
* $Author: secretr $
*
*/
@@ -162,7 +162,7 @@ class e_form
function bbarea($name, $value, $help_mod = '', $help_tagid='')
{
$options = array('class' => 'tbox large e-wysiwyg');
- if(!defsettrue('e_WYSIWYG'))
+ if(!deftrue('e_WYSIWYG'))
{
require_once(e_HANDLER."ren_help.php");
$options['other'] = "onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);'";
diff --git a/e107_handlers/news_class.php b/e107_handlers/news_class.php
index 0080d3215..082ec1608 100644
--- a/e107_handlers/news_class.php
+++ b/e107_handlers/news_class.php
@@ -9,8 +9,8 @@
* News handler
*
* $Source: /cvs_backup/e107_0.8/e107_handlers/news_class.php,v $
- * $Revision: 1.21 $
- * $Date: 2009-09-13 10:29:56 $
+ * $Revision: 1.22 $
+ * $Date: 2009-09-13 16:37:18 $
* $Author: secretr $
*/
@@ -624,14 +624,20 @@ class news {
$rewrite_data['data']['news_rewrite_source'] = $news_data['news_id'];
$rewrite_data['_FIELD_TYPES']['news_rewrite_source'] = 'int';
+ $old_rewrite_data = array();
+ if(e107::getDb()->db_Select('news_rewrite', '*', 'news_rewrite_source='.intval($rewrite_data['data']['news_rewrite_source']).' AND news_rewrite_type='.intval($rewrite_data['data']['news_rewrite_type'])))
+ {
+ $old_rewrite_data = e107::getDb()->db_Fetch();
+ }
+
//Delete if required
if (empty($rewrite_data['data']['news_rewrite_string']))
{
- if(e107::getDb()->db_Select('news_rewrite', 'news_rewrite_id,news_rewrite_string', 'news_rewrite_source='.intval($rewrite_data['data']['news_rewrite_source']).' AND news_rewrite_type='.intval($rewrite_data['data']['news_rewrite_type'])))
+ if($old_rewrite_data)
{
- $check = e107::getDb()->db_Fetch();
- self::clearRewriteCache($check['news_rewrite_string']);
- e107::getDb()->db_Delete('news_rewrite', 'news_rewrite_id='.$check['news_rewrite_id']);
+ self::clearRewriteCache($old_rewrite_data['news_rewrite_string']);
+ e107::getDb()->db_Delete('news_rewrite', 'news_rewrite_id='.$old_rewrite_data['news_rewrite_id']);
+ e107::getAdminLog()->logArrayAll('NEWS_13', $old_rewrite_data);
return true;
}
@@ -644,7 +650,9 @@ class news {
$rewrite_data['data']['news_rewrite_id'] = 0;
if($rewrite_data['data']['news_rewrite_id'] = e107::getDb()->db_Insert('news_rewrite', $rewrite_data))
{
+ if($old_rewrite_data) self::clearRewriteCache($old_rewrite_data['news_rewrite_string']);
self::setRewriteCache($rewrite_data['data']['news_rewrite_string'], $rewrite_data['data']);
+ e107::getAdminLog()->logArrayAll('NEWS_12', $rewrite_data['data']);
return true;
}
eMessage::getInstance()->add('Friendly URL string related problem detected!', E_MESSAGE_ERROR, $session_message);
@@ -665,7 +673,9 @@ class news {
if(e107::getDb()->db_Update('news_rewrite', $rewrite_data))
{
$rewrite_data['data']['news_rewrite_id'] = $id;
+ if($old_rewrite_data) self::clearRewriteCache($old_rewrite_data['news_rewrite_string']);
self::setRewriteCache($rewrite_data['data']['news_rewrite_string'], $rewrite_data['data']);
+ e107::getAdminLog()->logArrayAll('NEWS_12', $rewrite_data['data']);
return true;
}
elseif (e107::getDb()->getLastErrorNumber())
@@ -679,13 +689,19 @@ class news {
return 'error';
}
+ $rewrite_data['data']['news_rewrite_id'] = $id;
+ if($old_rewrite_data) self::clearRewriteCache($old_rewrite_data['news_rewrite_string']);
+ self::setRewriteCache($rewrite_data['data']['news_rewrite_string'], $rewrite_data['data']);
+
return false;
}
$rewrite_data['data']['news_rewrite_id'] = 0;
if($rewrite_data['data']['news_rewrite_id'] = e107::getDb()->db_Insert('news_rewrite', $rewrite_data))
{
+ if($old_rewrite_data) self::clearRewriteCache($old_rewrite_data['news_rewrite_string']);
self::setRewriteCache($rewrite_data['data']['news_rewrite_string'], $rewrite_data['data']);
+ e107::getAdminLog()->logArrayAll('NEWS_12', $rewrite_data['data']);
return true;
}
diff --git a/e107_languages/English/admin/lan_log_messages.php b/e107_languages/English/admin/lan_log_messages.php
index 48df24236..c29c39406 100644
--- a/e107_languages/English/admin/lan_log_messages.php
+++ b/e107_languages/English/admin/lan_log_messages.php
@@ -1,6 +1,6 @@
eURL config Resolved URL based on current value: ");
+
define("LAN_NEWS_5", "Error! - Was unable to update news item into database!");
define("LAN_NEWS_6", "News entered into database.");
define("LAN_NEWS_7", "Error! - Was unable to enter news item into database!");
diff --git a/news.php b/news.php
index 238629107..e43e1af43 100644
--- a/news.php
+++ b/news.php
@@ -9,8 +9,8 @@
* News frontend
*
* $Source: /cvs_backup/e107_0.8/news.php,v $
- * $Revision: 1.18 $
- * $Date: 2009-09-13 10:29:56 $
+ * $Revision: 1.19 $
+ * $Date: 2009-09-13 16:37:18 $
* $Author: secretr $
*/
@@ -39,6 +39,14 @@ if (!defined("ITEMVIEW"))
define("ITEMVIEW", varset($pref['newsposts'],15));
}
+/*
+WORK IN PROGRESS
+if(isset($_GET['rewrite']))
+{
+ $query = $_GET['rewrite'];
+}
+var_dump($query);*/
+
if (e_QUERY)
{
$tmp = explode(".", e_QUERY);
|