");
}
-// print_r($this);
- if(!empty($q['id'])){ // this should never be needed?!?!?!?!??
- $this->id = $q['id'];
- }
-
- if(!empty($q['ids'])){
- $this->whereAddIn('core_enum.id', explode(',', $q['ids']) , 'int');
- }
-
}
function checkPerm($lvl, $au, $req=null)
return 0;
}
+ function lookupCreate($etype,$name, $display_name=false) {
+
+ // check
+ $ce = DB_DataObject::Factory('core_enum');
+ $ce->setFrom(array(
+ 'etype' => '',
+ 'name' => $etype
+ ));
+ if (!$ce->find(true)) {
+ $ce->display_name = $etype;
+ $ce->insert();
+ }
+
+ $ce = DB_DataObject::Factory('core_enum');
+ $ce->etype = $etype;
+ $ce->name = $name;
+ if ($ce->find(true)) {
+ return $ce->id;
+ }
+ $ce->active = 1;
+ $ce->display_name = $display_name === false ? $ce->name : $display_name;
+ return $ce->insert();
+
+ }
function lookupById($id) {
$ce = DB_DataObject::Factory('core_enum');