function subscribers_sendEmails() { global $xoopsConfig; $thisConfigs =& subscribers_getModuleConfig(); $emailsperpack = intval($thisConfigs['emailsperpack']); $timebpacks = intval($thisConfigs['timebpacks']); $fromname = trim($thisConfigs['fromname']); $fromemail = trim($thisConfigs['fromemail']); $fromname = $fromname != '' ? $fromname : $xoopsConfig['sitename']; $fromemail = $fromemail != '' ? $fromemail : $xoopsConfig['adminmail']; $now = time(); $last = subscribers_getLastTime(); if ($now - $last <= $timebpacks) { return false; } $this_handler =& xoops_getModuleHandler('waiting', 'subscribers'); $criteria = new CriteriaCompo(); $criteria->setSort('wt_priority DESC, wt_created'); $criteria->setOrder('ASC'); $criteria->setLimit($emailsperpack); $objs = $this_handler->getObjects($criteria); $count = count($objs); unset($criteria); if ($count == 0) { return false; } include_once XOOPS_ROOT_PATH . '/kernel/user.php'; $obj_delete = array(); foreach ($objs as $obj) { $xoopsMailer =& xoops_getMailer(); $xoopsMailer->multimailer->ContentType = "text/html"; $xoopsMailer->setTemplateDir(XOOPS_ROOT_PATH . '/modules/subscribers/language/' . $xoopsConfig['language'] . '/mail_template/'); $xoopsMailer->setTemplate('content.tpl'); $xoopsMailer->setFromName($fromname); $xoopsMailer->setFromEmail($fromemail); $xoopsMailer->useMail(); $xoopsMailer->setToEmails(array($obj->getVar('wt_toemail', 'n'))); $xoopsMailer->setSubject($obj->getVar('wt_subject'), 'n'); $xoopsMailer->assign('CONTENT', $obj->getVar('wt_body')); $key = md5($obj->getVar('wt_toemail', 'n') . XOOPS_ROOT_PATH); $xoopsMailer->assign("UNSUBSCRIBE_URL", XOOPS_URL . '/modules/subscribers/unsubscribe.php?email=' . $obj->getVar('wt_toemail', 'n') . '&key=' . $key); $xoopsMailer->send(false); unset($xoopsMailer); $obj_delete[] = $obj->getVar('wt_id'); } $criteria = new Criteria('wt_id', '(' . implode(',', $obj_delete) . ')', 'IN'); $this_handler->deleteAll($criteria, true); subscribers_setLastTime($now); return true; }
function subscribers_add_show($options) { global $xoopsUser; include_once XOOPS_ROOT_PATH . '/modules/subscribers/include/functions.php'; subscribers_sendEmails(); $config =& subscribers_getModuleConfig(); $block = array(); include_once XOOPS_ROOT_PATH . '/class/xoopslists.php'; $block['countries'] = XoopsLists::getCountryList(); $block['selected'] = $config['country']; array_shift($block['countries']); $sub_captcha = $config['captcha']; if (is_object($xoopsUser)) { $block['captcha'] = $sub_captcha == 2 ? 0 : 1; } else { $block['captcha'] = $sub_captcha == 3 ? 0 : 1; } return $block; }
<?php // Author: Trabis // URL: http://www.xuups.com // E-Mail: lusopoemas@gmail.com include_once dirname(dirname(dirname(__FILE__))) . '/mainfile.php'; include_once XOOPS_ROOT_PATH . '/modules/subscribers/include/functions.php'; subscribers_sendEmails(); $xoopsOption['template_main'] = 'subscribers_index.html'; include_once XOOPS_ROOT_PATH . '/header.php'; $config =& subscribers_getModuleConfig(); $selected = $config['country']; $sub_captcha = $config['captcha']; if (is_object($xoopsUser)) { $captcha = $sub_captcha == 2 ? 0 : 1; } else { $captcha = $sub_captcha == 3 ? 0 : 1; } include_once XOOPS_ROOT_PATH . '/class/xoopslists.php'; $countries = XoopsLists::getCountryList(); array_shift($countries); $xoopsTpl->assign('countries', $countries); $xoopsTpl->assign('selected', $selected); $xoopsTpl->assign('captcha', $captcha); include_once XOOPS_ROOT_PATH . '/footer.php';