Updates newsletter option creation logic and fixes a bug that results in
them being wiped clean
This commit is contained in:
@@ -5,4 +5,20 @@ if(!defined('ABSPATH')) exit;
|
||||
|
||||
class NewsletterOption extends Model {
|
||||
public static $_table = MP_NEWSLETTER_OPTION_TABLE;
|
||||
|
||||
static function createOrUpdate($data = array()) {
|
||||
if(!is_array($data) && empty($data)) return;
|
||||
|
||||
$newsletter_option = self::where('option_field_id', $data['option_field_id'])
|
||||
->where('newsletter_id', $data['newsletter_id'])
|
||||
->findOne();
|
||||
|
||||
if(empty($newsletter_option)) $newsletter_option = self::create();
|
||||
|
||||
$newsletter_option->newsletter_id = $data['newsletter_id'];
|
||||
$newsletter_option->option_field_id = $data['option_field_id'];
|
||||
$newsletter_option->value = $data['value'];
|
||||
$newsletter_option->save();
|
||||
return $newsletter_option;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user