public function canDelete($member = null) { if ($this->getType() == 'Presentation') { return false; } return parent::canDelete($member); }
/** * * @param GridField $gridField * @param DataObject $record * @param string $columnName * @return string - the HTML for the column */ public function getColumnContent($gridField, $record, $columnName) { if ($this->removeRelation) { $field = GridField_FormAction::create($gridField, 'UnlinkRelation' . $record->ID, false, "unlinkrelation", array('RecordID' => $record->ID))->addExtraClass('gridfield-button-unlink')->setAttribute('title', _t('GridAction.UnlinkRelation', "Unlink"))->setAttribute('data-icon', 'chain--minus'); } else { if (!$record->canDelete()) { return; } $field = GridField_FormAction::create($gridField, 'DeleteRecord' . $record->ID, false, "deleterecord", array('RecordID' => $record->ID))->addExtraClass('gridfield-button-delete')->setAttribute('title', _t('GridAction.Delete', "Delete"))->setAttribute('data-icon', 'cross-circle')->setDescription(_t('GridAction.DELETE_DESCRIPTION', 'Delete')); } //add a class to the field to if it is the last gridfield in the list $numberOfRelations = $record->Pages()->Count(); $field->addExtraClass('dms-delete')->setAttribute('data-pages-count', $numberOfRelations)->removeExtraClass('gridfield-button-delete'); //remove the base gridfield behaviour //set a class telling JS what kind of warning to display when clicking the delete button if ($numberOfRelations > 1) { $field->addExtraClass('dms-delete-link-only'); } else { $field->addExtraClass('dms-delete-last-warning'); } //set a class to show if the document is hidden if ($record->isHidden()) { $field->addExtraClass('dms-document-hidden'); } return $field->Field(); }
public function canDelete($member = null) { if (Summit::isDefaultEventType($this->Type)) { return false; } return parent::canDelete($member); }
/** * * @param GridField $gridField * @param DataObject $record * @param string $columnName * @return string - the HTML for the column */ public function getColumnContent($gridField, $record, $columnName) { if (!$record->IsDeletedFromStage && $record->canDelete() && !$record->isPublished()) { $field = GridField_FormAction::create($gridField, 'DeleteFromStage' . $record->ID, false, "deletefromstage", array('RecordID' => $record->ID))->addExtraClass('gridfield-button-deletedraft')->setAttribute('title', _t('PublishableGridFieldAction.DELETE', 'Delete draft'))->setAttribute('data-icon', 'decline')->setDescription(_t('PublishableGridFieldAction.DELETE_DESC', 'Remove this item from the draft site')); return $field->Field(); } return; }
/** * @param GridField $gridField * @param DataObject $record * @param string $columnName * @return string - the HTML for the column */ public function getColumnContent($gridField, $record, $columnName) { if (!$record->canDelete()) { return; } $field = GridField_FormAction::create($gridField, 'SoftDeleteRecord' . $record->ID, false, "softdeleterecord", array('RecordID' => $record->ID))->addExtraClass('gridfield-button-delete')->setAttribute('title', _t('GridAction.Delete', "Delete"))->setAttribute('data-icon', 'cross-circle')->setDescription(_t('GridAction.DELETE_DESCRIPTION', 'Delete')); return $field->Field(); }
public function canDelete($member = null) { $this->beforeExtending(__FUNCTION__, function ($member = null) { if ($this->Parent && $this->Parent->canDelete($member)) { return true; } }); return parent::canDelete($member); }
public function canDelete($member = null) { if ($this->Readonly) { return false; } // forms are using this handler... if ($this->FormCount()) { return false; } return parent::canDelete($member); }
/** * Checks to see if the given member can delete this object or not * @param {Member} $member Member instance or member id to check * @return {bool} Returns boolean true or false depending if the user can delete this object */ public function canDelete($member = null) { $parentResult = parent::canDelete($member); if ($parentResult == false || $this->UserLanguage == false) { return false; } if ($this->Folders()->count() > 0 || $this->Snippets()->count() > 0) { return false; } return true; }
public function canDelete($member = null) { return parent::canDelete($member); }
public function canDelete($member = null) { $method = __FUNCTION__; $this->beforeExtending(__FUNCTION__, function ($member) use($method) { if (!$this->checkIfHasGlobalMenuPermission($member)) { return false; } if (singleton('SiteTree')->{$method}($member)) { return true; } }); return parent::canDelete($member); }
/** * * @param GridField $gridField * @param DataObject $record * @param string $columnName * @return string - the HTML for the column */ public function getColumnContent($gridField, $record, $columnName) { if ($this->removeRelation) { if (!$record->canEdit()) { return; } $field = GridField_FormAction::create($gridField, 'UnlinkRelation' . $record->ID, _t('GridAction.UnlinkRelation', "Unlink"), "unlinkrelation", array('RecordID' => $record->ID))->addExtraClass('gridfield-button-unlink')->setAttribute('title', _t('GridAction.UnlinkRelation', "Unlink"))->setAttribute('data-icon', 'chain--minus'); } else { if (!$record->canDelete()) { return; } $field = GridField_FormAction::create($gridField, 'DeleteRecord' . $record->ID, _t('GridAction.Delete', "Delete"), "deleterecord", array('RecordID' => $record->ID))->addExtraClass('gridfield-button-delete')->setAttribute('title', _t('GridAction.Delete', "Delete"))->setAttribute('data-icon', 'cross-circle')->setDescription(_t('GridAction.DELETE_DESCRIPTION', 'Delete')); } return $field->Field(); }
public function canDelete($member = null) { $can = parent::canDelete($member); $queueditems = $this->SendRecipientQueue(); if ($queueditems->count()) { foreach ($queueditems as $queueditem) { $can = $can && !($queueditem->Status === 'Scheduled' && $queueditem->Status === 'InProgress'); } } return $can; }
public function canDelete($member = null) { $can = parent::canDelete($member); if ($this->Status !== 'Sending') { return $can; } else { return false; } }
public function canDelete($member = null) { $first = $this->Pages()->first(); return $first ? $first->canDelete() : parent::canDelete($member); }
public function canDelete($member = null) { $this->beforeExtending(__METHOD__, function ($member) { if (!$this->checkIfHasGlobalMenuPermission($member)) { return false; } }); return parent::canDelete($member); }
/** * Remove a friendship object * @param DataObject $relationship */ public function removeFriendship(DataObject $relationship) { if ($relationship && $relationship->canDelete()) { // need to remove this user from the 'other's followers group and friends group // if needbe if ($relationship->Status == 'Approved') { $reciprocal = $relationship->reciprocal(); if ($reciprocal) { // set it back to pending $reciprocal->Status = 'Pending'; $reciprocal->write(); } $friends = $relationship->Other()->getGroupFor(MicroBlogMember::FRIENDS); $relationship->Initiator()->Groups()->remove($friends); $friends = $relationship->Initiator()->getGroupFor(MicroBlogMember::FRIENDS); $relationship->Other()->Groups()->remove($friends); } $followers = $relationship->Other()->getGroupFor(MicroBlogMember::FOLLOWERS); $relationship->Initiator()->Groups()->remove($followers); $relationship->delete(); return $relationship; } }
public function doDelete($data, $form) { $title = $this->record->Title; try { if (!$this->record->canDelete()) { throw new ValidationException(_t('GridFieldDetailForm.DeletePermissionsFailure', "No delete permissions"), 0); } $this->record->delete(); } catch (ValidationException $e) { $form->sessionMessage($e->getResult()->message(), 'bad', false); return $this->getToplevelController()->redirectBack(); } $message = sprintf(_t('GridFieldDetailForm.Deleted', 'Deleted %s %s'), $this->record->i18n_singular_name(), htmlspecialchars($title, ENT_QUOTES)); $toplevelController = $this->getToplevelController(); if ($toplevelController && $toplevelController instanceof LeftAndMain) { $backForm = $toplevelController->getEditForm(); $backForm->sessionMessage($message, 'good', false); } else { $form->sessionMessage($message, 'good', false); } //when an item is deleted, redirect to the parent controller $controller = $this->getToplevelController(); $controller->getRequest()->addHeader('X-Pjax', 'Content'); // Force a content refresh return $controller->redirect($this->getBacklink(), 302); //redirect back to admin section }
public function canDelete($member = null) { return DataObject::canDelete($member); }
public function canDelete($member = null) { return $this->Readonly ? false : parent::canDelete($member); }
/** * * @param GridField $gridField * @param DataObject $record * @param string $columnName * @return string - the HTML for the column */ public function getColumnContent($gridField, $record, $columnName) { if ($this->removeRelation) { if (!$record->canEdit()) { return; } $field = GridField_FormAction::create($gridField, 'UnlinkRelation' . $record->ID, false, "unlinkrelation", array('RecordID' => $record->ID))->addExtraClass('btn btn--no-text btn--icon-md font-icon-link-broken grid-field__icon-action gridfield-button-unlink')->setAttribute('title', _t('GridAction.UnlinkRelation', "Unlink")); } else { if (!$record->canDelete()) { return; } $field = GridField_FormAction::create($gridField, 'DeleteRecord' . $record->ID, false, "deleterecord", array('RecordID' => $record->ID))->addExtraClass('gridfield-button-delete btn--icon-md font-icon-trash-bin btn--no-text grid-field__icon-action')->setAttribute('title', _t('GridAction.Delete', "Delete"))->setDescription(_t('GridAction.DELETE_DESCRIPTION', 'Delete')); } return $field->Field(); }
/** * standard SS method * @param Member | NULL * @return Boolean */ public function canDelete($member = null) { if (Permission::checkMember($member, Config::inst()->get("EcommerceRole", "admin_permission_code"))) { return true; } return parent::canDelete($member); }
public function canDelete($member = null) { $can = parent::canDelete($member); return $can ? $can : Permission::check('CMS_ACCESS_FrontendAdmin'); }