You are here

function RotatingBannerSlide::save in Rotating Banner 7

Same name and namespace in other branches
  1. 7.2 rotating_banner.classes.inc \RotatingBannerSlide::save()

File

./rotating_banner.classes.inc, line 75

Class

RotatingBannerSlide

Code

function save() {
  if (!$this->rbid) {
    throw new Exception('Unable to save slide, rotating banner ID is required.');
  }
  foreach ($this
    ->dbFields() as $field_name) {
    $fields[$field_name] = $this->{$field_name};
  }
  if (!is_string($fields['textboxes'])) {
    $fields['textboxes'] = drupal_json_encode($fields['textboxes']);
  }
  if (!$this->sid) {
    $sid = db_insert('rotating_banner_slides')
      ->fields($fields)
      ->execute();
    $this->sid = $sid;
    if ($this->sid) {
      return TRUE;
    }
  }
  else {
    return (bool) db_update('rotating_banner_slides')
      ->condition('sid', $this->sid)
      ->fields($fields)
      ->execute();
  }
}