newsletter_template.controller.inc in Newsletter 7.2
Controller class definition file for newsletter_template entity.
File
modules/template/includes/newsletter_template.controller.incView source
<?php
/**
* @file
* Controller class definition file for newsletter_template entity.
*/
/**
* Newsletter Template Controller
*/
class NewsletterTemplateController extends EntityAPIController {
/**
* Create a default template.
*
* @param array $values
* An array of values to set, keyed by property name.
* @return
* A template object with all default fields initialized.
*/
public function create(array $values = array()) {
$values += array(
'template_id' => '',
'is_new' => TRUE,
'subject' => NULL,
);
return parent::create($values);
}
/**
* Saves a new newsletter template in database.
*
* @param $template
* The full template object to save.
* @param $transaction
* An optional transaction object.
*
* @return
* SAVED_NEW or SAVED_UPDATED depending on the operation performed..
*/
public function save($template, DatabaseTransaction $transaction = NULL) {
if ($template->is_new) {
$template->created = REQUEST_TIME;
}
// If there is only one template type, use this as default.
$types = array_keys($this->entityInfo['bundles']);
if (count($types) == 1 && !isset($values['type'])) {
$values[$this->entityInfo['bundle keys']['bundle']] = reset($types);
}
return parent::save($template, $transaction);
}
}
/**
* The Controller for newsletter template types.
*/
class NewsletterTemplateTypeController extends EntityAPIControllerExportable {
public function __construct($entityType) {
parent::__construct($entityType);
}
/**
* Create a template type.
*
* @param $type
* The machine-readable type of the template type.
*
* @return
* A template type object with all default fields initialized.
*/
public function create(array $values = array()) {
$values += array(
'id' => '',
'is_new' => TRUE,
'data' => array(),
);
return parent::create($values);
}
}
Classes
Name | Description |
---|---|
NewsletterTemplateController | Newsletter Template Controller |
NewsletterTemplateTypeController | The Controller for newsletter template types. |