|
From: <go...@us...> - 2013-10-16 05:28:21
|
Revision: 12178
http://sourceforge.net/p/xoops/svn/12178
Author: goffy
Date: 2013-10-16 05:28:13 +0000 (Wed, 16 Oct 2013)
Log Message:
-----------
update to version 1.1
Modified Paths:
--------------
XoopsModules/xnewsletter/trunk/xNewsletter/admin/about.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/accounts.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/admin_header.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/bmh.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/index.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/letter.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/maintenance.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/menu.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/protocol.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/sendletter.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/subscr.php
XoopsModules/xnewsletter/trunk/xNewsletter/blocks/blocks_catsubscr.php
XoopsModules/xnewsletter/trunk/xNewsletter/blocks/blocks_letter.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_accounts.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_attachment.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_bmh.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_cat.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_catsubscr.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_letter.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_mailinglist.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_protocol.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_subscr.php
XoopsModules/xnewsletter/trunk/xNewsletter/docs/changelog.txt
XoopsModules/xnewsletter/trunk/xNewsletter/docs/install.txt
XoopsModules/xnewsletter/trunk/xNewsletter/docs/lang_diff.txt
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_attachment_del.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_catsubscr_temp.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_check.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_copy.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_delete.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_details.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_edit.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_failed.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_nothing.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_ok.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_preview.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_quit.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_resend.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_send.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_sendtest.png
XoopsModules/xnewsletter/trunk/xNewsletter/include/config.php
XoopsModules/xnewsletter/trunk/xNewsletter/include/functions.php
XoopsModules/xnewsletter/trunk/xNewsletter/include/mailinglist.php
XoopsModules/xnewsletter/trunk/xNewsletter/include/onupdate.php
XoopsModules/xnewsletter/trunk/xNewsletter/include/search.inc.php
XoopsModules/xnewsletter/trunk/xNewsletter/index.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/english/admin.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/english/blocks.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/english/help/help.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/english/main.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/english/modinfo.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/english/templates/basic.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/english/templates/xoops.html
XoopsModules/xnewsletter/trunk/xNewsletter/letter.php
XoopsModules/xnewsletter/trunk/xNewsletter/protocol.php
XoopsModules/xnewsletter/trunk/xNewsletter/sendletter.php
XoopsModules/xnewsletter/trunk/xNewsletter/sql/mysql.sql
XoopsModules/xnewsletter/trunk/xNewsletter/subscription.php
XoopsModules/xnewsletter/trunk/xNewsletter/templates/blocks/xnewsletter_letter_block_day.html
XoopsModules/xnewsletter/trunk/xNewsletter/templates/blocks/xnewsletter_letter_block_random.html
XoopsModules/xnewsletter/trunk/xNewsletter/templates/blocks/xnewsletter_letter_block_recent.html
XoopsModules/xnewsletter/trunk/xNewsletter/xoops_version.php
Added Paths:
-----------
XoopsModules/xnewsletter/trunk/xNewsletter/admin/import.php
XoopsModules/xnewsletter/trunk/xNewsletter/admin/task.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_import.php
XoopsModules/xnewsletter/trunk/xNewsletter/class/xNewsletter_task.php
XoopsModules/xnewsletter/trunk/xNewsletter/cron.php
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_delete_2.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_edit_2.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_import.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/icons/xn_task.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/letter_template/kletterfreaks.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/letter_template/nf_bg_green.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/letter_template/nf_bg_red.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/letter_template/nf_logo.png
XoopsModules/xnewsletter/trunk/xNewsletter/images/letter_template/nf_logo_trans.png
XoopsModules/xnewsletter/trunk/xNewsletter/include/task.inc.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/admin.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/blocks.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/help/
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/help/help.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/help/index.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/index.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/mail_template/
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/mail_template/activate.tpl
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/mail_template/delete.tpl
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/mail_template/index.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/mail_template/info_change.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/mail_template/update.tpl
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/main.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/modinfo.php
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/basic.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/index.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/kletterfreaks.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/naturfreunde_gruen.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/naturfreunde_rot.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/naturfreunde_weiss.html
XoopsModules/xnewsletter/trunk/xNewsletter/language/german/templates/xoops.html
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/csv.php
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/csv.png
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/evennews.php
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/rmbulletin.php
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/sample1col.csv
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/sample4col.csv
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/smartpartner.php
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/subscribers.php
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/system_user.png
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/weblinks.php
XoopsModules/xnewsletter/trunk/xNewsletter/plugins/xoopsuser.php
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/about.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/about.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/about.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -31,7 +31,7 @@
//global $indexAdmin;
echo $indexAdmin->addNavigation("about.php");
-echo $indexAdmin->renderabout('6KJ7RW5DR3VTJ', false);
+echo $indexAdmin->renderabout('9P3B3FXKF868J', false);
include "admin_footer.php";
?>
\ No newline at end of file
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/accounts.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/accounts.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/accounts.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -297,7 +297,7 @@
global $xoopsDB;
$verif_accounts_default = "1";
//reset old accounts_default
- $sql = "UPDATE `".$xoopsDB->prefix("xnewsletter_accounts")."` SET `accounts_default` = '0'";
+ $sql = "UPDATE `".$xoopsDB->prefix("mod_xnewsletter_accounts")."` SET `accounts_default` = '0'";
$result= $xoopsDB->query($sql) or die ("MySQL-Error: " . mysql_error());
} else {
$verif_accounts_default = "0";
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/admin_header.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/admin_header.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/admin_header.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -68,6 +68,8 @@
$protocolHandler =& xoops_getModuleHandler('xNewsletter_protocol', $dirname);
$mailinglistHandler =& xoops_getModuleHandler('xNewsletter_mailinglist', $dirname);
$bmhHandler =& xoops_getModuleHandler('xNewsletter_bmh', $dirname);
+$importHandler =& xoops_getModuleHandler('xNewsletter_import', $dirname);
+$taskHandler =& xoops_getModuleHandler('xNewsletter_task', $dirname);
$myts = MyTextSanitizer::getInstance();
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/bmh.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/bmh.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/bmh.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -46,7 +46,7 @@
$obj_bmh =& $bmhHandler->get($bmh_id);
$bmh_email = $obj_bmh->getVar("bmh_email");
- $sql = "SELECT subscr_id FROM " . $xoopsDB->prefix("xnewsletter_subscr") . " WHERE (";
+ $sql = "SELECT subscr_id FROM " . $xoopsDB->prefix("mod_xnewsletter_subscr") . " WHERE (";
$sql .= "subscr_email='" . $bmh_email . "'";
$sql .= ") LIMIT 1;";
if ( $user = $xoopsDB->query($sql) ) {
@@ -54,6 +54,10 @@
$subscr_id = intval($row_user[0]);
}
if ($subscr_id == 0) {
+ //set bmh_measure for all entries in bmh with this email
+ $sql_upd_measure = "UPDATE ".$xoopsDB->prefix("mod_xnewsletter_bmh")." SET `bmh_measure` = '"._AM_XNEWSLETTER_BMH_MEASURE_VAL_NOTHING."'";
+ $sql_upd_measure .=" WHERE ((`".$xoopsDB->prefix("mod_xnewsletter_bmh")."`.`bmh_email` ='".$bmh_email."') AND (`".$xoopsDB->prefix("mod_xnewsletter_bmh")."`.`bmh_measure` ='0'))";
+ $xoopsDB->query($sql_upd_measure);
redirect_header("bmh.php?op=list", 5, _AM_XNEWSLETTER_BMH_ERROR_NO_SUBSCRID);
}
$obj_subscr =& $subscrHandler->get($subscr_id);
@@ -63,11 +67,11 @@
$actionprot_err = $obj_subscr->getHtmlErrors()."<br/><br/><br/>";
$count_err++;
}
+
//delete subscription
$crit_catsubscr = new CriteriaCompo();
$crit_catsubscr->add(new Criteria('catsubscr_subscrid', $subscr_id));
$numrows_catsubscr = $catsubscrHandler->getCount($crit_catsubscr);
-
if ($numrows_catsubscr > 0) {
$catsubscr_arr = $catsubscrHandler->getall($crit_catsubscr);
foreach (array_keys($catsubscr_arr) as $cat) {
@@ -87,14 +91,14 @@
}
}
}
-
+
if ($count_err == 0) {
- redirect_header("bmh.php?op=handle_bmh&bmh_id=".$bmh_id."&bmh_measure="._AM_XNEWSLETTER_BMH_MEASURE_VAL_DELETE."&filter=".$filter."'", 3, _AM_XNEWSLETTER_FORMDELOK);
+ redirect_header("bmh.php?op=handle_bmh&bmh_id=".$bmh_id."&bmh_measure="._AM_XNEWSLETTER_BMH_MEASURE_VAL_DELETE."&filter=".$filter, 3, _AM_XNEWSLETTER_FORMDELOK);
} else {
echo $actionprot_err;
}
} else {
- xoops_confirm(array("ok" => 1, "bmh_id" => $bmh_id, "op" => "bmh_delsubscr", "filter" => $filter), "bmh.php", sprintf(_AM_XNEWSLETTER_BMH_MEASURE_DELETE_SURE));
+ xoops_confirm(array("ok" => 1, "bmh_id" => $bmh_id, "op" => "bmh_delsubscr", "filter" => $filter), "bmh.php", sprintf(_AM_XNEWSLETTER_BMH_MEASURE_DELETE_SURE));
}
break;
@@ -108,25 +112,25 @@
redirect_header("bmh.php?op=list&filter=".$filter."'", 3, _AM_XNEWSLETTER_BMH_MEASURE_ALREADY_DELETED);
}
+ $bmh_email = $obj_bmh->getVar("bmh_email");
+
if ($bmh_measure == _AM_XNEWSLETTER_BMH_MEASURE_VAL_QUIT) {
- $bmh_email = $obj_bmh->getVar("bmh_email");
-
- $sql = "UPDATE `".$xoopsDB->prefix("xnewsletter_subscr")."` INNER JOIN `";
- $sql .= $xoopsDB->prefix("xnewsletter_catsubscr")."` ON `subscr_id` = `catsubscr_subscrid` ";
+ $sql = "UPDATE `".$xoopsDB->prefix("mod_xnewsletter_subscr")."` INNER JOIN `";
+ $sql .= $xoopsDB->prefix("mod_xnewsletter_catsubscr")."` ON `subscr_id` = `catsubscr_subscrid` ";
$sql .= "SET `catsubscr_quited` = ".time()." WHERE (((`subscr_email`)='";
$sql .= $bmh_email. "'))";
$result= $xoopsDB->queryF($sql) or die ("MySQL-Error: " . mysql_error());
}
- //Form bmh_measure
- $obj_bmh->setVar("bmh_measure", $bmh_measure);
- //Form bmh_submitter
- $obj_bmh->setVar("bmh_submitter", $xoopsUser->uid());
- //Form bmh_created
- $obj_bmh->setVar("bmh_created", time());
+ //set bmh_measure for all entries in bmh with this email
+ $sql_upd = "UPDATE ".$xoopsDB->prefix("mod_xnewsletter_bmh")." SET ";
+ $sql_upd .="`bmh_measure` = '".$bmh_measure."'";
+ $sql_upd .=", `bmh_submitter` = '".$xoopsUser->uid()."'";
+ $sql_upd .=", `bmh_created` = '".time()."'";
+ $sql_upd .=" WHERE ((`".$xoopsDB->prefix("mod_xnewsletter_bmh")."`.`bmh_email` ='".$bmh_email."') AND (`".$xoopsDB->prefix("mod_xnewsletter_bmh")."`.`bmh_measure` ='0'))";
+ $result= $xoopsDB->queryF($sql_upd) or die ("MySQL-Error: " . mysql_error());
- if ($bmhHandler->insert($obj_bmh)) {
- redirect_header("bmh.php?op=list&filter=".$filter, 3, _AM_XNEWSLETTER_FORMOK);
- }
+ redirect_header("bmh.php?op=list&filter=".$filter, 3, _AM_XNEWSLETTER_FORMOK);
+
echo $obj_bmh->getHtmlErrors();
break;
@@ -149,7 +153,7 @@
$bmh = new BounceMailHandler();
$bmh->verbose = VERBOSE_SIMPLE; //VERBOSE_REPORT; //VERBOSE_DEBUG; //VERBOSE_QUIET; // default is VERBOSE_SIMPLE
//$bmh->use_fetchstructure = true; // true is default, no need to speficy
- //$bmh->testmode = false; // false is default, no need to specify
+ //$bmh->testmode = true; // false is default, no need to specify
//$bmh->debug_body_rule = false; // false is default, no need to specify
//$bmh->debug_dsn_rule = false; // false is default, no need to specify
//$bmh->purge_unprocessed = false; // false is default, no need to specify
Added: XoopsModules/xnewsletter/trunk/xNewsletter/admin/import.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/import.php (rev 0)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/import.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -0,0 +1,440 @@
+<?php
+/**
+ * ****************************************************************************
+ * - A Project by Developers TEAM For Xoops - ( http://www.xoops.org )
+ * ****************************************************************************
+ * XNEWSLETTER - MODULE FOR XOOPS
+ * Copyright (c) 2007 - 2012
+ * Goffy ( wedega.com )
+ *
+ * You may not change or alter any portion of this comment or credits
+ * of supporting developers from this source code or any supporting
+ * source code which is considered copyrighted (c) material of the
+ * original comment or credit authors.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ * ---------------------------------------------------------------------------
+ * @copyright Goffy ( wedega.com )
+ * @license GPL 2.0
+ * @package xNewsletter
+ * @author Goffy ( web...@we... )
+ *
+ * Version : $Id $
+ * ****************************************************************************
+ */
+
+include "admin_header.php";
+xoops_cp_header();
+
+global $xoopsUser, $xoopsDB;
+
+$basic_limit_import_checked = 100;
+$basic_limit_import_at_once = 10;
+
+$op = xNewsletter_CleanVars($_REQUEST, 'op', 'default', 'string');
+$plugin = xNewsletter_CleanVars($_REQUEST, 'plugin', 'csv', 'string');
+$cat_id = xNewsletter_CleanVars($_REQUEST, 'cat_id', 0, 'int');
+$action_after_read = xNewsletter_CleanVars($_REQUEST, 'action_after_read', 1, 'int');
+$start = xNewsletter_CleanVars($_REQUEST, 'start', 0, 'int' );
+$limitcheck = xNewsletter_CleanVars($_REQUEST, 'limitcheck', $basic_limit_import_checked, 'int' );
+$skipcatsubscrexist = xNewsletter_CleanVars($_REQUEST, 'skipcatsubscrexist', 1, 'int' );
+$check_import = xNewsletter_CleanVars($_REQUEST, 'check_import', 0, 'int');
+
+// echo "<br/>op:$op plugin:$plugin cat_id:$cat_id action_after_read:$action_after_read start:$start limitcheck:$limitcheck skipcatsubscrexist:$skipcatsubscrexist<br/><br/>";
+
+echo $indexAdmin->addNavigation("import.php");
+
+switch ($op)
+{
+ case "show_formcheck":
+
+ $indexAdmin->addItemButton(_AM_XNEWSLETTER_IMPORT_PLUGINS_AVAIL, 'import.php?op=default', 'list');
+ echo $indexAdmin->renderButton();
+
+ $importHandler =& xoops_getModuleHandler("xNewsletter_import", "xNewsletter");
+ $crit_import = new CriteriaCompo();
+ $crit_import->setSort("import_id");
+ $crit_import->setOrder("ASC");
+ $numrows = $importHandler->getCount($crit_import);
+
+ $crit_import->setStart($start);
+ $crit_import->setLimit($limitcheck);
+ $import_arr = $importHandler->getall($crit_import);
+
+ if ($numrows > 0) {
+ include_once(XOOPS_ROOT_PATH."/class/xoopsformloader.php");
+
+ $action = $_SERVER["REQUEST_URI"];
+ $unique_id = uniqid(mt_rand());
+ $form = "<br/><form name=\"form_import_".$unique_id."\" id=\"form_import_".$unique_id."\" action=\"import.php\" method=\"post\" enctype=\"multipart/form-data\">";
+
+ $showlimit = str_replace("%s", $start+1, _AM_XNEWSLETTER_IMPORT_SHOW);
+ if ($limitcheck < $numrows) {
+ $showlimit = str_replace("%l", $limitcheck, $showlimit);
+ } else {
+ $showlimit = str_replace("%l", $numrows, $showlimit);
+ }
+ $showlimit = str_replace("%n", $numrows, $showlimit);
+
+ $form .="<table width=\"100%\" cellspacing=\"1\" class=\"outer\">
+ <tr>
+ <td align=\"left\" colspan='8'>".$showlimit."</td>
+ </tr>";
+
+ $class = "odd";
+ $form .="
+ <tr>
+ <th align=\"center\"> </th>
+ <th align=\"center\">"._AM_XNEWSLETTER_SUBSCR_EMAIL."</th>
+ <th align=\"center\">"._AM_XNEWSLETTER_SUBSCR_SEX."</th>
+ <th align=\"center\">"._AM_XNEWSLETTER_SUBSCR_FIRSTNAME."</th>
+ <th align=\"center\">"._AM_XNEWSLETTER_SUBSCR_LASTNAME."</th>
+ <th align=\"center\">"._AM_XNEWSLETTER_IMPORT_EMAIL_EXIST."</th>
+ <th align=\"center\">"._AM_XNEWSLETTER_IMPORT_CATSUBSCR_EXIST."</th>
+ <th align=\"center\">"._AM_XNEWSLETTER_CAT_NAME."</th>
+ </tr>";
+
+ $class = "odd";
+ $counter = 0;
+
+ //get data for dropdown with cats
+ $catHandler =& xoops_getModuleHandler("xNewsletter_cat", "xNewsletter");
+ $criteria = new CriteriaCompo();
+ $criteria->setSort('cat_id ASC, cat_name');
+ $criteria->setOrder('ASC');
+ $cat_arr=$catHandler->getall($criteria);
+
+ foreach (array_keys($import_arr) as $i) {
+ $counter++;
+ $form .= "<tr class=\"".$class."\">";
+ $class = ($class == "even") ? "odd" : "even";
+ $form .= "<td align=\"center\">".$counter;
+ $form .= "<input type='hidden' name='import_id_".$counter."' title='import_id_".$counter."' id='import_id_".$counter."' value='".$import_arr[$i]->getVar("import_id")."' />";
+ $form .= "</td>";
+ $form .= "<td align=\"center\">";
+ $form .= "<input type='text' disabled=disabled name='email_".$counter."' title='"._AM_XNEWSLETTER_SUBSCR_EMAIL."' id='email_".$counter."' value='".$import_arr[$i]->getVar("import_email")."' />";
+ $form .= "</td>";
+
+ $form .= "<td align=\"center\">";
+ $sex = $import_arr[$i]->getVar("import_sex");
+ $form .= "<select size=\"1\" name=\"sex_".$counter."\" id=\"sex_".$counter."\" title=\""._AM_XNEWSLETTER_SUBSCR_SEX."\" ";
+ $form .= "value=\"".$sex."\">";
+ $form .= "<option value=\"\"";
+ if ($sex==_AM_XNEWSLETTER_SUBSCR_SEX_EMPTY) $form .= " selected=\"selected\"";
+ $form .= ">"._AM_XNEWSLETTER_SUBSCR_SEX_EMPTY."</option>";
+ $form .= "<option value=\""._AM_XNEWSLETTER_SUBSCR_SEX_FEMALE."\"";
+ if ($sex==_AM_XNEWSLETTER_SUBSCR_SEX_FEMALE) $form .= " selected=\"selected\"";
+ $form .= ">"._AM_XNEWSLETTER_SUBSCR_SEX_FEMALE."</option>";
+ $form .= "<option value=\""._AM_XNEWSLETTER_SUBSCR_SEX_MALE."\"";
+ if ($sex==_AM_XNEWSLETTER_SUBSCR_SEX_MALE) $form .= " selected=\"selected\"";
+ $form .= ">"._AM_XNEWSLETTER_SUBSCR_SEX_MALE."</option>";
+ $form .= "<option value=\""._AM_XNEWSLETTER_SUBSCR_SEX_COMP."\"";
+ if ($sex==_AM_XNEWSLETTER_SUBSCR_SEX_COMP) $form .= " selected=\"selected\"";
+ $form .= ">"._AM_XNEWSLETTER_SUBSCR_SEX_COMP."</option>";
+ $form .= "<option value=\""._AM_XNEWSLETTER_SUBSCR_SEX_FAMILY."\"";
+ if ($sex==_AM_XNEWSLETTER_SUBSCR_SEX_FAMILY) $form .= " selected=\"selected\"";
+ $form .= ">"._AM_XNEWSLETTER_SUBSCR_SEX_FAMILY."</option>";
+ $form .= "</select>\n";
+ $form .= "</td>";
+
+ $form .= "<td align=\"center\">";
+ $form .= "<input type='text' name='firstname_".$counter."' title='"._AM_XNEWSLETTER_SUBSCR_FIRSTNAME."' id='firstname_".$counter."' value='".$import_arr[$i]->getVar("import_firstname")."' />";
+ $form .= "</td>";
+ $form .= "<td align=\"center\">";
+ $form .= "<input type='text' name='lastname_".$counter."' title='"._AM_XNEWSLETTER_SUBSCR_LASTNAME."' id='lastname_".$counter."' value='".$import_arr[$i]->getVar("import_lastname")."' />";
+ $form .= "</td>";
+ $form .= "<td align=\"center\">";
+ $subscr_id = $import_arr[$i]->getVar("import_subscr_id");
+ $form .= "<input type='hidden' name='subscr_id_".$counter."' title='subscr_id' id='subscr_id_".$counter."' value='".$subscr_id."' />";
+ if ($subscr_id > 0) $form .= "<img src='".XNEWSLETTER_ICON."/xn_ok.png' alt='"._AM_XNEWSLETTER_IMPORT_EMAIL_EXIST."' title='"._AM_XNEWSLETTER_IMPORT_EMAIL_EXIST."' />";
+ $form .= "</td>";
+ $form .= "<td align=\"center\">";
+ $catsubscr_id = $import_arr[$i]->getVar("import_catsubscr_id");
+ $form .= "<input type='hidden' name='catsubscr_id_".$counter."' title='catsubscr_id' id='catsubscr_id_".$counter."' value='".$catsubscr_id."' />";
+ if ($catsubscr_id > 0) $form .= "<img src='".XNEWSLETTER_ICON."/xn_ok.png' alt='"._AM_XNEWSLETTER_IMPORT_CATSUBSCR_EXIST."' title='"._AM_XNEWSLETTER_IMPORT_CATSUBSCR_EXIST."' />";
+ $form .= "</td>";
+ $form .= "</td>";
+ $form .= "<td align=\"center\">";
+
+ $curr_cat_id =$import_arr[$i]->getVar("import_cat_id");
+ $form .= "<select size=\"1\" name=\"cat_id_".$counter."\" id=\"cat_id_".$counter."\" title=\"cat\" ";
+ $form .= "value=\"".$curr_cat_id."\">";
+ $cat_select = "<option value=\"0\"";
+ $cat_select .= ">"._AM_XNEWSLETTER_IMPORT_NOIMPORT."</option>";
+ foreach (array_keys($cat_arr) as $j)
+ {
+ $cat_select .= "<option value=\"".$j."\"";
+ if ($curr_cat_id == $j) $cat_select .= " selected=\"selected\"";
+ $cat_select .= ">".$cat_arr[$j]->getVar("cat_name")."</option>";
+ }
+
+ $form .= $cat_select;
+ $form .= "</select>\n";
+
+ $form .= "</td>";
+ $form .= "</tr>";
+ }
+ $form .= "<tr class=\"".$class."\">";
+ $class = ($class == "even") ? "odd" : "even";
+ $form .= "<td colspan=\"8\"align=\"center\">";
+ $form .= "<input type='hidden' name='counter' title='counter' id='counter' value='".$counter."' />";
+ $form .= "<input type='hidden' name='limitcheck' title='limitcheck' id='limitcheck' value='".$limitcheck."' />";
+ $form .= "<input type='hidden' name='op' title='op' id='op' value='apply_import_form' />";
+ $form .= "<input type='submit' class='formButton' name='submit' id='submit' value='"._AM_XNEWSLETTER_IMPORT_EXEC."' title='"._AM_XNEWSLETTER_IMPORT_EXEC."' />";
+ $form .= "</td></tr>";
+
+ $form .= "</table></form>";
+ echo $form;
+ }
+ break;
+
+ case "apply_import_form":
+ //update mod_xnewsletter with settings form_import
+ $counter = xNewsletter_CleanVars($_REQUEST, 'counter', 0, 'int');
+
+ for ($i=1; $i < ($counter+1); $i++) {
+ $import_id = xNewsletter_CleanVars($_REQUEST, 'import_id_'.$i, 'default', 'string');
+ $subscr_firstname = xNewsletter_CleanVars($_REQUEST, 'firstname_'.$i, '', 'string');
+ $subscr_lastname = xNewsletter_CleanVars($_REQUEST, 'lastname_'.$i, '', 'string');
+ $subscr_sex = xNewsletter_CleanVars($_REQUEST, 'sex_'.$i, '', 'string');
+ $cat_id = xNewsletter_CleanVars($_REQUEST, 'cat_id_'.$i, 0, 'int');
+
+ if ($cat_id > 0) {
+ if ($subscr_id==0) {
+ //update sex, firstname, lastname
+ $sql = "UPDATE ".$xoopsDB->prefix('mod_xnewsletter_import')." SET `import_sex`='$subscr_sex', `import_firstname`='$subscr_firstname', `import_lastname`='$subscr_lastname' WHERE `import_id`=$import_id";
+ $result=$xoopsDB->queryF($sql);
+ }
+ }
+ //update cat_id and import_status
+ $sql = "UPDATE ".$xoopsDB->prefix('mod_xnewsletter_import')." SET `import_cat_id`='$cat_id', `import_status`=1 WHERE `import_id`=$import_id";
+ $result=$xoopsDB->queryF($sql);
+ }
+
+ redirect_header("import.php?op=exec_import_final&check_import=1&limitcheck=".$limitcheck, 0, "");
+ break;
+
+ case "exec_import_final":
+
+ //execute final import of all data from mod_xnewsletter_import, where import_status = 1
+ //delete data from mod_xnewsletter_import, when imported (successful or not)
+ $indexAdmin->addItemButton(_AM_XNEWSLETTER_IMPORT_PLUGINS_AVAIL, 'import.php?op=default', 'list');
+ echo $indexAdmin->renderButton();
+
+ $ip = xoops_getenv("REMOTE_ADDR");
+ $submitter = $xoopsUser->uid();
+
+ $crit_import = new CriteriaCompo();
+ $crit_import->add(new Criteria('import_status', "1"));
+ $numrows_total = $importHandler->getCount();
+ $numrows_act = $importHandler->getCount($crit_import);
+ if ( $numrows_act > 0 ) {
+ $sql = "SELECT * FROM ".$xoopsDB->prefix("mod_xnewsletter_import")." WHERE ((import_status)=1)";
+ $sql .= " ORDER BY `import_id` ASC";
+ $counter = 0;
+ $users_import = $xoopsDB->queryF($sql) or die ("MySQL-Error: " . mysql_error());
+ while ($user_import = mysql_fetch_assoc($users_import)) {
+ $import_id = $user_import["import_id"];
+ $subscr_email = $user_import["import_email"];
+ $subscr_firstname = $user_import["import_firstname"];
+ $subscr_lastname = $user_import["import_lastname"];
+ $subscr_sex = $user_import["import_sex"];
+ $cat_id = $user_import["import_cat_id"];
+ $subscr_id = $user_import["import_subscr_id"];
+ $catsubscr_id = $user_import["import_catsubscr_id"];
+ $subscribe = 0;
+
+ if ($cat_id == 0) {
+ create_prot ( str_replace("%e", $subscr_email, _AM_XNEWSLETTER_IMPORT_RESULT_SKIP), 1, $submitter);
+ } else {
+ //register email
+ if ($subscr_id==0) {
+ $subscr_uid = 0;
+ $sql = "SELECT `uid` FROM ".$xoopsDB->prefix("users")." WHERE (`email`='";
+ $sql .= $subscr_email;
+ $sql .= "') LIMIT 1";
+ if ( $user = $xoopsDB->queryF($sql) ) {
+ $row_user = mysql_fetch_array($user);
+ $subscr_uid = $row_user[0];
+ }
+ unset($row_user);
+ unset($user);
+
+ $sql = "INSERT INTO `".$xoopsDB->prefix('mod_xnewsletter_subscr')."` (`subscr_email`, `subscr_firstname`, `subscr_lastname`, `subscr_uid`, `subscr_sex`, `subscr_submitter`, `subscr_created`, `subscr_ip`, `subscr_activated`, `subscr_actoptions`) VALUES ('".$subscr_email."','".$subscr_firstname."','".$subscr_lastname."',".intval($subscr_uid).",'".$subscr_sex."',".$submitter.",".time().",'".$ip."','1','')";
+ if (!$xoopsDB->queryF($sql)) {
+ create_prot ( str_replace("%e", $subscr_email, _AM_XNEWSLETTER_IMPORT_RESULT_FAILED), 0, $submitter);
+ } else {
+ //register email successful
+ $resulttext = $subscr_email.": "._AM_XNEWSLETTER_IMPORT_RESULT_REG_OK." | ";
+ $subscr_id = $xoopsDB->getInsertId();
+ $subscribe=1;
+ }
+
+ } else {
+ //email already registered
+ $resulttext = $subscr_email.": "._AM_XNEWSLETTER_IMPORT_EMAIL_EXIST." | ";
+ $subscribe=1;
+ }
+ if ($subscribe == 1) {
+ if ($catsubscr_id==0) {
+ //add subscription of this email
+ $sql = "INSERT INTO `".$xoopsDB->prefix('mod_xnewsletter_catsubscr')."` (`catsubscr_catid`, `catsubscr_subscrid`, `catsubscr_submitter`, `catsubscr_created`) VALUES (".$cat_id.",".$subscr_id.",".$submitter.",".time().")";
+ if ($xoopsDB->queryF($sql)) {
+ create_prot ( $resulttext._AM_XNEWSLETTER_IMPORT_RESULT_SUBSCR_OK, 1, $submitter);
+ //handle mailinglists
+ $cat_mailinglist = 0;
+ $sql = "SELECT `cat_mailinglist` FROM ".$xoopsDB->prefix("mod_xnewsletter_cat")." WHERE (`cat_id`=";
+ $sql .= $cat_id;
+ $sql .= ") LIMIT 1";
+ if ( $cat_mls = $xoopsDB->queryF($sql) ) {
+ $cat_ml = mysql_fetch_array($cat_mls);
+ $cat_mailinglist = $cat_ml[0];
+ }
+ unset($cat_ml);
+ unset($cat_mls);
+
+ if ($cat_mailinglist > 0) {
+ require_once( XOOPS_ROOT_PATH."/modules/xNewsletter/include/mailinglist.php" );
+ subscribingMLHandler(1, $subscr_id, $cat_mailinglist);
+ }
+ } else {
+ create_prot ( str_replace("%e", $subscr_email, _AM_XNEWSLETTER_IMPORT_RESULT_FAILED), 0, $submitter);
+ }
+ } else {
+ create_prot ( $resulttext._AM_XNEWSLETTER_IMPORT_CATSUBSCR_EXIST, 1, $submitter);
+ }
+ }
+ }
+ $sql_del = "DELETE FROM ".$xoopsDB->prefix('mod_xnewsletter_import')." WHERE `import_id`=".$import_id;
+ $result = $xoopsDB->queryF($sql_del);
+ }
+
+ echo "<div style='margin-top:20px;margin-bottom:20px;color:#ff0000;font-weight:bold;font-size:14px'>";
+ $img_ok = "<img src='".XNEWSLETTER_ICON."/xn_ok.png' alt='"._AM_XNEWSLETTER_OK."' title='"._AM_XNEWSLETTER_OK."' /> ";
+ $resulttext = str_replace("%p", $numrows_act ,_AM_XNEWSLETTER_IMPORT_FINISHED);
+ $resulttext = str_replace("%t", $numrows_total ,$resulttext);
+ echo $img_ok.$resulttext;
+ echo "</div>";
+
+ $numrows_pend = $importHandler->getCount();
+ if ($numrows_pend > 0) {
+ $form_continue = "<form id='form_continue' enctype='multipart/form-data' method='post' action='import.php' name='form_continue'>";
+ $form_continue .= "<input id='submit' class='formButton' type='submit' title='"._AM_XNEWSLETTER_IMPORT_CONTINUE."' value='"._AM_XNEWSLETTER_IMPORT_CONTINUE."' name='submit'>";
+ $form_continue .= '<input id="limitcheck" type="hidden" value="'.$limitcheck.'" name="limitcheck">';
+ if ($check_import==1) {
+ //show next form for check settings
+ $form_continue .= '<input id="op" type="hidden" value="show_formcheck" name="op">';
+ } else {
+ // set import_status = 1 for next package
+ $sql_update = "UPDATE ".$xoopsDB->prefix("mod_xnewsletter_import")." SET `import_status`=1 ORDER BY import_id LIMIT ".$limitcheck;
+ $xoopsDB->queryF($sql_update);
+ //execute import for the next package
+ $form_continue .= '<input id="op" type="hidden" value="exec_import_final" name="op">';
+ }
+ $form_continue .= '<input id="action_after_read" type="hidden" value="'.$action_after_read.'" name="action_after_read">';
+ $form_continue .= '<input id="limitcheck" type="hidden" value="'.$limitcheck.'" name="limitcheck">';
+ $form_continue .= '<input id="plugin" type="hidden" value="'.$plugin.'" name="plugin">';
+ $form_continue .= '<input id="check_import" type="hidden" value="'.$check_import.'" name="check_import">';
+ $form_continue .= "</form>";
+ echo $form_continue;
+ }
+ } else {
+ echo _AM_XNEWSLETTER_IMPORT_NODATA;
+ }
+ break;
+
+ case "searchdata":
+ //delete all existing data, import data into mod_xnewsletter_import with plugin
+ //set cat_id as preselected, update information about existing registration/subscriptions
+ //if ($action_after_read==1) execute import else show form for check before executing import
+
+ $pluginFile = XNEWSLETTER_PATH . "/plugins/" . $plugin . '.php';
+ if ( !file_exists($pluginFile) ) {
+ echo "Error: File ".$plugin."' doesn't exist";
+ break;
+ }
+ require_once($pluginFile);
+
+ $function = 'xnewsletter_plugin_getdata_' . $plugin;
+ if (!function_exists($function)) {
+ echo "Error: require function 'xnewsletter_plugin_getdata_".$plugin."' doesn't exist";
+ break;
+ }
+
+ //delete all existing data
+ $sql = "TRUNCATE TABLE ".$xoopsDB->prefix('mod_xnewsletter_import');
+ $result=$xoopsDB->queryF($sql);
+
+ //import data into mod_xnewsletter_import with plugin
+ if ($plugin == 'csv') {
+ $csv_file = $_FILES['csv_file']['tmp_name'];
+ $csv_header = xNewsletter_CleanVars($_REQUEST, 'csv_header', 0, 'int');
+ $csv_delimiter = xNewsletter_CleanVars($_REQUEST, 'csv_delimiter', ',', 'string');
+ //$numData = $function($cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist, $csv_file, $csv_delimiter, $csv_header);
+ $numData = call_user_func($function, $cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist, $csv_file, $csv_delimiter, $csv_header);
+ } else if ($plugin == 'xoopsuser') {
+ $arr_groups = $_POST["xoopsuser_group"];
+ //$numData = $function($cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist, $arr_groups);
+ $numData = call_user_func($function, $cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist, $arr_groups);
+ } else {
+ //$numData = $function($cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist);
+ $numData = call_user_func($function, $cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist);
+ }
+
+ if ($numData > 0) {
+ if ($action_after_read==0) {
+ //execute import without check
+ redirect_header("import.php?op=exec_import_final&action_after_read=0&limitcheck=".$limitcheck, 0, "");
+ } else {
+ //show form for check before executing import
+ redirect_header("import.php?op=show_formcheck&action_after_read=1&plugin=".$plugin."&limitcheck=".$limitcheck, 0, "");
+ }
+ } else {
+ redirect_header("import.php", 3, _AM_XNEWSLETTER_IMPORT_NODATA);
+ }
+ break;
+
+ case "form_additional":
+ //show form for additional settings
+ $indexAdmin->addItemButton(_AM_XNEWSLETTER_IMPORT_PLUGINS_AVAIL, 'import.php?op=default', 'list');
+ echo $indexAdmin->renderButton();
+
+ $pluginFile = XNEWSLETTER_PATH . "/plugins/" . $plugin . '.php';
+ if ( !file_exists($pluginFile) ) {
+ echo "Error: File ".$plugin."' doesn't exist";
+ break;
+ }
+ require_once($pluginFile);
+
+ $function = 'xnewsletter_plugin_getform_' . $plugin;
+ if (!function_exists($function) ) {
+ echo "Error: require function 'xnewsletter_plugin_getform_".$plugin."' doesn't exist";
+ break;
+ }
+ //$form = $function( $cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist );
+ $form = call_user_func($function, $cat_id, $action_after_read, $limitcheck, $skipcatsubscrexist );
+ $form->display();
+ break;
+
+ case "default":
+ default:
+ //show basic search form
+ $objImport =& $importHandler->create();
+ $form = $objImport->getFormSearch($plugin, $action_after_read, $limitcheck);
+ $form->display();
+ break;
+}
+include "admin_footer.php";
+
+function create_prot ( $prot_text, $success, $submitter) {
+ global $xoopsDB;
+
+ $sql = "INSERT INTO `".$xoopsDB->prefix('mod_xnewsletter_protocol')."` (`protocol_letter_id`, `protocol_subscriber_id`, `protocol_status`, `protocol_success`, `protocol_submitter`, `protocol_created`) VALUES (0,0,'".$prot_text."',".$success.", ".$submitter.",".time().")";
+ $xoopsDB->queryF($sql) or die ("MySQL-Error: " . mysql_error());
+
+}
+
+?>
\ No newline at end of file
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/index.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/index.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/index.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -32,67 +32,46 @@
//global $indexAdmin;
global $xoopsModuleConfig;
- //count "total"
+ //count "total"
$count_accounts = $accountsHandler->getCount();
-
- //count "total"
$count_cat = $catHandler->getCount();
-
- //count "total"
$count_subscr = $subscrHandler->getCount();
-
- //count "total"
$count_catsubscr = $catsubscrHandler->getCount();
-
- //count "total"
$count_letter = $letterHandler->getCount();
-
- //count "total"
$count_protocol = $protocolHandler->getCount();
-
- //count "total"
$count_attachment = $attachmentHandler->getCount();
-
if (isset($xoopsModuleConfig['xn_use_mailinglist']) && $xoopsModuleConfig['xn_use_mailinglist'] == 1) {
- //count "total"
$count_mailinglist = $mailinglistHandler->getCount();
}
-
- //count "total"
$count_bmh = $bmhHandler->getCount();
+ if (isset($xoopsModuleConfig['xn_send_in_packages']) && $xoopsModuleConfig['xn_send_in_packages'] > 0) {
+ $count_task = $taskHandler->getCount();
+ }
+
$r = '#FF0000'; // Red
$g = '#00AA00'; // Green
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_ACCOUNTS);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_ACCOUNTS,_AM_XNEWSLETTER_THEREARE_ACCOUNTS, $count_accounts, ($count_accounts == 0) ? $r : $g);
-
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_CAT);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_CAT,_AM_XNEWSLETTER_THEREARE_CAT, $count_cat, ($count_cat == 0) ? $r : $g);
-
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_SUBSCR);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_SUBSCR,_AM_XNEWSLETTER_THEREARE_SUBSCR, $count_subscr, ($count_subscr == 0) ? $r : $g);
-
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_CATSUBSCR);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_CATSUBSCR,_AM_XNEWSLETTER_THEREARE_CATSUBSCR, $count_catsubscr, ($count_catsubscr == 0) ? $r : $g);
-
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_LETTER);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_LETTER, $count_letter, ($count_letter == 0) ? $r : $g);
+ $indexAdmin->addInfoBox(_AM_XNEWSLETTER_LETTER);
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_ATTACHMENT);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_ATTACHMENT,_AM_XNEWSLETTER_THEREARE_ATTACHMENT, $count_attachment, ($count_attachment == 0) ? $r : $g);
-
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_PROTOCOL);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_PROTOCOL,_AM_XNEWSLETTER_THEREARE_PROTOCOL, $count_protocol, ($count_protocol == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_ACCOUNTS, $count_accounts, ($count_accounts == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_CAT, $count_cat, ($count_cat == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_SUBSCR, $count_subscr, ($count_subscr == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_CATSUBSCR, $count_catsubscr, ($count_catsubscr == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_LETTER, $count_letter, ($count_letter == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_ATTACHMENT, $count_attachment, ($count_attachment == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_PROTOCOL, $count_protocol, ($count_protocol == 0) ? $r : $g);
if (isset($xoopsModuleConfig['xn_use_mailinglist']) && $xoopsModuleConfig['xn_use_mailinglist'] == 1) {
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_MAILINGLIST);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_MAILINGLIST,_AM_XNEWSLETTER_THEREARE_MAILINGLIST, $count_mailinglist, ($count_mailinglist == 0) ? $r : $g);
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_MAILINGLIST, $count_mailinglist, ($count_mailinglist == 0) ? $r : $g);
}
+
+ if (isset($xoopsModuleConfig['xn_send_in_packages']) && $xoopsModuleConfig['xn_send_in_packages'] > 0) {
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_TASK, $count_task, ($count_task == 0) ? $r : $g);
+ }
- $indexAdmin->addInfoBox(_AM_XNEWSLETTER_BMH);
- $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_BMH,_AM_XNEWSLETTER_THEREARE_BMH, $count_bmh, ($count_bmh == 0) ? $r : $g);
-
+ $indexAdmin->addInfoBoxLine(_AM_XNEWSLETTER_LETTER,_AM_XNEWSLETTER_THEREARE_BMH, $count_bmh, ($count_bmh == 0) ? $r : $g);
+
echo $indexAdmin->addNavigation("index.php") ;
echo $indexAdmin->renderIndex();
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/letter.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/letter.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/letter.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -411,7 +411,7 @@
if ($letterHandler->delete($obj_letter)) {
//delete protocol
- $sql = "DELETE FROM `".$xoopsDB->prefix("xnewsletter_protocol")."` WHERE `protocol_letter_id`=".$letter_id;
+ $sql = "DELETE FROM `".$xoopsDB->prefix("mod_xnewsletter_protocol")."` WHERE `protocol_letter_id`=".$letter_id;
$result = $xoopsDB->query($sql) or die("MySQL-Error: " . mysql_error());
//delete attachments
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/maintenance.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/maintenance.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/maintenance.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -99,31 +99,50 @@
// check module preference xn_use_mailinglist with values in cat_mailinglist
// and check cat_mailinglist versus table mailinglist
+ global $xoopsModuleConfig;
+ if (isset($xoopsModuleConfig['xn_use_mailinglist']) && $xoopsModuleConfig['xn_use_mailinglist'] == 1) {
+ echo " <tr class='".$class."'>";
+ $class = ($class == "even") ? "odd" : "even";
+ echo " <form action='maintenance.php' method='post'>";
+ echo " <td align='center' valign='middle'>ml</td>";
+ echo " <td align='left' valign='middle'>" . _AM_XNEWSLETTER_MAINTENANCE_DELETE_INVALID_ML . "</td>";
+ echo " <td valign='middle' align='center'> ";
+ echo " </td><td valign='middle' align='left'>";
+ $cal_tray = new XoopsFormElementTray(" ",' ');
+ $cal_tray->addElement(new XoopsFormHidden("op", "del_invalid_ml"));
+ $cal_tray->addElement(new XoopsFormButton("", "post", _SUBMIT, "submit"));
+ echo $cal_tray->render();
+ echo " </td>";
+ echo " </form>";
+ echo " </tr>";
+ }
+
+ // delete invalid cat
echo " <tr class='".$class."'>";
$class = ($class == "even") ? "odd" : "even";
echo " <form action='maintenance.php' method='post'>";
- echo " <td align='center' valign='middle'>ml</td>";
- echo " <td align='left' valign='middle'>" . _AM_XNEWSLETTER_MAINTENANCE_DELETE_INVALID_ML . "</td>";
+ echo " <td align='center' valign='middle'>cat</td>";
+ echo " <td align='left' valign='middle'>" . _AM_XNEWSLETTER_MAINTENANCE_DELETE_INVALID_CATNL . "</td>";
echo " <td valign='middle' align='center'> ";
echo " </td><td valign='middle' align='left'>";
$cal_tray = new XoopsFormElementTray(" ",' ');
- $cal_tray->addElement(new XoopsFormHidden("op", "del_invalid_ml"));
+ $cal_tray->addElement(new XoopsFormHidden("op", "del_invalid_cat"));
$cal_tray->addElement(new XoopsFormButton("", "post", _SUBMIT, "submit"));
echo $cal_tray->render();
echo " </td>";
echo " </form>";
echo " </tr>";
- // delete invalid cat
+ // delete import
echo " <tr class='".$class."'>";
$class = ($class == "even") ? "odd" : "even";
echo " <form action='maintenance.php' method='post'>";
- echo " <td align='center' valign='middle'>cat</td>";
- echo " <td align='left' valign='middle'>" . _AM_XNEWSLETTER_MAINTENANCE_DELETE_INVALID_CATNL . "</td>";
+ echo " <td align='center' valign='middle'>import</td>";
+ echo " <td align='left' valign='middle'>" . _AM_XNEWSLETTER_MAINTENANCE_DELETE_IMPORT . "</td>";
echo " <td valign='middle' align='center'> ";
echo " </td><td valign='middle' align='left'>";
$cal_tray = new XoopsFormElementTray(" ",' ');
- $cal_tray->addElement(new XoopsFormHidden("op", "del_invalid_cat"));
+ $cal_tray->addElement(new XoopsFormHidden("op", "del_import"));
$cal_tray->addElement(new XoopsFormButton("", "post", _SUBMIT, "submit"));
echo $cal_tray->render();
echo " </td>";
@@ -133,6 +152,40 @@
echo "</table>";
break;
+ case 'del_import':
+
+ if (isset($_POST["ok"]) && $_POST["ok"] == "1") {
+ $sql = "TRUNCATE TABLE `".$xoopsDB->prefix('mod_xnewsletter_import')."`";
+ $result = $xoopsDB->queryF($sql);
+ $sql = "REPAIR TABLE `".$xoopsDB->prefix('mod_xnewsletter_import')."`";
+ $result = $xoopsDB->queryF($sql);
+ $sql = "OPTIMIZE TABLE `".$xoopsDB->prefix('mod_xnewsletter_import')."`";
+ $result = $xoopsDB->queryF($sql);
+ $sql = "ALTER TABLE `".$xoopsDB->prefix('mod_xnewsletter_import')."` AUTO_INCREMENT =1";
+ $result = $xoopsDB->queryF($sql);
+
+ $obj =& $protocolHandler->create();
+ //Form protocol_letter_id
+ $obj->setVar("protocol_letter_id", 0);
+ //Form protocol_subscriber_id
+ $obj->setVar("protocol_subscriber_id", 0);
+ //Form protocol_status
+ $obj->setVar("protocol_status", "[" . _MI_XNEWSLETTER_ADMENU11 . " import] " . _AM_XNEWSLETTER_MAINTENANCE_DELETE_IMPORT_OK);
+ //Form protocol_success
+ $obj->setVar("protocol_success", 1);
+ //Form protocol_submitter
+ $obj->setVar("protocol_submitter", $GLOBALS['xoopsUser']->uid());
+ //Form protocol_created
+ $obj->setVar("protocol_created", time());
+
+ if (!$protocolHandler->insert($obj)) {
+ }
+ redirect_header("maintenance.php", 2,_AM_XNEWSLETTER_MAINTENANCE_DELETE_IMPORT_OK);
+ } else {
+ xoops_confirm(array("ok" => 1, "", "op" => "del_import"), "maintenance.php", _AM_XNEWSLETTER_MAINTENANCE_DELETE_IMPORT);
+ }
+ break;
+
case 'del_olduser':
$time = strtotime($_POST['del_date']);
if ( $time >= time() || $time == 0) {
@@ -150,11 +203,11 @@
$delusers = $subscrHandler->getall($criteria, array('subscr_id'), false, false);
foreach ($delusers as $id => $user) {
$obj =& $subscrHandler->get(intval($user['subscr_id']));
- $sql = "DELETE FROM `".$xoopsDB->prefix('xnewsletter_subscr')."` WHERE subscr_id=" . $user['subscr_id'];
+ $sql = "DELETE FROM `".$xoopsDB->prefix('mod_xnewsletter_subscr')."` WHERE subscr_id=" . $user['subscr_id'];
$result = $xoopsDB->queryF($sql);
if ($result) {
// Newsletterlist delete
- $sql = "DELETE FROM `".$xoopsDB->prefix('xnewsletter_catsubscr')."` WHERE catsubscr_subscrid=" . $user['subscr_id'];
+ $sql = "DELETE FROM `".$xoopsDB->prefix('mod_xnewsletter_catsubscr')."` WHERE catsubscr_subscrid=" . $user['subscr_id'];
$result = $xoopsDB->queryF($sql);
if (!$result) {
$error[] = "Error CAT-Subscr-ID: " . $user['subscr_id'] . " / " . $result->getHtmlErrors();
@@ -203,13 +256,13 @@
case 'del_oldprotocol':
if (isset($_POST["ok"]) && $_POST["ok"] == "1") {
- $sql = "TRUNCATE TABLE `".$xoopsDB->prefix('xnewsletter_protocol')."`";
+ $sql = "TRUNCATE TABLE `".$xoopsDB->prefix('mod_xnewsletter_protocol')."`";
$result = $xoopsDB->queryF($sql);
- $sql = "REPAIR TABLE `".$xoopsDB->prefix('xnewsletter_protocol')."`";
+ $sql = "REPAIR TABLE `".$xoopsDB->prefix('mod_xnewsletter_protocol')."`";
$result = $xoopsDB->queryF($sql);
- $sql = "OPTIMIZE TABLE `".$xoopsDB->prefix('xnewsletter_protocol')."`";
+ $sql = "OPTIMIZE TABLE `".$xoopsDB->prefix('mod_xnewsletter_protocol')."`";
$result = $xoopsDB->queryF($sql);
- $sql = "ALTER TABLE `".$xoopsDB->prefix('xnewsletter_protocol')."` AUTO_INCREMENT =1";
+ $sql = "ALTER TABLE `".$xoopsDB->prefix('mod_xnewsletter_protocol')."` AUTO_INCREMENT =1";
$result = $xoopsDB->queryF($sql);
$obj =& $protocolHandler->create();
@@ -241,13 +294,13 @@
$number_ids = 0;
$delete = 0;
$error = array();
- $sql = "SELECT Count(`catsubscr_id`) AS `nb_ids` FROM `".$xoopsDB->prefix("xnewsletter_catsubscr")."` LEFT JOIN `".$xoopsDB->prefix("xnewsletter_subscr")."` ON `catsubscr_subscrid` = `subscr_id` WHERE (`subscr_id` Is Null)";
+ $sql = "SELECT Count(`catsubscr_id`) AS `nb_ids` FROM `".$xoopsDB->prefix("mod_xnewsletter_catsubscr")."` LEFT JOIN `".$xoopsDB->prefix("mod_xnewsletter_subscr")."` ON `catsubscr_subscrid` = `subscr_id` WHERE (`subscr_id` Is Null)";
if ( $result = $xoopsDB->query($sql) ) {
$row_result = $xoopsDB->fetchRow($result);
$number_ids = $row_result[0];
}
if ($number_ids > 0) {
- $sql = "DELETE FROM `".$xoopsDB->prefix("xnewsletter_catsubscr")."` LEFT JOIN `".$xoopsDB->prefix("xnewsletter_subscr")."` ON `catsubscr_subscrid` = `subscr_id` WHERE (`subscr_id` Is Null)";
+ $sql = "DELETE `".$xoopsDB->prefix("mod_xnewsletter_catsubscr")."` FROM `".$xoopsDB->prefix("mod_xnewsletter_catsubscr")."` LEFT JOIN `".$xoopsDB->prefix("mod_xnewsletter_subscr")."` ON `catsubscr_subscrid` = `subscr_id` WHERE (`subscr_id` Is Null)";
$result = $xoopsDB->query($sql);
if ($result = $xoopsDB->query($sql)) {
$delete++;
@@ -299,13 +352,13 @@
$error = array();
if ($use_mailinglist == 0 || $use_mailinglist == '0') {
//set cat_mailinglist = 0, if use mailinglist = false (if someone changed module preferences later)
- $sql = "SELECT Count(`cat_id`) AS `nb_ids` FROM `".$xoopsDB->prefix("xnewsletter_cat")."` WHERE (`cat_mailinglist` > 0)";
+ $sql = "SELECT Count(`cat_id`) AS `nb_ids` FROM `".$xoopsDB->prefix("mod_xnewsletter_cat")."` WHERE (`cat_mailinglist` > 0)";
if ( $result = $xoopsDB->query($sql) ) {
$row_result = $xoopsDB->fetchRow($result);
$number_ids = $row_result[0];
}
if ($number_ids > 0) {
- $sql = "UPDATE `".$xoopsDB->prefix("xnewsletter_cat")."` SET `cat_mailinglist` = 0";
+ $sql = "UPDATE `".$xoopsDB->prefix("mod_xnewsletter_cat")."` SET `cat_mailinglist` = 0";
if ($result = $xoopsDB->query($sql)) {
$update++;
} else {
@@ -314,13 +367,13 @@
}
} else {
//set cat_mailinglist = 0, if mailinglist_id is no more existing in table mailinglist
- $sql = "SELECT Count(`cat_mailinglist`) AS `nb_ids` FROM `".$xoopsDB->prefix("xnewsletter_cat")."` LEFT JOIN `".$xoopsDB->prefix("xnewsletter_mailinglist")."` ON `cat_mailinglist` = `mailinglist_id` WHERE (((`mailinglist_id`) Is Null) AND ((`cat_mailinglist`)>0)) HAVING (((Count(`cat_mailinglist`))>0));";
+ $sql = "SELECT Count(`cat_mailinglist`) AS `nb_ids` FROM `".$xoopsDB->prefix("mod_xnewsletter_cat")."` LEFT JOIN `".$xoopsDB->prefix("mod_xnewsletter_mailinglist")."` ON `cat_mailinglist` = `mailinglist_id` WHERE (((`mailinglist_id`) Is Null) AND ((`cat_mailinglist`)>0)) HAVING (((Count(`cat_mailinglist`))>0));";
if ( $result = $xoopsDB->query($sql) ) {
$row_result = $xoopsDB->fetchRow($result);
$number_ids = $row_result[0];
}
if ($number_ids > 0) {
- $sql = "UPDATE `".$xoopsDB->prefix("xnewsletter_cat")."` LEFT JOIN `".$xoopsDB->prefix("xnewsletter_mailinglist")."` ON `cat_mailinglist` = `mailinglist_id` SET `cat_mailinglist` = 0 WHERE (((`cat_mailinglist`)>0) AND ((`mailinglist_id`) Is Null));";
+ $sql = "UPDATE `".$xoopsDB->prefix("mod_xnewsletter_cat")."` LEFT JOIN `".$xoopsDB->prefix("mod_xnewsletter_mailinglist")."` ON `cat_mailinglist` = `mailinglist_id` SET `cat_mailinglist` = 0 WHERE (((`cat_mailinglist`)>0) AND ((`mailinglist_id`) Is Null));";
if ($result = $xoopsDB->query($sql)) {
$update++;
} else {
@@ -370,6 +423,7 @@
if (isset($_POST["ok"]) && $_POST["ok"] == "1") {
$update = 0;
$error = array();
+ $number_ids = 0;
$letter_arr = $letterHandler->getall();
foreach (array_keys($letter_arr) as $letter_id)
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/menu.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/menu.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/menu.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -72,6 +72,12 @@
$adminmenu[$i]["link"] = "admin/mailinglist.php";
$adminmenu[$i]["icon"] = $pathImageAdmin."/xn_mailinglist.png";
}
+if (isset($xoopsModuleConfig['xn_send_in_packages']) && $xoopsModuleConfig['xn_send_in_packages'] > 0) {
+ $i++;
+ $adminmenu[$i]["title"] = _MI_XNEWSLETTER_ADMENU13;
+ $adminmenu[$i]["link"] = "admin/task.php";
+ $adminmenu[$i]["icon"] = $pathImageAdmin."/xn_task.png";
+}
$i++;
$adminmenu[$i]["title"] = _MI_XNEWSLETTER_ADMENU10;
$adminmenu[$i]["link"] = "admin/bmh.php";
@@ -81,6 +87,10 @@
$adminmenu[$i]["link"] = "admin/maintenance.php";
$adminmenu[$i]["icon"] = $pathImageAdmin."/xn_maintenance.png";
$i++;
+$adminmenu[$i]["title"] = _MI_XNEWSLETTER_ADMENU12;
+$adminmenu[$i]["link"] = "admin/import.php";
+$adminmenu[$i]["icon"] = $pathImageAdmin."/xn_import.png";
+$i++;
$adminmenu[$i]["title"] = _MI_XNEWSLETTER_ADMENU99;
$adminmenu[$i]["link"] = "admin/about.php";
$adminmenu[$i]["icon"] = $pathImageAdmin."/about.png";
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/protocol.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/protocol.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/protocol.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -316,7 +316,7 @@
if ( !$GLOBALS["xoopsSecurity"]->check() ) {
redirect_header("protocol.php", 3, implode(",", $GLOBALS["xoopsSecurity"]->getErrors()));
}
- $sql = "DELETE FROM `".$xoopsDB->prefix("xnewsletter_protocol")."` WHERE `protocol_letter_id`=$letter_id;";
+ $sql = "DELETE FROM `".$xoopsDB->prefix("mod_xnewsletter_protocol")."` WHERE `protocol_letter_id`=$letter_id;";
$result = $xoopsDB->query($sql);
if ($result) {
redirect_header("protocol.php", 3, _AM_XNEWSLETTER_FORMDELOK);
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/sendletter.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/sendletter.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/sendletter.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -27,8 +27,23 @@
*/
include "admin_header.php";
+include XOOPS_ROOT_PATH."/modules/xNewsletter/include/task.inc.php";
-include XOOPS_ROOT_PATH."/modules/xNewsletter/include/sendletter.php";
+$op = xNewsletter_CleanVars($_REQUEST, 'op', 'list', 'string');
+$letter_id = xNewsletter_CleanVars($_REQUEST, 'letter_id', 0, 'int');
+$xn_send_in_packages = $xoopsModuleConfig['xn_send_in_packages'];
+if ($xn_send_in_packages > 0 && $op != "send_test") {
+ $xn_send_in_packages_time = $xoopsModuleConfig['xn_send_in_packages_time'];
+} else {
+ $xn_send_in_packages_time = 0;
+}
+
+$result = Create_Tasklist( $op, $letter_id, $xn_send_in_packages, $xn_send_in_packages_time );
+
+$result_exec = Execute_Tasks( $xn_send_in_packages, $letter_id );
+
+redirect_header("letter.php", 3, $result_exec);
+
include "admin_footer.php";
?>
\ No newline at end of file
Modified: XoopsModules/xnewsletter/trunk/xNewsletter/admin/subscr.php
===================================================================
--- XoopsModules/xnewsletter/trunk/xNewsletter/admin/subscr.php 2013-10-15 22:20:13 UTC (rev 12177)
+++ XoopsModules/xnewsletter/trunk/xNewsletter/admin/subscr.php 2013-10-16 05:28:13 UTC (rev 12178)
@@ -48,7 +48,55 @@
$subscrAdmin = new ModuleAdmin();
switch ($op)
{
- case "list":
+ case "show_catsubscr":
+ echo $subscrAdmin->addNavigation('subscr.php');
+ $apply_filter = xNewsletter_CleanVars($_REQUEST, 'apply_filter', 'list', 'string');
+ $linklist = "subscr.php?op=$apply_filter&filter_subscr=$filter_subscr";
+ $linklist .= "&filter_subscr_firstname=$filter_subscr_firstname";
+ $linklist .= "&filter_subscr_lastname=$filter_subscr_lastname";
+ $linklist .= "&filter_subscr_email=$filter_subscr_email";
+ $subscrAdmin->addItemButton(_AM_XNEWSLETTER_SUBSCR_SHOW_ALL, $linklist, 'view_detailed');
+...
[truncated message content] |