refactoring createOrUpdate method of models

This commit is contained in:
Amine Ben hammou
2018-02-07 17:40:06 +00:00
parent a2270d6689
commit 91622f8cd9
11 changed files with 69 additions and 153 deletions

View File

@@ -7,18 +7,12 @@ class NewsletterOption extends Model {
public static $_table = MP_NEWSLETTER_OPTION_TABLE;
static function createOrUpdate($data = array()) {
if(!is_array($data) || empty($data['newsletter_id']) || empty($data['option_field_id'])) 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;
if(!is_array($data) || empty($data['newsletter_id']) || empty($data['option_field_id'])) {
return;
}
return parent::internalCreateOrUpdate($data, array(
'option_field_id' => $data['option_field_id'],
'newsletter_id' => $data['newsletter_id']
));
}
}