diff --git a/e107_plugins/pm/plugin.php b/e107_plugins/pm/plugin.php
deleted file mode 100755
index daeac6512..000000000
--- a/e107_plugins/pm/plugin.php
+++ /dev/null
@@ -1,99 +0,0 @@
-db_Delete("core", "e107_name = 'pm_prefs'");
- $sql->db_Delete("menus", "menu_name = 'private_msg_menu'");
- }
-}
-
-?>
diff --git a/e107_plugins/pm/plugin.xml b/e107_plugins/pm/plugin.xml
index 777925a13..9ba557215 100755
--- a/e107_plugins/pm/plugin.xml
+++ b/e107_plugins/pm/plugin.xml
@@ -6,4 +6,24 @@
+
+ PMLAN_PM
+ 1
+ 0
+ 0
+ 0
+ 0
+
+ 10
+ e_UC_MEMBER
+ e_UC_ADMIN
+ e_UC_MEMBER
+ e_UC_ADMIN
+ 500
+ e_UC_ADMIN
+ e_UC_ADMIN
+ 1
+ 0
+ 100
+
\ No newline at end of file
diff --git a/e107_plugins/pm/pm.php b/e107_plugins/pm/pm.php
index 45beba7c1..e9f6844ec 100755
--- a/e107_plugins/pm/pm.php
+++ b/e107_plugins/pm/pm.php
@@ -57,7 +57,9 @@ if (!$action) $action = 'inbox';
$pm_proc_id = intval(varset($qs[1],0));
-$pm_prefs = $sysprefs->getArray('pm_prefs');
+//$pm_prefs = $sysprefs->getArray('pm_prefs');
+
+$pm_prefs = e107::getPlugPref('pm');
$pm_prefs['perpage'] = intval($pm_prefs['perpage']);
@@ -74,9 +76,9 @@ if(!isset($pm_prefs['pm_class']) || !check_class($pm_prefs['pm_class']))
exit;
}
-setScVar('pm_handler_shortcodes','pmPrefs', $pm_prefs);
+//setScVar('pm_handler_shortcodes','pmPrefs', $pm_prefs);
$pmManager = new pmbox_manager($pm_prefs);
-setScVar('pm_handler_shortcodes','pmManager', &$pmManager);
+//setScVar('pm_handler_shortcodes','pmManager', &$pmManager);
@@ -157,7 +159,11 @@ class pm_extended extends private_message
include(is_readable($tpl_file) ? $tpl_file : e_PLUGIN.'pm/pm_template.php');
$pm_blocks = $this->block_get();
$pmlist = $this->pm_get_inbox(USERID, $start, $this->pmPrefs['perpage']);
- setScVar('pm_handler_shortcodes', 'pmNextPrev', array('start' => $start, 'total' => $pmlist['total_messages']));
+ // setScVar('pm_handler_shortcodes', 'pmNextPrev', array('start' => $start, 'total' => $pmlist['total_messages']));
+
+ $sc = e107::getScBatch('pm',TRUE);
+ $sc->pmNextPrev = array('start' => $start, 'total' => $pmlist['total_messages']);
+
$txt = "
';
return $txt;
}
@@ -227,7 +244,9 @@ class pm_extended extends private_message
$tpl_file = THEME.'pm_template.php';
include_once(is_readable($tpl_file) ? $tpl_file : e_PLUGIN.'pm/pm_template.php');
$pm_info = $this->pm_get($pmid);
- setScVar('pm_handler_shortcodes','pmInfo', $pm_info);
+ // setScVar('pm_handler_shortcodes','pmInfo', $pm_info);
+ $sc = e107::getScBatch('pm',TRUE);
+ $sc->setVars($pm_info);
if($pm_info['pm_to'] != USERID && $pm_info['pm_from'] != USERID)
{
$this->e107->ns->tablerender(LAN_PM, LAN_PM_60);
@@ -271,14 +290,17 @@ class pm_extended extends private_message
$tpl_file = THEME.'pm_template.php';
include(is_readable($tpl_file) ? $tpl_file : e_PLUGIN.'pm/pm_template.php');
$pmBlocks = $this->block_get_user(); // TODO - handle pagination, maybe (is it likely to be necessary?)
- setScVar('pm_handler_shortcodes','pmBlocks', $pmBlocks);
+ $sc = e107::getScBatch('pm',TRUE);
+ $sc->pmBlocks = $pmBlocks;
+
$txt = "
";
@@ -470,7 +481,7 @@ class pm_handler_shortcodes
}
- public function sc_pm_send_pm_link()
+ public function sc_pm_send_pm_link()
{
$pm_outbox = $this->pmManager->pm_getInfo('outbox');
if($pm_outbox['outbox']['filled'] < 100)
@@ -482,7 +493,7 @@ class pm_handler_shortcodes
}
- public function sc_pm_newpm_animate()
+ public function sc_pm_newpm_animate()
{
if($this->pmPrefs['animate'])
{
@@ -496,27 +507,28 @@ class pm_handler_shortcodes
}
- public function sc_pm_nextprev($parm = '')
+ public function sc_pm_nextprev($parm = '')
{
- return $this->e107->tp->parseTemplate("{NEXTPREV={$this->pmNextPrev['total']},{$this->pmPrefs['perpage']},{$this->pmNextPrev['start']},".e_SELF."?{$parm}.[FROM]}");
+ return e107::getParser()->parseTemplate("{NEXTPREV={$this->pmNextPrev['total']},{$this->pmPrefs['perpage']},{$this->pmNextPrev['start']},".e_SELF."?{$parm}.[FROM]}");
}
- public function sc_pm_blocked_senders_manage()
+ public function sc_pm_blocked_senders_manage()
{
- $count = $this->e107->sql->db_Count('private_msg_block', '(*)', 'WHERE `pm_block_to` = '.USERID);
+ $sql = e107::getDb();
+ $count = $sql->db_Count('private_msg_block', '(*)', 'WHERE `pm_block_to` = '.USERID);
if (!$count) return '';
return LAN_PM_66;
}
- public function sc_pm_blocked_select()
+ public function sc_pm_blocked_select()
{
return "";
}
- public function sc_pm_blocked_user($parm = '')
+ public function sc_pm_blocked_user($parm = '')
{
if (!$this->pmBlocked['user_name'])
{
@@ -524,7 +536,9 @@ class pm_handler_shortcodes
}
if('link' == $parm)
{
- return " $this->pmBlocked['pm_block_from'], 'name' => $this->pmBlocked['user_name']))."'>{$this->pmBlocked['user_name']}";
+
+ $url = e107::getUrl();
+ return " $this->pmBlocked['pm_block_from'], 'name' => $this->pmBlocked['user_name']))."'>{$this->pmBlocked['user_name']}";
}
else
{
@@ -533,20 +547,20 @@ class pm_handler_shortcodes
}
- public function sc_pm_blocked_date($parm='')
+ public function sc_pm_blocked_date($parm='')
{
require_once(e_HANDLER.'date_handler.php');
return convert::convert_date($this->pmBlocked['pm_block_datestamp'], $parm);
}
- public function sc_pm_blocked_delete()
+ public function sc_pm_blocked_delete()
{
return " $this->pmBlocked['pm_block_from']))."'>
";
}
- public function sc_pm_delete_blocked_selected()
+ public function sc_pm_delete_blocked_selected()
{
return "";
}
@@ -556,8 +570,11 @@ class pm_handler_shortcodes
*/
public function url($action, $params = array(), $options = array())
{
+ if($action == "new"){ $action = 'send'; }
+ return e_PLUGIN."pm/pm.php?".$action; //FIXME
if(strpos($action, '/') === false) $action = 'view/'.$action;
- $this->e107->url->create('pm/'.$action, $params, $options);
+
+ e107::getUrl()->create('pm/'.$action, $params, $options);
}
}
diff --git a/e107_plugins/pm/pm_template.php b/e107_plugins/pm/pm_template.php
index 8d263a5aa..c1bbcf458 100755
--- a/e107_plugins/pm/pm_template.php
+++ b/e107_plugins/pm/pm_template.php
@@ -68,7 +68,7 @@ $sc_style['PM_REPLY']['post'] = "
";
$PM_SEND_PM = "
-
+
".LAN_PM_1.": |
@@ -95,7 +95,7 @@ $PM_SEND_PM = "
";
$PM_INBOX_HEADER = "
-
+
|
|
@@ -135,15 +135,18 @@ $PM_INBOX_FOOTER = "
";
$PM_OUTBOX_HEADER = "
-
+
+
- |
- |
- ".LAN_PM_5." |
- ".LAN_PM_2." |
- ".LAN_PM_33." |
- |
+ |
+ |
+ ".LAN_PM_5." |
+ ".LAN_PM_2." |
+ ".LAN_PM_33." |
+ |
+
+
";
$PM_OUTBOX_TABLE = "
@@ -171,12 +174,13 @@ $PM_OUTBOX_FOOTER = "
{PM_NEXTPREV=outbox}
+
";
$PM_BLOCKED_HEADER = "
-
+
|
".LAN_PM_68." |
@@ -213,7 +217,7 @@ $PM_BLOCKED_FOOTER = "
$PM_SHOW =
"
-
+
{PM_SUBJECT} |
diff --git a/e107_plugins/pm/private_msg_menu.php b/e107_plugins/pm/private_msg_menu.php
index b4b6b272e..ba3a8a0a8 100755
--- a/e107_plugins/pm/private_msg_menu.php
+++ b/e107_plugins/pm/private_msg_menu.php
@@ -25,17 +25,29 @@
if (!defined('e107_INIT')) { exit; }
if (!e107::isInstalled('pm')) { return ''; }
-global $sysprefs, $pm_prefs;
-if(!isset($pm_prefs['perpage']))
-{
- $pm_prefs = $sysprefs->getArray('pm_prefs');
-}
+
+
+$pm_prefs = e107::getPlugPref('pm');
+//global $sysprefs, $pm_prefs;
+
+
+
+//if(!isset($pm_prefs['perpage']))
+//{
+// $pm_prefs = $sysprefs->getArray('pm_prefs');
+
+//}
+
require_once(e_PLUGIN.'pm/pm_func.php');
+
e107::getScParser();
+
require_once(e_PLUGIN.'pm/pm_shortcodes.php');
-setScVar('pm_handler_shortcodes','pmPrefs', $pm_prefs);
+
+//setScVar('pm_handler_shortcodes','pmPrefs', $pm_prefs);
$pmManager = new pmbox_manager($pm_prefs);
-setScVar('pm_handler_shortcodes','pmManager', $pmManager);
+
+//setScVar('pm_handler_shortcodes','pmManager', $pmManager);
define('PM_INBOX_ICON', "
");
define('PM_OUTBOX_ICON', "
");
@@ -61,15 +73,16 @@ $sc_style['PM_BLOCKED_SENDERS_MANAGE']['post'] = ' ]';
if(!isset($pm_menu_template))
{
+ //FIXME URL Breaks
$pm_menu_template = "
- ".PM_INBOX_ICON."
- ".LAN_PM_25."
+ ".PM_INBOX_ICON."
+ ".LAN_PM_25."
{PM_NEWPM_ANIMATE}
{PM_INBOX_TOTAL} ".LAN_PM_36.", {PM_INBOX_UNREAD} ".LAN_PM_37." {PM_INBOX_FILLED}
- ".PM_OUTBOX_ICON."
- ".LAN_PM_26."
+ ".PM_OUTBOX_ICON."
+ ".LAN_PM_26."
{PM_OUTBOX_TOTAL} ".LAN_PM_36.", {PM_OUTBOX_UNREAD} ".LAN_PM_37." {PM_OUTBOX_FILLED}
{PM_SEND_PM_LINK}
{PM_BLOCKED_SENDERS_MANAGE}
@@ -80,12 +93,18 @@ if(!isset($pm_menu_template))
if(check_class($pm_prefs['pm_class']))
{
$tp = e107::getParser();
+ $sc = e107::getScBatch('pm',TRUE);
+
$pm_inbox = $pmManager->pm_getInfo('inbox');
+
$txt = "\n".$tp->parseTemplate($pm_menu_template, TRUE);
+
if($pm_inbox['inbox']['new'] > 0 && $pm_prefs['popup'] && strpos(e_SELF, 'pm.php') === FALSE && $_COOKIE['pm-alert'] != 'ON')
{
+
$txt .= pm_show_popup($pm_inbox, $pm_prefs['popup_delay']);
}
+
$ns->tablerender(LAN_PM, $txt, 'pm');
}
diff --git a/e107_plugins/pm/sendpm.sc b/e107_plugins/pm/sendpm.sc
index d8258b826..108813f97 100644
--- a/e107_plugins/pm/sendpm.sc
+++ b/e107_plugins/pm/sendpm.sc
@@ -1,4 +1,6 @@
-/*
+//getArray("pm_prefs");
+// global $sysprefs, $pm_prefs;
+// $pm_prefs = $sysprefs->getArray("pm_prefs");
+$pm_prefs = e107::getPlugPref('pm');
+
if(check_class($pm_prefs['pm_class']))
{
if(file_exists(THEME.'forum/pm.png'))