X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=DataObjects%2FCore_enum.php;h=54caf2f836e8b21c9a4aad913f3843852f283af5;hb=9872d143a971892847354413c10ccce7fd99673c;hp=38c0b9e731bfbbff5e9f603d265c9eb7ec1f64d6;hpb=6e7afd5b0e0e08e31873f9e42faa3951a2c2f2d7;p=Pman.Core diff --git a/DataObjects/Core_enum.php b/DataObjects/Core_enum.php index 38c0b9e7..54caf2f8 100644 --- a/DataObjects/Core_enum.php +++ b/DataObjects/Core_enum.php @@ -158,12 +158,14 @@ class Pman_Core_DataObjects_Core_enum extends DB_DataObject $tn = $this->tableName(); $x = $this->factory($tn); - if(empty($req['etype'])){ - if (empty($req['name'])) { + if(empty($req['etype']) || !strlen(trim($req['etype'])) ){ + + if (empty($req['name']) || !strlen(trim($req['name']))) { $roo->jerr('name or etype missing'); } + if($x->get('name', $req['name'])){ - $roo->jerr('name already exists'); + $roo->jerr("name already exists - '{$req['name']}'" ); } } else if (!empty($req['_bulk_names'])) { @@ -174,7 +176,6 @@ class Pman_Core_DataObjects_Core_enum extends DB_DataObject continue; } $bits = explode(',', $l); - $x = $this->factory($tn); $rr = array( 'etype' => $req['etype'], 'name' => array_shift($bits) @@ -182,16 +183,23 @@ class Pman_Core_DataObjects_Core_enum extends DB_DataObject $rr['display_name'] = empty($bits) ? $rr['name'] : $bits[0]; - + $x = $this->factory($tn); + $x->beforeInsert($rr, $roo); + $x->setFrom($rr); + $x->insert(); } - + $roo->jok("inserted"); } else { + if (empty($req['name']) || !strlen(trim($req['name']))) { + $roo->jerr('name missing'); + } + $x->whereAdd("etype = '{$this->escape($req['etype'])}' AND name = '{$this->escape($req['name'])}'"); $x->find(true); if($x->count() > 0){ - $roo->jerr('name already exists'); + $roo->jerr("name already exists - '{$req['name']}'" ); } } } @@ -203,7 +211,7 @@ class Pman_Core_DataObjects_Core_enum extends DB_DataObject } - function onUpdate($old, $req) + function onUpdate($old, $req, $roo) { $x = $this->factory($this->tableName()); $x->query("SELECT core_enum_seqmax_update('". $this->escape($this->etype) ."')"); // no idea why need to do this!!?? @@ -346,6 +354,7 @@ class Pman_Core_DataObjects_Core_enum extends DB_DataObject $t->etype = isset($base['etype']) ? $base['etype'] : $t->etype ; $t->name = isset($row['name']) ? $row['name'] : ''; + $t->display_name = isset($row['display_name']) ? $row['display_name'] : ''; if (empty($t->name)) { print_R($data);