本文整理汇总了PHP中xPDOSimpleObject类的典型用法代码示例。如果您正苦于以下问题:PHP xPDOSimpleObject类的具体用法?PHP xPDOSimpleObject怎么用?PHP xPDOSimpleObject使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了xPDOSimpleObject类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: save
public function save($cacheFlag = null)
{
if ($isNew = $this->isNew()) {
/*if(!$this->get('createdon')){
$this->set('createdon', time());
}
if(!$this->get('createdby')){
$this->set('createdby', $this->xpdo->user->id ? $this->xpdo->user->id : null);
}*/
$this->set('ip', $this->getUserIP());
}
if (!$this->get('parent')) {
$this->set('parent', null);
}
/*
Не делаем так, потому что иначе при обновлении дочерних комментов
у нас все родительские комменты будут тоже обновленными
else{
if(!$this->get('editedon')){
$this->set('editedon', time());
}
}*/
$rt = parent::save($cacheFlag);
/*
If saved and it`s was new comment, recalculate total comments
*/
if ($rt && $isNew) {
$this->recalculateParentComments(1);
}
return $rt;
}
示例2: save
public function save($cacheFlag = null)
{
if (empty($this->key)) {
$this->key = md5($this->id . time() . $this->dir_name);
}
return parent::save($cacheFlag);
}
示例3: save
public function save($cacheFlag = null)
{
if ($this->alias == '') {
$this->set('alias', $this->generateUniqueAlias($this->name));
}
return parent::save($cacheFlag);
}
示例4: remove
/**
* Overrides xPDOObject::remove to fire modX-specific events
*
* {@inheritDoc}
*/
public function remove(array $ancestors = array())
{
if ($this->xpdo instanceof modX) {
$this->xpdo->invokeEvent('OnUserGroupBeforeRemove', array('usergroup' => &$this, 'ancestors' => $ancestors));
}
$removed = parent::remove($ancestors);
// delete ACLs for this group
$targets = explode(',', $this->xpdo->getOption('principal_targets', null, 'modAccessContext,modAccessResourceGroup,modAccessCategory'));
array_walk($targets, 'trim');
foreach ($targets as $target) {
$fields = $this->xpdo->getFields($target);
if (array_key_exists('principal_class', $fields) && array_key_exists('principal', $fields)) {
$tablename = $this->xpdo->getTableName($target);
$principal_class_field = $this->xpdo->escape('principal_class');
$principal_field = $this->xpdo->escape('principal');
if (!empty($tablename)) {
$this->xpdo->query("DELETE FROM {$tablename} WHERE {$principal_class_field} = 'modUserGroup' AND {$principal_field} = {$this->_fields['id']}");
}
}
}
if ($this->xpdo instanceof modX) {
$this->xpdo->invokeEvent('OnUserGroupRemove', array('usergroup' => &$this, 'ancestors' => $ancestors));
}
return $removed;
}
示例5: array
/**
* Override getOne to get the appropriate Principal class.
*
* @param $alias
* @param null $criteria
* @param bool $cacheFlag
* @return null|xPDOObject
*/
public function &getOne($alias, $criteria = null, $cacheFlag = true)
{
$object = null;
if ($alias === 'Principal') {
if ($fkdef = $this->getFKDefinition($alias)) {
$k = $fkdef['local'];
$fk = $fkdef['foreign'];
if (isset($this->_relatedObjects[$alias])) {
if (is_object($this->_relatedObjects[$alias])) {
$object =& $this->_relatedObjects[$alias];
return $object;
}
}
if ($criteria === null) {
$criteria = array($fk => $this->get($k));
}
$fkdef['class'] = $this->get('principal_class');
if ($object = $this->xpdo->getObject($fkdef['class'], $criteria, $cacheFlag)) {
$this->_relatedObjects[$alias] = $object;
}
}
} else {
$object = parent::getOne($alias, $criteria, $cacheFlag);
}
return $object;
}
示例6: save
public function save($cacheFlag = NULL)
{
if (!$this->get('topicid') && empty($this->_relatedObjects['Topic']) or !$this->get('blogid') && empty($this->_relatedObjects['Blog'])) {
return false;
}
return parent::save($cacheFlag);
}
示例7: set
/**
* Make sure we clean up names
*/
public function set($k, $v = null, $vType = '')
{
if ($k == 'name') {
$v = strip_tags(trim(preg_replace('/\\s+/', ' ', $v)));
}
return parent::set($k, $v, $vType);
}
示例8: save
public function save($cacheFlag = null)
{
if ($this->isNew()) {
$this->set('createdon', strftime('%Y-%m-%d %H:%M:%S'));
}
return parent::save($cacheFlag);
}
示例9: save
public function save($cacheFlag = null)
{
$preventsave = $this->get('preventsave');
$published = $this->get('published');
$this->event = $this->getOne('Event');
//handle enddate - enddate can't be lower than startdate
$enddate = $this->get('enddate');
$startdate = $this->get('startdate');
if ($enddate <= $startdate) {
$this->set('enddate', $startdate);
}
//handle allday
$this->handleAllday();
$active = true;
if (empty($published)) {
$active = false;
}
if ($active) {
if (!$this->handleDouble()) {
return true;
}
if (!$this->handleDoubleInAssignedCats()) {
return true;
}
}
if (!$preventsave) {
return parent::save($cacheFlag);
} else {
return true;
}
}
示例10: save
/**
* Overrides xPDOObject::save to clear lexicon cache on saving.
*
* {@inheritdoc}
*/
public function save($cacheFlag = null)
{
$saved = parent::save($cacheFlag);
if ($saved && empty($this->xpdo->config[xPDO::OPT_SETUP])) {
$this->clearCache();
}
return $saved;
}
示例11: save
public function save($cacheFlag = NULL)
{
if (!$this->get('resourceid')) {
$this->xpdo->log(xPDO::LOG_LEVEL_ERROR, "Resource ID is null");
return false;
}
return parent::save($cacheFlag);
}
示例12: remove
/** {@inheritdoc} */
public function remove(array $ancestors = array())
{
$id = $this->get('id');
$table = $this->xpdo->getTableName('msDeliveryMember');
$sql = "DELETE FROM {$table} WHERE `delivery_id` = '{$id}';";
$this->xpdo->exec($sql);
return parent::remove();
}
示例13: remove
public function remove(array $ancestors = array())
{
$removed = parent::remove($ancestors);
if ($removed && !$this->getOption(xPDO::OPT_SETUP)) {
$this->xpdo->call('modExtensionPackage', 'clearCache', array(&$this->xpdo));
}
return $removed;
}
示例14: save
/**
* Overrides xPDOObject::save to set the createdon date.
*
* {@inheritdoc}
*/
public function save($cacheFlag = null)
{
if ($this->_new && !$this->get('created')) {
$this->set('created', strftime('%Y-%m-%d %H:%M:%S'));
}
$saved = parent::save($cacheFlag);
return $saved;
}
示例15: get
public function get($k, $format = null, $formatTemplate = null)
{
if ($k == 'badge') {
$v = $this->getBadge();
} else {
$v = parent::get($k, $format, $formatTemplate);
}
return $v;
}