コード例 #1
0
ファイル: users.php プロジェクト: laiello/bitcero-modules
/**
* @desc Almacena la información del usuario en la base de datos
**/
function saveUsers($edit = 0)
{
    global $xoopsSecurity, $mc;
    foreach ($_POST as $k => $v) {
        ${$k} = $v;
    }
    $ruta = "&pag={$page}&search={$search}";
    if (!$xoopsSecurity->check()) {
        redirectMsg('users.php?' . ($edit ? "op=edit&id={$id}&" : '') . $ruta, __('Session token expired!', 'galleries'), 1);
        die;
    }
    $db = XoopsDatabaseFactory::getDatabaseConnection();
    if ($edit) {
        //Verificamos que el usuario sea válido
        if ($id <= 0) {
            redirectMsg('./users.php?' . $ruta, __('User id is not valid!', 'galleries'), 1);
            die;
        }
        //Verificamos que el usuario exista
        $user = new GSUser($id);
        if ($user->isNew()) {
            redirectMsg('./users.php?' . $ruta, __('Specified user does not exists!', 'galleries'), 1);
            die;
        }
        //Verificamos que el usuario no se encuentre registrado
        $sql = "SELECT COUNT(*) FROM " . $db->prefix('gs_users') . " WHERE uid={$uid} AND id_user<>{$id}";
        list($num) = $db->fetchRow($db->query($sql));
        if ($num > 0) {
            redirectMsg('./users.php?' . $ruta, __('This is user has been registered already!', 'galleries'), 1);
            die;
        }
    } else {
        //Verificamos que el usuario no se encuentre registrado
        $sql = "SELECT COUNT(*) FROM " . $db->prefix('gs_users') . " WHERE uid={$uid}";
        list($num) = $db->fetchRow($db->query($sql));
        if ($num > 0) {
            redirectMsg('./users.php?' . $ruta, __('This is user has been registered already!', 'galleries'), 1);
            die;
        }
        $user = new GSUser();
    }
    $user->setUid($uid);
    $xu = new XoopsUser($uid);
    $user->setUname($xu->uname());
    $user->setQuota($quota * 1024 * 1024);
    $user->isNew() ? $user->setDate(time()) : '';
    $user->setBlocked($block);
    if (!$user->save()) {
        redirectMsg('./users.php?' . $ruta, __('Errors ocurred while trying to save this user.', 'galleries') . '<br />' . $user->errors(), 1);
        die;
    } else {
        if ($edit) {
            @mkdir($mc['storedir'] . "/" . $user->uname(), 511);
            @mkdir($mc['storedir'] . "/" . $user->uname() . "/ths", 511);
            @mkdir($mc['storedir'] . "/" . $user->uname() . "/formats", 511);
        } else {
            mkdir($mc['storedir'] . "/" . $user->uname(), 511);
            mkdir($mc['storedir'] . "/" . $user->uname() . "/ths", 511);
            mkdir($mc['storedir'] . "/" . $user->uname() . "/formats", 511);
        }
        redirectMsg('./users.php?' . $ruta, __('User saved successfully!', 'galleries'), 0);
        die;
    }
}
コード例 #2
0
ファイル: images.php プロジェクト: laiello/bitcero-modules
/**
* @desc Almacena la información del grupo de imágenes
**/
function saveBulkImages()
{
    global $util, $mc, $xoopsUser;
    XoopsLogger::getInstance()->activated = false;
    XoopsLogger::getInstance()->renderingEnabled = false;
    set_time_limit(0);
    foreach ($_POST as $k => $v) {
        ${$k} = $v;
    }
    $ruta = "page={$page}&search={$search}&owner={$uid}&sort={$sort}&mode={$mode}";
    if ($xoopsUser->uid() == $uid) {
        $xu = $xoopsUser;
    } else {
        $xu = new XoopsUser($uid);
    }
    //Verificamos si el usuario se encuentra registrado
    $user = new GSUser($xu->uname());
    if ($user->isNew()) {
        //Insertamos información del usuario
        $user->setUid($uid);
        $user->setUname($xu->uname());
        $user->setQuota($mc['quota'] * 1024 * 1024);
        $user->setDate(time());
        if (!$user->save()) {
            send_error(__('User owner could not be created!', 'galleries') . "<br />" . $user->errors());
            die;
        } else {
            mkdir($mc['storedir'] . "/" . $user->uname());
            mkdir($mc['storedir'] . "/" . $user->uname() . "/ths");
            mkdir($mc['storedir'] . "/" . $user->uname() . "/formats");
        }
    } else {
        @mkdir($mc['storedir'] . "/" . $user->uname());
        @mkdir($mc['storedir'] . "/" . $user->uname() . "/ths");
        @mkdir($mc['storedir'] . "/" . $user->uname() . "/formats");
    }
    // Insertamos las etiquetas
    $tgs = explode(",", $tags);
    /**
     * @desc Almacena los ids de las etiquetas que se asignarán a la imágen
     */
    $ret = array();
    foreach ($tgs as $k) {
        $k = trim($k);
        if ($k == '') {
            continue;
        }
        // Comprobamos que la palabra tenga la longitud permitida
        if (strlen($k) < $mc['min_tag'] || strlen($k) > $mc['max_tag']) {
            continue;
        }
        // Creamos la etiqueta
        $tag = new GSTag($k);
        if (!$tag->isNew()) {
            // Si ya existe nos saltamos
            $ret[] = $tag->id();
            continue;
        }
        $tag->setTag($k);
        if ($tag->save()) {
            $ret[] = $tag->id();
        }
    }
    $errors = '';
    $k = 1;
    include_once RMCPATH . '/class/uploader.php';
    $updir = $mc['storedir'] . "/" . $xu->uname();
    $upths = $mc['storedir'] . "/" . $xu->uname() . "/ths";
    // Cargamos la imágen
    if (!file_exists($updir)) {
        mkdir($updir, 511);
    }
    if (!file_exists($upths)) {
        mkdir($upths, 511);
    }
    $uploader = new RMFileUploader($updir, $mc['size_image'] * 1024, array('gif', 'jpg', 'jpeg', 'png'));
    $err = array();
    if (!$uploader->fetchMedia('Filedata')) {
        send_error($uploader->getErrors());
    }
    if (!$uploader->upload()) {
        send_error($uploader->getErrors());
    }
    // Insertamos el archivo en la base de datos
    $img = new GSImage();
    $img->setTitle($uploader->savedFileName);
    $img->setOwner($uid);
    $img->setPublic(2);
    $img->setCreated(time());
    $img->setImage($uploader->getSavedFileName());
    if (!$image->save()) {
        unlink($uploader->savedDestination);
        send_error(__('File could not be inserted to database!', 'galleries'));
    }
    $ret['message'] = '1';
    $ret['id'] = $image->id();
    echo json_encode($ret);
    die;
}