Вход Регистрация
Файл: upload/module/newsletter/include/component/controller/admincp/add.class.php
Строк: 126
<?php
/**
 * [PHPFOX_HEADER]
 */

defined('PHPFOX') or exit('NO DICE!');

/**
 *
 *
 * @copyright        [PHPFOX_COPYRIGHT]
 * @author          Miguel Espinoza
 * @package         Phpfox_Component
 * @version         $Id: add.class.php 3860 2012-01-19 11:58:49Z Raymond_Benc $
 */
class Newsletter_Component_Controller_Admincp_Add extends Phpfox_Component
{
    
/**
     * Class process method wnich is used to execute this component.
     */
    
public function process()
    {
        
// When they first submit the newsletter this block adds it to the ongoing or scheduling
        
if ($aVals $this->request()->getArray('val'))
        {            
            
$aNewsletter Phpfox::getService('newsletter.process')->add($aValsPhpfox::getUserId());
            if (
$aNewsletter['state'] == 1)
            {
                
$this->url()->send('admincp.newsletter.add', array('job' => $aNewsletter['newsletter_id']), Phpfox::getPhrase('newsletter.processing_job_newsletter_id', array('newsletter_id' => $aNewsletter['newsletter_id'])));
            }
            elseif (
$aNewsletter === false)
            {
            }
            else
            {
                
$this->url()->send('admincp.newsletter.manage'nullnull);
            }
        }
        
// when refreshed by the flow we should get an integer here pointing to the pending job
        
elseif ($iJob $this->request()->getInt('job'))
        {
            list(
$iContinue,$iPerc) = Phpfox::getService('newsletter.process')->processJob($iJob);            
            if (
is_int($iContinue) && $iPerc 100)
            {
                
$sMessage Phpfox::getPhrase('newsletter.5_seconds_break_processing_job_continue_total_completed_perc', array('continue' => $iContinue'perc' => $iPerc));
                
$sLink $this->url()->makeUrl('admincp.newsletter.add', array('job' => $iContinue));
                
$this->template()->setHeader('<META HTTP-EQUIV="refresh" content="5;URL='.$sLink.'">')
                    ->
assign(array('sMessage' => $sMessage));
                
//$this->url()->send('admincp.newsletter.add', array('job' => $iContinue));
            
}
            elseif (
$iContinue === true || $iPerc >= 100// completed successfully
            
{
                
$this->url()->send('admincp.newsletter.manage'nullPhpfox::getPhrase('newsletter.job_completed_successfully'));
            }
            elseif (
$iContinue === false)
            {
                
$this->url()->send('admincp.newsletter.manage'nullPhpfox::getPhrase('newsletter.there_was_a_problem_with_this_job_feel_free_to_resume_it_at_any_time'));
            }
        }
        if (
$iId $this->request()->getInt('id') || $iId $this->request()->getInt('job'))
        {
            
$aNewsletter Phpfox::getService('newsletter')->get($iId);
            
$this->template()->assign(array(
                    
'aForms' => $aNewsletter
                
)
            );
        }
        
$aValidation = array(
            
'type_id' => array(
                
'title' => Phpfox::getPhrase('newsletter.select_a_newsletter_type'),
                
'def' => 'int'
            
),
        );

        
// 2 = html; 1 = plain text;
        
$oValidator Phpfox::getLib('validator')->set(array('sFormName' => 'js_form''aParams' => $aValidation));
        
$aAge = array();
        for (
$i 18$i <= 68$i++)
        {
            
$aAge[$i] = $i;
        }
        
$this->template()->assign(array(
                
'aAge' => $aAge,
                
'aUserGroups' => Phpfox::getService('user.group')->get(),
                
'sCreateJs' => $oValidator->createJS(),
                
'sGetJsForm' => $oValidator->getJsForm()
            )
        )
        ->
setTitle(Phpfox::getPhrase('newsletter.newsletter'))
        ->
setBreadCrumb(Phpfox::getPhrase('newsletter.newsletter'),  $this->url()->makeUrl('admincp.newsletter.add'))
        ->
setBreadCrumb(Phpfox::getPhrase('newsletter.add_newsletter'), nulltrue)
        ->
setPhrase(array(
                
'newsletter.min_age_cannot_be_higher_than_max_age',
                
'newsletter.max_age_cannot_be_lower_than_the_min_age'
            
)
        )        
        ->
setEditor()
        ->
setHeader(array('add.js' => 'module_newsletter'));
    }
}
?>
Онлайн: 0
Реклама