public function save(Default_Model_Relation $value) { global $application; $data = array(); $ishidden = false; if ($value->getHiddenByID() === 0) { $ishidden = true; $value->hiddenbyid = null; } parent::save($value); if ($ishidden) { $data['hiddenby'] = null; } if (count($data) > 0) { $q1 = 'id = ?'; $q2 = $value->id; if (null === ($id = $value->id)) { unset($data['id']); $value->id = $this->getDbTable()->insert($data); } else { $s = $this->getDbTable()->getAdapter()->quoteInto($q1, $q2); $this->getDbTable()->update($data, $s); } } }
public function save(Default_Model_Relation $value) { global $application; $data = array(); if (!isnull($value->getId())) { $data['id'] = $value->getId(); } if (!isnull($value->getRelTypeID())) { $data['reltypeid'] = $value->getRelTypeID(); } if (!isnull($value->getTargetGUID())) { $data['target_guid'] = $value->getTargetGUID(); } if (!isnull($value->getSubjectGUID())) { $data['subject_guid'] = $value->getSubjectGUID(); } if (!isnull($value->getParentID())) { $data['parentid'] = $value->getParentID(); } if (!isnull($value->getAddedOn())) { $data['addedon'] = $value->getAddedOn(); } if (!isnull($value->getAddedByID())) { $data['addedby'] = $value->getAddedByID(); } if (!isnull($value->getDenyOn())) { $data['denyon'] = $value->getDenyOn(); } if (!isnull($value->getDenyByID())) { $data['denyby'] = $value->getDenyByID(); } if (!isnull($value->getGuid())) { $data['guid'] = $value->getGuid(); } if (!isnull($value->getHiddenOn())) { $data['hiddenon'] = $value->getHiddenOn(); } if (!isnull($value->getHiddenByID())) { $data['hiddenby'] = $value->getHiddenByID(); } $q1 = 'id = ?'; $q2 = $value->id; if (null === ($id = $value->id)) { unset($data['id']); $value->id = $this->getDbTable()->insert($data); } else { $s = $this->getDbTable()->getAdapter()->quoteInto($q1, $q2); $this->getDbTable()->update($data, $s); } }
public static function relate($reltypeid, $subjectguid, $targetguid, $userid = null, $parentid = null, $reverse = false) { $isvalid = self::validateRelation($reltypeid, $subjectguid, $targetguid, $userid, $parentid, $reverse); if ($reverse === true) { $tmp = $subjectguid; $subjectguid = $targetguid; $targetguid = $tmp; } if ($isvalid !== true) { return $isvalid; } $relexists = self::relationExists($reltypeid, $subjectguid, $targetguid); if ($relexists !== false) { return $relexists; } try { $rel = new Default_Model_Relation(); $rel->reltypeid = $reltypeid; $rel->subjectGUID = $subjectguid; $rel->targetGUID = $targetguid; $rel->addedbyid = $userid; $rel->parentid = $parentid; $rel->save(); } catch (Exception $ex) { return $ex->getMessage(); } return $rel; }