diff --git a/assets/js/src/newsletters/list.jsx b/assets/js/src/newsletters/list.jsx deleted file mode 100644 index a5a935a530..0000000000 --- a/assets/js/src/newsletters/list.jsx +++ /dev/null @@ -1,193 +0,0 @@ -import React from 'react' -import { Router, Route, IndexRoute, Link, useRouterHistory } from 'react-router' -import { createHashHistory } from 'history' - -import ListingTabs from 'newsletters/listings/tabs.jsx' -import ListingStandard from 'newsletters/listings/standard.jsx' -import ListingWelcome from 'newsletters/listings/welcome.jsx' -import ListingNotification from 'newsletters/listings/notification.jsx' -import classNames from 'classnames' -import jQuery from 'jquery' -import MailPoet from 'mailpoet' - -const NewsletterList = React.createClass({ - pauseSending(item) { - MailPoet.Ajax.post({ - endpoint: 'sendingQueue', - action: 'pause', - data: item.id - }).done(() => { - jQuery('#resume_'+item.id).show(); - jQuery('#pause_'+item.id).hide(); - }); - }, - resumeSending(item) { - MailPoet.Ajax.post({ - endpoint: 'sendingQueue', - action: 'resume', - data: item.id - }).done(() => { - jQuery('#pause_'+item.id).show(); - jQuery('#resume_'+item.id).hide(); - }); - }, - renderStatus(item) { - if (!item.queue) { - return ( - {MailPoet.I18n.t('notSentYet')} - ); - } else { - if (item.queue.status === 'scheduled') { - return ( - {MailPoet.I18n.t('scheduledFor')} { MailPoet.Date.format(item.queue.scheduled_at) } - ) - } - const progressClasses = classNames( - 'mailpoet_progress', - { 'mailpoet_progress_complete': item.queue.status === 'completed'} - ); - - // calculate percentage done - const percentage = Math.round( - (item.queue.count_processed * 100) / (item.queue.count_total) - ); - - let label = false; - - if (item.queue.status === 'completed') { - label = ( - - { - MailPoet.I18n.t('newsletterQueueCompleted') - .replace("%$1d", item.queue.count_processed - item.queue.count_failed) - .replace("%$2d", item.queue.count_total) - } - - ); - } else { - label = ( - - { item.queue.count_processed } / { item.queue.count_total } -    - {MailPoet.I18n.t('resume')} - {MailPoet.I18n.t('pause')} - - ); - } - - return ( -
-
- - - { percentage + "%" } - -
-

- { label } -

-
- ); - } - }, - renderStatistics(item) { - if ( - !item.statistics - || !item.queue - || ~~(item.queue.count_processed) === 0 - || item.queue.status === 'scheduled' - ) { - return ( - - {MailPoet.I18n.t('notSentYet')} - - ); - } - - const percentage_clicked = Math.round( - (item.statistics.clicked * 100) / (item.queue.count_processed) - ); - const percentage_opened = Math.round( - (item.statistics.opened * 100) / (item.queue.count_processed) - ); - const percentage_unsubscribed = Math.round( - (item.statistics.unsubscribed * 100) / (item.queue.count_processed) - ); - - return ( - - { percentage_opened }%, - { percentage_clicked }%, - { percentage_unsubscribed }% - - ); - }, - renderItem(newsletter, actions) { - const rowClasses = classNames( - 'manage-column', - 'column-primary', - 'has-row-actions' - ); - - const segments = newsletter.segments.map(function(segment) { - return segment.name - }).join(', '); - - return ( -
- - - { newsletter.subject } - - { actions } - - - { this.renderStatus(newsletter) } - - - { segments } - - - { this.renderStatistics(newsletter) } - - - { MailPoet.Date.format(newsletter.created_at) } - - - { MailPoet.Date.format(newsletter.updated_at) } - -
- ); - }, - render() { - console.log(this.props.params); - return ( -
-

- {MailPoet.I18n.t('pageTitle')} {MailPoet.I18n.t('new')} -

- - - - -
- ); - } -}); - -module.exports = NewsletterList; \ No newline at end of file diff --git a/lib/Newsletter/Scheduler/Scheduler.php b/lib/Newsletter/Scheduler/Scheduler.php index 018f35229e..a257e959d4 100644 --- a/lib/Newsletter/Scheduler/Scheduler.php +++ b/lib/Newsletter/Scheduler/Scheduler.php @@ -18,7 +18,6 @@ class Scheduler { const INTERVAL_WEEKLY = 'weekly'; const INTERVAL_MONTHLY = 'monthly'; const INTERVAL_NTHWEEKDAY = 'nthWeekDay'; - const STATUS_SCHEDULED = 'scheduled'; static function processPostNotificationSchedule($newsletter_id) { $newsletter = Newsletter::filter('filterWithOptions') @@ -168,7 +167,7 @@ class Scheduler { default: $scheduled_at = $current_time; } - $queue->status = self::STATUS_SCHEDULED; + $queue->status = SendingQueue::STATUS_SCHEDULED; $queue->scheduled_at = $scheduled_at; $queue->save(); } @@ -182,7 +181,7 @@ class Scheduler { if($existing_queue) return; $queue = SendingQueue::create(); $queue->newsletter_id = $newsletter->id; - $queue->status = self::STATUS_SCHEDULED; + $queue->status = SendingQueue::STATUS_SCHEDULED; $queue->scheduled_at = $next_run_date; $queue->save(); return $queue;