/** * Método para registrar y modificar los datos de la empresa * * @param string $method Método para guardar en la base de datos (create, update) * @param array $data Array de datos para la autocarga de objetos * @param arraty $other Se utiliza para autocargar datos adicionales al objeto * @return Empresa */ public static function setEmpresa($method, $data, $optData = null) { $obj = new Empresa($data); if ($optData) { $obj->dump_result_self($optData); } $rs = $obj->{$method}(); return $rs ? $obj : NULL; }
/** * Método para crear/modificar un objeto de base de datos * * @param string $medthod: create, update * @param array $data: Data para autocargar el modelo * @param array $optData: Data adicional para autocargar * * return object ActiveRecord */ public static function setEmpresa($method, $data, $optData = null) { $obj = new Empresa($data); //Se carga los datos con los de las tablas if ($optData) { //Se carga información adicional al objeto $obj->dump_result_self($optData); } //Verifico que no exista otro menu, y si se encuentra inactivo lo active $conditions = "nombre = '{$obj->nombre}'"; $old = new Empresa(); if ($old->find_first($conditions)) { if ($method == 'create') { $obj->id = $old->id; $method = 'update'; } } return $obj->{$method}() ? $obj : FALSE; }