Status update of newsletters completed
- duplicate newsletter now includes options as well - fixed NaN issue in statistics when newsletter is being sent - use constant for scheduled (and put it as the sendingQueue Model level)
This commit is contained in:
@ -86,12 +86,24 @@ class Newsletter extends Model {
|
||||
foreach($segments as $segment) {
|
||||
$relation = NewsletterSegment::create();
|
||||
$relation->segment_id = $segment['id'];
|
||||
$relation->newsletter_id = $duplicate->id();
|
||||
$result = $relation->save();
|
||||
$relation->newsletter_id = $duplicate->id;
|
||||
$relation->save();
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: duplicate options (if need be)
|
||||
// duplicate options
|
||||
$options = NewsletterOption::where('newsletter_id', $this->id)
|
||||
->findArray();
|
||||
|
||||
if(!empty($options)) {
|
||||
foreach($options as $option) {
|
||||
$relation = NewsletterOption::create();
|
||||
$relation->newsletter_id = $duplicate->id;
|
||||
$relation->option_field_id = $option['option_field_id'];
|
||||
$relation->value = $option['value'];
|
||||
$relation->save();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $duplicate;
|
||||
|
@ -7,6 +7,8 @@ class SendingQueue extends Model {
|
||||
public static $_table = MP_SENDING_QUEUES_TABLE;
|
||||
|
||||
const STATUS_COMPLETED = 'completed';
|
||||
const STATUS_SCHEDULED = 'scheduled';
|
||||
const STATUS_PAUSED = 'paused';
|
||||
|
||||
function __construct() {
|
||||
parent::__construct();
|
||||
@ -16,7 +18,7 @@ class SendingQueue extends Model {
|
||||
if($this->count_processed === $this->count_total) {
|
||||
return false;
|
||||
} else {
|
||||
$this->set('status', 'paused');
|
||||
$this->set('status', STATUS_PAUSED);
|
||||
$this->save();
|
||||
return ($this->getErrors() === false && $this->id() > 0);
|
||||
}
|
||||
@ -26,14 +28,14 @@ class SendingQueue extends Model {
|
||||
if($this->count_processed === $this->count_total) {
|
||||
return $this->complete();
|
||||
} else {
|
||||
$this->set_expr('status', 'NULL');
|
||||
$this->setExpr('status', 'NULL');
|
||||
$this->save();
|
||||
return ($this->getErrors() === false && $this->id() > 0);
|
||||
}
|
||||
}
|
||||
|
||||
function complete() {
|
||||
$this->set('status', 'completed');
|
||||
$this->set('status', self::STATUS_COMPLETED);
|
||||
$this->save();
|
||||
return ($this->getErrors() === false && $this->id() > 0);
|
||||
}
|
||||
|
Reference in New Issue
Block a user