/** * Get all image sizes * @return array */ public function get_sizes_data() { if (empty($this->sizes)) { $cat = new RMImageCategory($this->getVar('cat')); if ($cat->isNew()) { return false; } // Get sizes $this->sizes = $cat->getVar('sizes'); } return $this->sizes; }
/** * This function deletes all images in a category and the category */ function delete_category() { global $xoopsSecurity; $id = rmc_server_var($_GET, 'id', 0); if (!$xoopsSecurity->check()) { redirectMsg('images.php?action=showcats', __('Operation not allowed!', 'rmcommon'), 1); die; } if ($id <= 0) { redirectMsg('images.php?action=showcats', __('Category ID not provided', 'rmcommon'), 1); die; } $cat = new RMImageCategory($id); if ($cat->isNew()) { redirectMsg('images.php?action=showcats', __('Category not found', 'rmcommon'), 1); die; } $sizes = array(); foreach ($cat->getVar('sizes') as $size) { if ($size['width'] <= 0) { continue; } $sizes[] = '_' . $size['width'] . 'x' . $size['height']; } $db = Database::getInstance(); $sql = "SELECT * FROM " . $db->prefix("rmc_images") . " WHERE cat='" . $cat->id() . "'"; $result = $db->query($sql); while ($row = $db->fetchArray($result)) { $image = new RMImage(); $image->assignVars($row); $updir = XOOPS_UPLOAD_PATH . '/' . date('Y', $image->getVar('date')) . '/' . date('m', time()); $fd = pathinfo($image->getVar('file')); foreach ($sizes as $size) { $file = $updir . '/sizes/' . $fd['filename'] . $size . '.' . $fd['extension']; @unlink($file); } $file = $updir . '/' . $image->getVar('file'); @unlink($file); $image->delete(); } if ($cat->delete()) { redirectMsg('images.php?action=showcats', __('Category deleted successfully!', 'rmcommon'), 0); } else { redirectMsg('images.php?action=showcats', __('Errors ocurred while deleting the category', 'rmcommon') . '<br />' . $cat->errors(), 0); } }
$data = $security; //base64_decode($security); $data = explode("|", $data); // [0] = referer, [1] = session_id(), [2] = user, [3] = token $xoopsUser = new XoopsUser($data[0]); if (!isset($data[1]) || $data[1] != RMCURL . '/images.php') { error(__('You are not allowed to do this action', 'rmcommon')); } if (!$xoopsUser) { error(__('You are not allowed to do this action', 'rmcommon')); } if ($category <= 0) { error(__('Sorry, category has not been specified!', 'rmcommon')); } $cat = new RMImageCategory($category); if ($cat->isNew()) { error(__('Sorry, the specified category has not been found!', 'rmcommon')); } if ($cat->getVar('status') != 'open') { error(__('Sorry, the specified category is closed!', 'rmcommon')); } if (!$cat->user_allowed_toupload($xoopsUser)) { error(__('Sorry, you can not upload images!', 'rmcommon')); } // Cargamos la imágen $updir = XOOPS_UPLOAD_PATH . '/' . date('Y', time()); if (!file_exists($updir)) { mkdir($updir); chmod($updir, octdec('0777')); } $updir .= '/' . date('m', time());
{ global $xoopsSecurity; echo $message; echo '<input type="hidden" id="ret-token" value="' . $xoopsSecurity->createToken() . '" />'; die; } $category = rmc_server_var($_POST, 'category', 0); $action = rmc_server_var($_POST, 'action', ''); $cat = new RMImageCategory($category); $type = rmc_server_var($_REQUEST, 'type', 'tiny'); $en = rmc_server_var($_REQUEST, 'name', ''); if ($action == '') { RMTemplate::get()->add_local_script('jquery.min.js', 'rmcommon', 'include'); RMTemplate::get()->add_local_script('jquery-ui.min.js', 'rmcommon', 'include'); RMTemplate::get()->add_local_script('images_editor.js', 'rmcommon', 'include'); if (!$cat->isNew()) { $uploader = new RMFlashUploader('files-container', 'upload.php'); $uploader->add_setting('scriptData', array('action' => 'upload', 'category' => $cat->id(), 'rmsecurity' => TextCleaner::getInstance()->encrypt($xoopsUser->uid() . '|' . RMCURL . '/images.php' . '|' . $xoopsSecurity->createToken(), true))); $uploader->add_setting('multi', true); $uploader->add_setting('fileExt', '*.jpg;*.png;*.gif'); $uploader->add_setting('fileDesc', __('All Images (*.jpg, *.png, *.gif)', 'rmcommon')); $uploader->add_setting('sizeLimit', $cat->getVar('filesize') * $cat->getVar('sizeunit')); $uploader->add_setting('buttonText', __('Browse Images...', 'rmcommon')); $uploader->add_setting('queueSizeLimit', 100); $uploader->add_setting('auto', true); $uploader->add_setting('onSelect', "function(event, qid, file){\n \tif (queuefiles[qid]) return false;\n \tqueuefiles[qid] = true;\n \treturn true;\n }"); $uploader->add_setting('onComplete', "function(event, id, file, resp, data){\n eval('ret = '+resp);\n if (ret.error){\n \$('#upload-errors').append('<span class=\"failed\"><strong>'+file.name+'</strong>: '+ret.message+'</span>');\n } else {\n total++;\n ids[total-1] = ret.id;\n \$('#upload-errors').append('<span class=\"done\"><strong>'+file.name+'</strong>: " . __('Uploaded successfully!', 'rmcommon') . "</span>');\n }\n return true;\n }"); $uploader->add_setting('onAllComplete', "function(event, data){\n if(total<=0) return;\n \$('.categories_selector').hide('slow');\n \$('#upload-errors').hide('slow');\n \$('#upload-errors').html('');\n \$('#upload-controls').hide('slow');\n \$('#resizer-bar').show('slow');\n \$('#resizer-bar').effect('highlight',{},1000);\n \$('#gen-thumbnails').show();\n \n var increments = 1/total*100;\n url = '" . RMCURL . "/images.php';\n \n params = '" . TextCleaner::getInstance()->encrypt($xoopsUser->uid() . '|' . RMCURL . '/images.php' . '|' . $xoopsSecurity->createToken(), true) . "';\n resize_image(params);\n \n }"); $uploader->add_setting('onSelectOnce', "function(event, data){\n \$('#upload-errors').html('');\n }"); RMTemplate::get()->add_head($uploader->render()); }