/** * @desc Almacena en la base de datos todos los datos del album **/ function saveAlbums($edit = 0) { global $xoopsSecurity, $xoopsUser; $db = Database::getInstance(); foreach ($_POST as $k => $v) { ${$k} = $v; } if (!isset($owner) || $owner <= 0) { $owner = $xoopsUser->uid(); } $ruta = "pag={$page}&sort={$sort}&mode={$mode}&search={$search}"; $op = $op = 'save' ? 'new' : 'edit'; if (!$xoopsSecurity->check()) { redirectMsg('./sets.php?op=' . $op . '&' . $ruta, __('Session token expired!', 'galleries'), 1); die; } if ($edit) { //Verificamos que el album sea válido if ($id <= 0) { redirectMsg('./sets.php?' . $ruta, __('Please provide a valid ID!', 'galleries'), 1); die; } //Verificamos que el album exista $set = new GSSet($id); if ($set->isNew()) { redirectMsg('./sets.php?' . $ruta, __('Specified album does not exists!', 'galleries'), 1); die; } $sql = "SELECT COUNT(*) FROM " . $db->prefix('gs_sets') . " WHERE title='{$title}' AND owner={$owner} AND id_set<>" . $set->id(); list($num) = $db->fetchRow($db->query($sql)); if ($num > 0) { redirectMsg('./sets.php?op=edit&id=' . $set->id() . '&' . $ruta, __('You have another album with same name. Please specify a different name.', 'galleries'), 1); die; } } else { //Verificamos que el titulo del album no exista $sql = "SELECT COUNT(*) FROM " . $db->prefix('gs_sets') . " WHERE title='{$title}' AND owner={$owner}"; list($num) = $db->fetchRow($db->query($sql)); if ($num > 0) { redirectMsg('./sets.php?' . $op . '&' . $ruta, __('You have another album with same name. Please specify a different name.', 'galleries'), 1); die; } $set = new GSSet(); } $set->setTitle($title); $set->setVar('description', $description); $set->setPublic($public); $set->setDate(time()); $set->setOwner($owner); $xu = new XoopsUser($owner); $set->setUname($xu->uname()); $new = $set->isNew(); if (!$set->save()) { redirectMsg('./sets.php?' . $ruta, __('Database could not be updated!', 'galleries') . '<br />' . $set->errors(), 1); die; } else { //Incrementamos el número de albums del usuario if ($new) { $user = new GSUser($set->owner(), 1); $user->addSet(); } redirectMsg('./sets.php?' . $ruta, __('Database updated successfully!', 'galleries'), 0); die; } }