From: <luc...@us...> - 2014-09-16 20:36:10
|
Revision: 12783 http://sourceforge.net/p/xoops/svn/12783 Author: luciorota Date: 2014-09-16 20:35:59 +0000 (Tue, 16 Sep 2014) Log Message: ----------- standardize code fixed bug in module update procedure Modified Paths: -------------- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/admin/letter.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/attachment.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/bmh.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/cat.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/catsubscr.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/import.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/letter.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/mailinglist.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/protocol.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/subscr.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/task.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/template.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/changelog.txt XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/install.txt XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/constants.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/functions.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/onupdate.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/task.inc.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/language/english/admin.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/letter.php XoopsModules/xnewsletter/branches/luciorota/xnewsletter/sql/mysql.sql XoopsModules/xnewsletter/branches/luciorota/xnewsletter/xoops_version.php Added Paths: ----------- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/update.txt Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/admin/letter.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/admin/letter.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/admin/letter.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -221,6 +221,7 @@ $protocolObjs = $xnewsletter->getHandler('protocol')->getAll($protocolCriteria); $protocol_status = ''; $protocol_letter_id = 0; +// why foreach? foreach ($protocolObjs as $protocolObj) { $protocol_status .= $protocolObj->getVar('protocol_status'); $protocol_letter_id = $protocolObj->getVar('protocol_letter_id'); @@ -396,7 +397,9 @@ $redirectUrl = '?op=list_letters'; break; } - $protocolObj->setVar('protocol_status', _AM_XNEWSLETTER_LETTER_ACTION_SAVED); + $protocolObj->setVar('protocol_status', _AM_XNEWSLETTER_LETTER_ACTION_SAVED); // old style + $protocolObj->setVar('protocol_status_str_id', _XNEWSLETTER_PROTOCOL_STATUS_SAVED); // new from v1.3 + $protocolObj->setVar('protocol_status_vars', array()); // new from v1.3 $protocolObj->setVar('protocol_submitter', $xoopsUser->uid()); $protocolObj->setVar('protocol_created', time()); // Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/attachment.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/attachment.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/attachment.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -83,7 +83,7 @@ $mode_select = new XoopsFormRadio(_AM_XNEWSLETTER_ATTACHMENT_MODE, 'attachment_mode', $this->getVar('attachment_mode')); $mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_ASATTACHMENT, _AM_XNEWSLETTER_ATTACHMENT_MODE_ASATTACHMENT); $mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_ASLINK, _AM_XNEWSLETTER_ATTACHMENT_MODE_ASLINK); - //$mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_AUTO, _AM_XNEWSLETTER_ATTACHMENT_MODE_AUTO); // IN PROGRESS + //$mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_AUTO, _AM_XNEWSLETTER_ATTACHMENT_MODE_AUTO); // for future features $form->addElement($mode_select); $form->addElement(new XoopsFormLabel(_AM_XNEWSLETTER_ATTACHMENT_SUBMITTER, $GLOBALS['xoopsUser']->uname())); Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/bmh.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/bmh.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/bmh.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -43,17 +43,17 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("bmh_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("bmh_rule_no", XOBJ_DTYPE_TXTBOX, null, false, 10); - $this->initVar("bmh_rule_cat", XOBJ_DTYPE_TXTBOX, null, false, 50); - $this->initVar("bmh_bouncetype", XOBJ_DTYPE_TXTBOX, null, false, 50); - $this->initVar("bmh_remove", XOBJ_DTYPE_TXTBOX, null, false, 50); - $this->initVar("bmh_email", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("bmh_subject", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("bmh_measure", XOBJ_DTYPE_INT, null, false); - $this->initVar("bmh_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("bmh_created", XOBJ_DTYPE_INT, time(), false); + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->initVar('bmh_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('bmh_rule_no', XOBJ_DTYPE_TXTBOX, null, false, 10); + $this->initVar('bmh_rule_cat', XOBJ_DTYPE_TXTBOX, null, false, 50); + $this->initVar('bmh_bouncetype', XOBJ_DTYPE_TXTBOX, null, false, 50); + $this->initVar('bmh_remove', XOBJ_DTYPE_TXTBOX, null, false, 50); + $this->initVar('bmh_email', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('bmh_subject', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('bmh_measure', XOBJ_DTYPE_INT, null, false); + $this->initVar('bmh_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('bmh_created', XOBJ_DTYPE_INT, time(), false); } /** Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/cat.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/cat.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/cat.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -48,12 +48,12 @@ { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("cat_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("cat_name", XOBJ_DTYPE_TXTBOX, '', false, 100); - $this->initVar("cat_info", XOBJ_DTYPE_TXTAREA, '', false); - $this->initVar("cat_mailinglist", XOBJ_DTYPE_INT, 0, false); - $this->initVar("cat_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("cat_created", XOBJ_DTYPE_INT, time(), false); + $this->initVar('cat_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('cat_name', XOBJ_DTYPE_TXTBOX, '', false, 100); + $this->initVar('cat_info', XOBJ_DTYPE_TXTAREA, '', false); + $this->initVar('cat_mailinglist', XOBJ_DTYPE_INT, 0, false); + $this->initVar('cat_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('cat_created', XOBJ_DTYPE_INT, time(), false); $this->initVar('dohtml', XOBJ_DTYPE_INT, false); // boolean $this->initVar('dosmiley', XOBJ_DTYPE_INT, true); // boolean $this->initVar('doxcode', XOBJ_DTYPE_INT, true); // boolean Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/catsubscr.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/catsubscr.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/catsubscr.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -43,7 +43,7 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); $this->initVar('catsubscr_id', XOBJ_DTYPE_INT, null, false); $this->initVar('catsubscr_catid', XOBJ_DTYPE_INT, null, false); $this->initVar('catsubscr_subscrid', XOBJ_DTYPE_INT, null, false); Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/import.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/import.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/import.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -43,16 +43,16 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("import_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("import_email", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("import_firstname", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("import_lastname", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("import_sex", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("import_cat_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("import_subscr_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("import_catsubscr_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("import_status", XOBJ_DTYPE_INT, false, false); // boolean + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->initVar('import_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('import_email', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('import_firstname', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('import_lastname', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('import_sex', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('import_cat_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('import_subscr_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('import_catsubscr_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('import_status', XOBJ_DTYPE_INT, false, false); // boolean } /** Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/letter.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/letter.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/letter.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -44,18 +44,18 @@ { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("letter_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("letter_title", XOBJ_DTYPE_TXTBOX, null, true, 100); - $this->initVar("letter_content", XOBJ_DTYPE_TXTAREA, null, true); - $this->initVar("letter_template", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("letter_cats", XOBJ_DTYPE_TXTBOX, null, false, 100); // IN PROGRESS: AN ARRAY SHOULD BE BETTER - $this->initVar("letter_attachment", XOBJ_DTYPE_TXTBOX, null, false, 200); - $this->initVar("letter_account", XOBJ_DTYPE_INT, null, false); - $this->initVar("letter_email_test", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("letter_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("letter_created", XOBJ_DTYPE_INT, time(), false); // timestamp - $this->initVar("letter_sender", XOBJ_DTYPE_INT, null, false); - $this->initVar("letter_sent", XOBJ_DTYPE_INT, false, false); // timestamp or false + $this->initVar('letter_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('letter_title', XOBJ_DTYPE_TXTBOX, null, true, 100); + $this->initVar('letter_content', XOBJ_DTYPE_TXTAREA, null, true); + $this->initVar('letter_template', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('letter_cats', XOBJ_DTYPE_TXTBOX, null, false, 100); // IN PROGRESS: AN ARRAY SHOULD BE BETTER + $this->initVar('letter_attachment', XOBJ_DTYPE_TXTBOX, null, false, 200); + $this->initVar('letter_account', XOBJ_DTYPE_INT, null, false); + $this->initVar('letter_email_test', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('letter_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('letter_created', XOBJ_DTYPE_INT, time(), false); // timestamp + $this->initVar('letter_sender', XOBJ_DTYPE_INT, null, false); + $this->initVar('letter_sent', XOBJ_DTYPE_INT, false, false); // timestamp or false } /** @@ -166,7 +166,7 @@ $mode_select = new XoopsFormRadio(_AM_XNEWSLETTER_ATTACHMENT_MODE, "existing_attachments_mode[{$attachment_id}]", $attachmentObj->getVar("attachment_mode"), ' '); $mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_ASATTACHMENT, _AM_XNEWSLETTER_ATTACHMENT_MODE_ASATTACHMENT); $mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_ASLINK, _AM_XNEWSLETTER_ATTACHMENT_MODE_ASLINK); - //$mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_AUTO, _AM_XNEWSLETTER_ATTACHMENT_MODE_AUTO); // IN PROGRESS + //$mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_AUTO, _AM_XNEWSLETTER_ATTACHMENT_MODE_AUTO); // for future features $delete_attachment_tray->addElement($mode_select); $delete_attachment_tray->addElement(new XoopsFormLabel('', $attachmentObj->getVar('attachment_name'))); $delete_button = new XoopsFormButton('', "delete_attachment_{$i}", _DELETE, 'submit'); @@ -183,7 +183,7 @@ $mode_select = new XoopsFormRadio(_AM_XNEWSLETTER_ATTACHMENT_MODE, "new_attachments_mode[{$j}]", _XNEWSLETTER_ATTACHMENTS_MODE_ASATTACHMENT, ' '); $mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_ASATTACHMENT, _AM_XNEWSLETTER_ATTACHMENT_MODE_ASATTACHMENT); $mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_ASLINK, _AM_XNEWSLETTER_ATTACHMENT_MODE_ASLINK); - //$mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_AUTO, _AM_XNEWSLETTER_ATTACHMENT_MODE_AUTO); // IN PROGRESS + //$mode_select->addOption(_XNEWSLETTER_ATTACHMENTS_MODE_AUTO, _AM_XNEWSLETTER_ATTACHMENT_MODE_AUTO); // for future features $add_attachment_tray->addElement($mode_select); $add_attachment_tray->addElement(new XoopsFormFile('', "new_attachment_index={$j}", $this->xnewsletter->getConfig('xn_maxsize'))); $attachment_tray->addElement($add_attachment_tray); Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/mailinglist.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/mailinglist.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/mailinglist.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -43,15 +43,15 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("mailinglist_id", XOBJ_DTYPE_INT, null, fals); - $this->initVar("mailinglist_name", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("mailinglist_email", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("mailinglist_listname", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("mailinglist_subscribe", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("mailinglist_unsubscribe", XOBJ_DTYPE_TXTBOX, null, false, 100); - $this->initVar("mailinglist_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("mailinglist_created", XOBJ_DTYPE_INT, time(), false); + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->initVar('mailinglist_id', XOBJ_DTYPE_INT, null, fals); + $this->initVar('mailinglist_name', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('mailinglist_email', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('mailinglist_listname', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('mailinglist_subscribe', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('mailinglist_unsubscribe', XOBJ_DTYPE_TXTBOX, null, false, 100); + $this->initVar('mailinglist_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('mailinglist_created', XOBJ_DTYPE_INT, time(), false); } /** Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/protocol.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/protocol.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/protocol.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -36,6 +36,14 @@ { public $xnewsletter = null; + public $protocol_status_strs = array( + _XNEWSLETTER_PROTOCOL_STATUS_SAVED => _AM_XNEWSLETTER_PROTOCOL_STATUS_SAVED, + _XNEWSLETTER_PROTOCOL_STATUS_ERROR_CREATE_TASK => _AM_XNEWSLETTER_PROTOCOL_STATUS_ERROR_CREATE_TASK, + _XNEWSLETTER_PROTOCOL_STATUS_OK_SEND_TEST => _AM_XNEWSLETTER_PROTOCOL_STATUS_OK_SEND_TEST, + _XNEWSLETTER_PROTOCOL_STATUS_OK_SEND => _AM_XNEWSLETTER_PROTOCOL_STATUS_OK_SEND, + _XNEWSLETTER_PROTOCOL_STATUS_ERROR_SEND => _AM_XNEWSLETTER_PROTOCOL_STATUS_ERROR_SEND +// INPROGRESS + ); //Constructor /** * @@ -43,14 +51,16 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("protocol_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("protocol_letter_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("protocol_subscriber_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("protocol_status", XOBJ_DTYPE_TXTBOX, '', false, 200); - $this->initVar("protocol_success", XOBJ_DTYPE_OTHER, null, false); // boolean - $this->initVar("protocol_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("protocol_created", XOBJ_DTYPE_INT, null, false); + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->initVar('protocol_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('protocol_letter_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('protocol_subscriber_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('protocol_status', XOBJ_DTYPE_TXTBOX, '', false, 200); // old style + $this->initVar('protocol_success', XOBJ_DTYPE_OTHER, null, false); // boolean + $this->initVar('protocol_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('protocol_created', XOBJ_DTYPE_INT, null, false); + $this->initVar('protocol_status_str_id', XOBJ_DTYPE_TXTBOX, '', false); // new from v1.3 + $this->initVar('protocol_status_vars', XOBJ_DTYPE_ARRAY, array(), false); // new from v1.3 } /** Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/subscr.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/subscr.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/subscr.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -43,19 +43,19 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("subscr_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("subscr_email", XOBJ_DTYPE_TXTBOX, '', false, 100); - $this->initVar("subscr_firstname", XOBJ_DTYPE_TXTBOX, '', true, 100); - $this->initVar("subscr_lastname", XOBJ_DTYPE_TXTBOX, '', false, 100); - $this->initVar("subscr_uid", XOBJ_DTYPE_INT, null, false); - $this->initVar("subscr_sex", XOBJ_DTYPE_TXTBOX, '', false, 100); - $this->initVar("subscr_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("subscr_created", XOBJ_DTYPE_INT, time(), false); - $this->initVar("subscr_actkey", XOBJ_DTYPE_TXTBOX, '', false, 255); - $this->initVar("subscr_ip", XOBJ_DTYPE_TXTBOX, xoops_getenv('REMOTE_ADDR'), false, 32); - $this->initVar("subscr_activated", XOBJ_DTYPE_INT, 0, false); // IN PROGRESS: should be false or timestamp - $this->initVar("subscr_actoptions", XOBJ_DTYPE_ARRAY, array(), false); + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->initVar('subscr_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('subscr_email', XOBJ_DTYPE_TXTBOX, '', false, 100); + $this->initVar('subscr_firstname', XOBJ_DTYPE_TXTBOX, '', true, 100); + $this->initVar('subscr_lastname', XOBJ_DTYPE_TXTBOX, '', false, 100); + $this->initVar('subscr_uid', XOBJ_DTYPE_INT, null, false); + $this->initVar('subscr_sex', XOBJ_DTYPE_TXTBOX, '', false, 100); + $this->initVar('subscr_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('subscr_created', XOBJ_DTYPE_INT, time(), false); + $this->initVar('subscr_actkey', XOBJ_DTYPE_TXTBOX, '', false, 255); + $this->initVar('subscr_ip', XOBJ_DTYPE_TXTBOX, xoops_getenv('REMOTE_ADDR'), false, 32); + $this->initVar('subscr_activated', XOBJ_DTYPE_INT, 0, false); // IN PROGRESS: should be false or timestamp + $this->initVar('subscr_actoptions', XOBJ_DTYPE_ARRAY, array(), false); } /** Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/task.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/task.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/task.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -37,14 +37,14 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); $this->XoopsObject(); - $this->initVar("task_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("task_letter_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("task_subscr_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("task_starttime", XOBJ_DTYPE_INT, null, false); - $this->initVar("task_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("task_created", XOBJ_DTYPE_INT, time(), false); + $this->initVar('task_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('task_letter_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('task_subscr_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('task_starttime', XOBJ_DTYPE_INT, null, false); + $this->initVar('task_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('task_created', XOBJ_DTYPE_INT, time(), false); } /** Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/template.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/template.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/class/template.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -43,13 +43,13 @@ public function __construct() { $this->xnewsletter = xnewsletterxnewsletter::getInstance(); - $this->db = XoopsDatabaseFactory::getDatabaseConnection(); - $this->initVar("template_id", XOBJ_DTYPE_INT, null, false); - $this->initVar("template_title", XOBJ_DTYPE_TXTBOX, '', true, 100); - $this->initVar("template_description", XOBJ_DTYPE_TXTAREA, '', false); - $this->initVar("template_content", XOBJ_DTYPE_TXTAREA, '', true); - $this->initVar("template_submitter", XOBJ_DTYPE_INT, null, false); - $this->initVar("template_created", XOBJ_DTYPE_INT, time(), false); + $this->db = XoopsDatabaseFactory::getDatabaseConnection(); + $this->initVar('template_id', XOBJ_DTYPE_INT, null, false); + $this->initVar('template_title', XOBJ_DTYPE_TXTBOX, '', true, 100); + $this->initVar('template_description', XOBJ_DTYPE_TXTAREA, '', false); + $this->initVar('template_content', XOBJ_DTYPE_TXTAREA, '', true); + $this->initVar('template_submitter', XOBJ_DTYPE_INT, null, false); + $this->initVar('template_created', XOBJ_DTYPE_INT, time(), false); } /** Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/changelog.txt =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/changelog.txt 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/changelog.txt 2014-09-16 20:35:59 UTC (rev 12783) @@ -2,6 +2,7 @@ ------------------------------- - standardize code (mamba,luciorota) - import procedure: check if limit options are compatible with php.ini 'max_input_vars' setting (luciorota) + - update procedure: rename module's directory name to lowercase (luciorota) - templatize user side (luciorota) - added: send attachment as email attachment or as link (luciorota) - added: possibility to choose the maximum number of attachments (luciorota) Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/install.txt =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/install.txt 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/install.txt 2014-09-16 20:35:59 UTC (rev 12783) @@ -1,3 +1,4 @@ Read Me First ============= -Install this module usually in /modules \ No newline at end of file +1. Copy this module in /modules directory +2. Install this module as usually Added: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/update.txt =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/update.txt (rev 0) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/docs/update.txt 2014-09-16 20:35:59 UTC (rev 12783) @@ -0,0 +1,5 @@ +Read Me First +============= +1. Delete old /modules/xNewsletter directory +2. Copy this module in /modules directory +3. Update this module Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/constants.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/constants.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/constants.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -19,38 +19,46 @@ * @version svn:$id$ */ // constants for accounts -define("_XNEWSLETTER_ACCOUNTS_TYPE_VAL_PHP_MAIL", 1); -define("_XNEWSLETTER_ACCOUNTS_TYPE_VAL_PHP_SENDMAIL", 2); -define("_XNEWSLETTER_ACCOUNTS_TYPE_VAL_POP3", 3); -define("_XNEWSLETTER_ACCOUNTS_TYPE_VAL_SMTP", 4); -define("_XNEWSLETTER_ACCOUNTS_TYPE_VAL_GMAIL", 5); +define('_XNEWSLETTER_ACCOUNTS_TYPE_VAL_PHP_MAIL', 1); +define('_XNEWSLETTER_ACCOUNTS_TYPE_VAL_PHP_SENDMAIL', 2); +define('_XNEWSLETTER_ACCOUNTS_TYPE_VAL_POP3', 3); +define('_XNEWSLETTER_ACCOUNTS_TYPE_VAL_SMTP', 4); +define('_XNEWSLETTER_ACCOUNTS_TYPE_VAL_GMAIL', 5); -define("_XNEWSLETTER_ACCOUNTS_TYPE_INBOX", "INBOX"); -define("_XNEWSLETTER_ACCOUNTS_TYPE_HARDBOX", "INBOX.hard"); -define("_XNEWSLETTER_ACCOUNTS_TYPE_SOFTBOX", "INBOX.soft"); +define('_XNEWSLETTER_ACCOUNTS_TYPE_INBOX', 'INBOX'); +define('_XNEWSLETTER_ACCOUNTS_TYPE_HARDBOX', 'INBOX.hard'); +define('_XNEWSLETTER_ACCOUNTS_TYPE_SOFTBOX', 'INBOX.soft'); // constants for attachments -define("_XNEWSLETTER_ATTACHMENTS_MODE_ASATTACHMENT", 0); -define("_XNEWSLETTER_ATTACHMENTS_MODE_ASLINK", 1); -define("_XNEWSLETTER_ATTACHMENTS_MODE_AUTO", 2); // IN PROGRESS +define('_XNEWSLETTER_ATTACHMENTS_MODE_ASATTACHMENT', 0); +define('_XNEWSLETTER_ATTACHMENTS_MODE_ASLINK', 1); +define('_XNEWSLETTER_ATTACHMENTS_MODE_AUTO', 2); // for future features // constants for actions letter -define("_XNEWSLETTER_LETTER_ACTION_VAL_NO", 0); -define("_XNEWSLETTER_LETTER_ACTION_VAL_PREVIEW", 1); -define("_XNEWSLETTER_LETTER_ACTION_VAL_SEND", 2); -define("_XNEWSLETTER_LETTER_ACTION_VAL_SENDTEST", 3); +define('_XNEWSLETTER_LETTER_ACTION_VAL_NO', 0); +define('_XNEWSLETTER_LETTER_ACTION_VAL_PREVIEW', 1); +define('_XNEWSLETTER_LETTER_ACTION_VAL_SEND', 2); +define('_XNEWSLETTER_LETTER_ACTION_VAL_SENDTEST', 3); // constants for catsubscr_quit_now -define("_XNEWSLETTER_CATSUBSCR_QUIT_NO_VAL_NONE", 0); -define("_XNEWSLETTER_CATSUBSCR_QUIT_NO_VAL_NOW", 1); -define("_XNEWSLETTER_CATSUBSCR_QUIT_NO_VAL_REMOVE", 2); +define('_XNEWSLETTER_CATSUBSCR_QUIT_NO_VAL_NONE', 0); +define('_XNEWSLETTER_CATSUBSCR_QUIT_NO_VAL_NOW', 1); +define('_XNEWSLETTER_CATSUBSCR_QUIT_NO_VAL_REMOVE', 2); // constants for bounced mail handler -define("_XNEWSLETTER_BOUNCETYPE_HARD", "hard"); -define("_XNEWSLETTER_BOUNCETYPE_SOFT", "soft"); -define("_XNEWSLETTER_BMH_MEASURE_VAL_ALL", -1); -define("_XNEWSLETTER_BMH_MEASURE_VAL_PENDING", 0); -define("_XNEWSLETTER_BMH_MEASURE_VAL_NOTHING", 1); -define("_XNEWSLETTER_BMH_MEASURE_VAL_QUIT", 2); -define("_XNEWSLETTER_BMH_MEASURE_VAL_DELETE", 3); +define('_XNEWSLETTER_BOUNCETYPE_HARD', 'hard'); +define('_XNEWSLETTER_BOUNCETYPE_SOFT', 'soft'); +define('_XNEWSLETTER_BMH_MEASURE_VAL_ALL', -1); +define('_XNEWSLETTER_BMH_MEASURE_VAL_PENDING', 0); +define('_XNEWSLETTER_BMH_MEASURE_VAL_NOTHING', 1); +define('_XNEWSLETTER_BMH_MEASURE_VAL_QUIT', 2); +define('_XNEWSLETTER_BMH_MEASURE_VAL_DELETE', 3); + +// constants for protocol_status_str +define('_XNEWSLETTER_PROTOCOL_STATUS_SAVED', 1); +define('_XNEWSLETTER_PROTOCOL_STATUS_ERROR_CREATE_TASK', 2); +define('_XNEWSLETTER_PROTOCOL_STATUS_OK_SEND_TEST', 3); +define('_XNEWSLETTER_PROTOCOL_STATUS_OK_SEND', 4); +define('_XNEWSLETTER_PROTOCOL_STATUS_ERROR_SEND', 5); +// IN PROGRESS Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/functions.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/functions.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/functions.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -154,6 +154,22 @@ } /** + * @param string $str + * @param array $vars associative array + * + * @return string + */ +function xnewsletter_sprintf($str = '', $vars = array(), $char = '') { + if (!$str) return ''; + if (count($vars) > 0) { + foreach ($vars as $k => $v) { + $str = str_replace($char . $k, $v, $str); + } + } + return $str; +} + +/** * @param $contentObj * @param $sets * Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/onupdate.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/onupdate.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/onupdate.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -26,8 +26,7 @@ * **************************************************************************** */ -function xoops_module_update_xnewsletter(&$module, $oldversion = null) { - $oldversion = $module->getVar('version'); +function xoops_module_update_xnewsletter(&$xoopsModule, $oldversion = null) { if ($oldversion == 100) { xoops_module_update_xnewsletter_101(); } @@ -40,7 +39,6 @@ if ($oldversion < 130) { xoops_module_update_xnewsletter_130(); } - return true; } @@ -48,28 +46,40 @@ * @return bool */ function xoops_module_update_xnewsletter_130() { + // change module dirname to lowercase + $path = dirname(dirname(__FILE__)); + $dirname = basename($path); + rename($path, strtolower($dirname)); + // update module dirname field in database to lowercase + global $xoopsDB; + $sql = "UPDATE `{$xoopsDB->prefix("modules")}` SET `dirname` = '" . strtolower($dirname) . "'"; + $sql .= " WHERE LOWER(`dirname`) = '" . strtolower($dirname) . "';"; + $result = $xoopsDB->queryF($sql); + if (!$result) + echo '<br />' . _MI_XNEWSLETTER_UPGRADEFAILED . ": UPDATE 'modules' SET `dirname` = '" . strtolower($dirname) . "'"; + // reverse 'mod_' prefix on tables - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_accounts"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_attachment"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_bmh"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_cat"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_catsubscr"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_import"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_letter"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_mailinglist"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_protocol"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_subscr"); - xoops_module_update_xnewsletter_rename_mod_table("xnewsletter_task"); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_accounts'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_attachment'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_bmh'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_cat'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_catsubscr'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_import'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_letter'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_mailinglist'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_protocol'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_subscr'); + xoops_module_update_xnewsletter_rename_mod_table('xnewsletter_task'); + $sql = "DROP TABLE IF EXISTS `" . $xoopsDB->prefix('xnewsletter_template') . "`"; // create 'xnewsletter_template' table global $xoopsDB; - $sql = sprintf("DROP TABLE IF EXISTS `" . $xoopsDB->prefix('xnewsletter_template') . "`"); - $result = $xoopsDB->queryF($sql); - if (!$result) + $sql = "DROP TABLE IF EXISTS `" . $xoopsDB->prefix('xnewsletter_template') . "`"; + if (!$xoopsDB->queryF($sql)) echo '<br />' . _AM_XNEWSLETTER_UPGRADEFAILED . ": 'DROP TABLE 'xnewsletter_template'"; - $sql = " - CREATE TABLE `" . $xoopsDB->prefix('xnewsletter_template') . "` ( + CREATE TABLE `" . $xoopsDB->prefix('xnewsletter_template') . "` + ( `template_id` int (8) NOT NULL auto_increment, `template_title` varchar (100) NOT NULL default '', `template_description` text NOT NULL default '', @@ -78,8 +88,7 @@ `template_created` int (8) NOT NULL default '0', PRIMARY KEY (`template_id`) ) ENGINE=MyISAM;"; - $result = $xoopsDB->queryF($sql); - if (!$result) + if (!$xoopsDB->queryF($sql)) echo '<br />' . _MI_XNEWSLETTER_UPGRADEFAILED . ": CREATE TABLE 'xnewsletter_template'"; // add fields to 'xnewsletter_cat' table @@ -90,8 +99,7 @@ $sql .= " ADD COLUMN `doxcode` tinyint(1) NOT NULL default '1',"; $sql .= " ADD COLUMN `doimage` tinyint(1) NOT NULL default '1',"; $sql .= " ADD COLUMN `dobr` tinyint(1) NOT NULL default '1';"; - $result = $xoopsDB->queryF($sql); - if (!$result) + if (!$xoopsDB->queryF($sql)) echo '<br />' . _MI_XNEWSLETTER_UPGRADEFAILED . ": ALTER TABLE 'xnewsletter_cat' ADD"; // add fields to 'xnewsletter_letter' table @@ -99,8 +107,7 @@ $sql = "ALTER TABLE `" . $xoopsDB->prefix('xnewsletter_letter') . "`"; $sql .= " ADD COLUMN `letter_sender` int(8) NOT NULL default '0',"; $sql .= " ADD COLUMN `letter_sent` int(10) NOT NULL default '0';"; - $result = $xoopsDB->queryF($sql); - if (!$result) + if (!$xoopsDB->queryF($sql)) echo '<br />' . _MI_XNEWSLETTER_UPGRADEFAILED . ": ALTER TABLE 'xnewsletter_letter' ADD"; // add fields to 'xnewsletter_attachment' table @@ -108,10 +115,17 @@ $sql = "ALTER TABLE `" . $xoopsDB->prefix('xnewsletter_attachment') . "`"; $sql .= " ADD COLUMN `attachment_size` int(8) NOT NULL default '0',"; $sql .= " ADD COLUMN `attachment_mode` int(8) NOT NULL default '0';"; - $result = $xoopsDB->queryF($sql); - if (!$result) + if (!$xoopsDB->queryF($sql)) echo '<br />' . _MI_XNEWSLETTER_UPGRADEFAILED . ": ALTER TABLE 'xnewsletter_attachment' ADD"; + // add fields to 'xnewsletter_protocol' table + global $xoopsDB; + $sql = "ALTER TABLE `" . $xoopsDB->prefix('xnewsletter_protocol') . "`"; + $sql .= " ADD COLUMN `protocol_status_str_id` text NOT NULL default '',"; // for future features + $sql .= " ADD COLUMN `protocol_status_vars` text;"; // for future features + if (!$xoopsDB->queryF($sql)) + echo '<br />' . _MI_XNEWSLETTER_UPGRADEFAILED . ": ALTER TABLE 'xnewsletter_protocol' ADD"; + return true; } @@ -199,15 +213,15 @@ global $xoopsDB; //rename tables to new xoops naming scheme - xoops_module_update_xnewsletter_rename_table("xnewsletter_accounts"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_cat"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_subscr"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_catsubscr"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_letter"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_protocol"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_attachment"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_mailinglist"); - xoops_module_update_xnewsletter_rename_table("xnewsletter_bmh"); + xoops_module_update_xnewsletter_rename_table('xnewsletter_accounts'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_cat'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_subscr'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_catsubscr'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_letter'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_protocol'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_attachment'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_mailinglist'); + xoops_module_update_xnewsletter_rename_table('xnewsletter_bmh'); return true; } Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/task.inc.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/task.inc.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/include/task.inc.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -128,6 +128,8 @@ $protocolObj->setVar('protocol_letter_id', $letter_id); $protocolObj->setVar('protocol_subscriber_id', $subscr_id); $protocolObj->setVar('protocol_status', _AM_XNEWSLETTER_TASK_ERROR_CREATE); + $protocolObj->setVar('protocol_status_str_id', _XNEWSLETTER_PROTOCOL_STATUS_ERROR_CREATE_TASK); + $protocolObj->setVar('protocol_status_vars', array()); $protocolObj->setVar('protocol_success', false); $protocolObj->setVar('protocol_submitter', $uid); $protocolObj->setVar('protocol_created', time()); @@ -388,13 +390,20 @@ if ($mail->Send()) { if ($subscr_id == 0) { - $protocol_status = _AM_XNEWSLETTER_SEND_SUCCESS_TEST . " (" . $recipient['address'] . ")"; + $protocol_status = _AM_XNEWSLETTER_SEND_SUCCESS_TEST . " (" . $recipient['address'] . ")"; // old style + $protocol_status_str_id = _XNEWSLETTER_PROTOCOL_STATUS_OK_SEND_TEST; // new from v1.3 + $protocol_status_vars = array('%recipient' => $recipient['address']); // new from v1.3 } else { - $protocol_status = _AM_XNEWSLETTER_SEND_SUCCESS; + $protocol_status = _AM_XNEWSLETTER_SEND_SUCCESS; // old style + $protocol_status_str_id = _XNEWSLETTER_PROTOCOL_STATUS_OK_SEND; // new from v1.3 + $protocol_status_vars = array(); // new from v1.3 } $protocol_success = true; } else { - $protocol_status = _AM_XNEWSLETTER_FAILED . "-> " . $mail->ErrorInfo; + $protocol_status = _AM_XNEWSLETTER_FAILED . "-> " . $mail->ErrorInfo; // old style + $protocol_status_str_id = _XNEWSLETTER_PROTOCOL_STATUS_ERROR_SEND; // new from v1.3 + $protocol_status_vars = array('%error' => $mail->ErrorInfo); // new from v1.3 + $protocol_success = false; ++$count_err; } @@ -412,7 +421,9 @@ $protocolObj = $xnewsletter->getHandler('protocol')->create(); $protocolObj->setVar('protocol_letter_id', $letter_id); $protocolObj->setVar('protocol_subscriber_id', $subscr_id); - $protocolObj->setVar('protocol_status', $protocol_status); + $protocolObj->setVar('protocol_status', $protocol_status); // old style + $protocolObj->setVar('protocol_status_str_id', $protocol_status_str_id); // new from v1.3 + $protocolObj->setVar('protocol_status_vars', $protocol_status_vars); // new from v1.3 $protocolObj->setVar('protocol_success', $protocol_success); $protocolObj->setVar('protocol_submitter', $uid); $protocolObj->setVar('protocol_created', time()); @@ -427,10 +438,12 @@ unset($mail); } catch (phpmailerException $e) { +// IN PROGRESS $protocol_status = _AM_XNEWSLETTER_SEND_ERROR_PHPMAILER . $e->errorMessage(); //error messages from PHPMailer ++$count_err; $protocol_success = false; } catch (Exception $e) { +// IN PROGRESS $protocol_status = _AM_XNEWSLETTER_SEND_ERROR_PHPMAILER . $e->getMessage(); //error messages from anything else! ++$count_err; $protocol_success = false; @@ -439,15 +452,16 @@ //create final protocol item if ($count_err > 0) { - $protocol_status = _AM_XNEWSLETTER_SEND_ERROR_NUMBER; - $protocol_status = str_replace("%e", $count_err, $protocol_status); - $protocol_status = str_replace("%t", $count_total, $protocol_status); +// IN PROGRESS + $protocol_status = xnewsletter_sprintf(_AM_XNEWSLETTER_SEND_ERROR_NUMBER, array('%e' => $count_err, '%t' => $count_total)); $protocol_success = false; } else { $protocol_success = true; if ($count_total > 0) { - $protocol_status = str_replace("%t", $count_total, _AM_XNEWSLETTER_SEND_SUCCESS_NUMBER); +// IN PROGRESS + $protocol_status = xnewsletter_sprintf(_AM_XNEWSLETTER_SEND_SUCCESS_NUMBER, array('%t' => $count_total)); } else { +// IN PROGRESS $protocol_status = ''; } } @@ -455,6 +469,7 @@ $protocolObj->setVar('protocol_letter_id', $letter_id); $protocolObj->setVar('protocol_subscriber_id', 0); $protocolObj->setVar('protocol_status', $protocol_status); +// IN PROGRESS $protocolObj->setVar('protocol_success', $protocol_success); $protocolObj->setVar('protocol_submitter', $uid); $protocolObj->setVar('protocol_created', time()); Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/language/english/admin.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/language/english/admin.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/language/english/admin.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -474,3 +474,11 @@ //Buttons define('_AM_XNEWSLETTER_NEWTEMPLATE',"Add New Template"); define('_AM_XNEWSLETTER_TEMPLATELIST',"List Template"); + +define('_AM_XNEWSLETTER_PROTOCOL_STATUS_SAVED','Saved'); +define('_AM_XNEWSLETTER_PROTOCOL_STATUS_ERROR_CREATE_TASK','Error creating item in task list'); +define('_AM_XNEWSLETTER_PROTOCOL_STATUS_OK_SEND_TEST','Newsletter sent for test (%recipient)'); +define('_AM_XNEWSLETTER_PROTOCOL_STATUS_OK_SEND','Newsletter sent'); +define('_AM_XNEWSLETTER_PROTOCOL_STATUS_ERROR_SEND','Newsletter send failed -> %error'); +// IN PROGRESS + Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/letter.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/letter.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/letter.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -523,6 +523,8 @@ break; } $protocolObj->setVar('protocol_status', _AM_XNEWSLETTER_LETTER_ACTION_SAVED); + $protocolObj->setVar('protocol_status_str_id', _XNEWSLETTER_PROTOCOL_STATUS_SAVED); // new from v1.3 + $protocolObj->setVar('protocol_status_vars', array()); // new from v1.3 $protocolObj->setVar('protocol_submitter', $xoopsUser->uid()); $protocolObj->setVar('protocol_created', time()); // Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/sql/mysql.sql =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/sql/mysql.sql 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/sql/mysql.sql 2014-09-16 20:35:59 UTC (rev 12783) @@ -94,7 +94,7 @@ CREATE TABLE `xnewsletter_letter` ( `letter_id` int(8) NOT NULL auto_increment, `letter_title` varchar(100) NOT NULL default '', - `letter_content` text NOT NULL , + `letter_content` text NOT NULL default '', `letter_template` varchar(100) NOT NULL default '', `letter_cats` varchar(100) NULL default '', `letter_account` int(8) NOT NULL default '0', @@ -119,6 +119,8 @@ `protocol_submitter` int(8) NOT NULL default '0', `protocol_created` int(10) NOT NULL default '0', `protocol_success` int(8) NOT NULL, + `protocol_status_str_id` text NOT NULL default '', + `protocol_status_vars` text, PRIMARY KEY (`protocol_id`), KEY `idx_protocol_letter_id` (`protocol_letter_id`) ) ENGINE=MyISAM; Modified: XoopsModules/xnewsletter/branches/luciorota/xnewsletter/xoops_version.php =================================================================== --- XoopsModules/xnewsletter/branches/luciorota/xnewsletter/xoops_version.php 2014-09-16 20:31:50 UTC (rev 12782) +++ XoopsModules/xnewsletter/branches/luciorota/xnewsletter/xoops_version.php 2014-09-16 20:35:59 UTC (rev 12783) @@ -49,7 +49,7 @@ //About $modversion['module_status'] = 'Beta 1'; -$modversion['release_date'] = '2014/09/03'; +$modversion['release_date'] = '2014/09/16'; //$modversion['release'] = "1.3"; $modversion['demo_site_url'] = ''; $modversion['demo_site_name'] = ''; @@ -119,6 +119,7 @@ $modversion['hasMain'] = true; $subcount = 1; +$modversion['sub'] = array(); // check user rights $gperm_handler = xoops_gethandler('groupperm'); @@ -408,13 +409,10 @@ $modversion['config'][$i]['formtype'] = 'textbox'; $modversion['config'][$i]['valuetype'] = 'int'; $modversion['config'][$i]['default'] = '60'; - unset($i); // Blocks -$b = 0; - -$b++; +$b = 1; $modversion['blocks'][$b] = array( 'file' => 'blocks_subscrinfo.php', 'name' => _MI_XNEWSLETTER_SUBSCRINFO_BLOCK, @@ -425,8 +423,7 @@ 'can_clone' => true, 'options' => '' ); - -$b++; +++$b; $modversion['blocks'][$b] = array( 'file' => 'blocks_catsubscr.php', 'name' => _MI_XNEWSLETTER_CATSUBSCR_BLOCK_RECENT, @@ -437,8 +434,7 @@ 'can_clone' => true, 'options' => 'recent|5|0|0' ); - -$b++; +++$b; $modversion['blocks'][$b] = array( 'file' => 'blocks_catsubscr.php', 'name' => _MI_XNEWSLETTER_CATSUBSCR_BLOCK_DAY, @@ -450,7 +446,7 @@ 'options' => 'day|5|0|0' ); -$b++; +++$b; $modversion['blocks'][$b] = array( 'file' => 'blocks_letter.php', 'name' => _MI_XNEWSLETTER_LETTER_BLOCK_RECENT, @@ -461,8 +457,7 @@ 'can_clone' => true, 'options' => 'recent|5|0|0' ); - -$b++; +++$b; $modversion['blocks'][$b] = array( 'file' => 'blocks_letter.php', 'name' => _MI_XNEWSLETTER_LETTER_BLOCK_DAY, @@ -473,8 +468,7 @@ 'can_clone' => true, 'options' => 'day|5|0|0' ); - -$b++; +++$b; $modversion['blocks'][$b] = array( 'file' => 'blocks_letter.php' , 'name' => _MI_XNEWSLETTER_LETTER_BLOCK_RANDOM, @@ -485,3 +479,7 @@ 'can_clone' => true, 'options' => 'random|5|0|0' ); +unset($b); + +// Notification +$modversion['hasNotification'] = false; |