/** * replace the post gallery with unite gallery */ function unitegallery_postgallery($output = '', $atts, $content = false, $tag = false) { $alias = UniteFunctionsUG::getVal($atts, "unitegallery"); if (empty($alias)) { return $output; } $ids = UniteFunctionsUG::getVal($atts, "ids"); if (empty($ids)) { return $output; } //get items $arrIDs = explode(",", $ids); $arrItems = UniteFunctionsWPUG::getArrItemsFromAttachments($arrIDs); //output gallery $objItems = new UniteGalleryItems(); $arrUniteItems = $objItems->getItemsFromArray($arrItems); $content = HelperUG::outputGallery($alias, null, "alias", $arrUniteItems); return $content; }
/** * run client ajax actions */ function onClientAjaxActions() { $action = UniteFunctionsUG::getPostGetVariable("action"); if ($action != "unitegallery_ajax_action") { echo "nothing here"; exit; } $clientAction = UniteFunctionsUG::getPostGetVariable("client_action"); $objItems = new UniteGalleryItems(); $galleryHtmlID = UniteFunctionsUG::getPostVariable("galleryID"); $data = UniteFunctionsUG::getPostVariable("data"); if (empty($data)) { $data = array(); } $data["galleryID"] = HelperGalleryUG::getGalleryIDFromHtmlID($galleryHtmlID); try { switch ($clientAction) { case "front_get_cat_items": $html = $objItems->getHtmlFrontFromData($data); $output = array("html" => $html); HelperUG::ajaxResponseData($output); break; default: HelperUG::ajaxResponseError("wrong ajax action: <b>{$action}</b> "); break; } } catch (Exception $e) { $message = $e->getMessage(); $errorMessage = $message; if (GlobalsUG::SHOW_TRACE == true) { $trace = $e->getTraceAsString(); $errorMessage = $message . "<pre>" . $trace . "</pre>"; } HelperUG::ajaxResponseError($errorMessage); } //it's an ajax action, so exit HelperUG::ajaxResponseError("No response output on <b> {$action} </b> action. please check with the developer."); exit; }
/** * * onAjax action handler */ public static function onAjaxAction() { $actionType = UniteFunctionsUG::getPostGetVariable("action"); if ($actionType != "unitegallery_ajax_action") { return false; } $gallery = new UniteGalleryGallery(); $galleries = new UniteGalleryGalleries(); $categories = new UniteGalleryCategories(); $items = new UniteGalleryItems(); $operations = new UGOperations(); $action = UniteFunctionsUG::getPostGetVariable("client_action"); $data = UniteFunctionsUG::getPostVariable("data"); $data = UniteProviderFunctionsUG::normalizeAjaxInputData($data); $galleryType = UniteFunctionsUG::getPostVariable("gallery_type"); $urlGalleriesView = HelperUG::getGalleriesView(); try { switch ($action) { case "gallery_actions": $galleryID = UniteFunctionsUG::getVal($data, "galleryID"); $galleryAction = UniteFunctionsUG::getVal($data, "gallery_action"); $galleryData = UniteFunctionsUG::getVal($data, "gallery_data", array()); self::onGalleryAjaxAction($galleryType, $galleryAction, $galleryData, $galleryID); break; case "get_thumb_url": $urlImage = UniteFunctionsUG::getVal($data, "urlImage"); $imageID = UniteFunctionsUG::getVal($data, "imageID"); $urlThumb = $operations->getThumbURLFromImageUrl($urlImage, $imageID); $arrData = array("urlThumb" => $urlThumb); HelperUG::ajaxResponseData($arrData); break; case "add_category": $catData = $categories->addFromData(); HelperUG::ajaxResponseData($catData); break; case "remove_category": $response = $categories->removeFromData($data); HelperUG::ajaxResponseSuccess(__("The category deleted successfully.", UNITEGALLERY_TEXTDOMAIN), $response); break; case "update_category": $categories->updateFromData($data); HelperUG::ajaxResponseSuccess(__("Category updated.", UNITEGALLERY_TEXTDOMAIN)); break; case "update_cat_order": $categories->updateOrderFromData($data); HelperUG::ajaxResponseSuccess(__("Order updated.", UNITEGALLERY_TEXTDOMAIN)); break; case "add_item": $itemData = $items->addFromData($data); HelperUG::ajaxResponseData($itemData); break; case "get_item_data": $response = $items->getItemData($data); HelperUG::ajaxResponseData($response); break; case "update_item_data": $response = $items->updateItemData($data); HelperUG::ajaxResponseSuccess(__("Item data updated!", UNITEGALLERY_TEXTDOMAIN), $response); break; case "remove_items": $response = $items->removeItemsFromData($data); HelperUG::ajaxResponseSuccess(__("Items Removed", UNITEGALLERY_TEXTDOMAIN), $response); break; case "get_cat_items": $responeData = $items->getCatItemsHtmlFromData($data); //update category param if inside gallery $gallery->updateItemsCategoryFromData($data); HelperUG::ajaxResponseData($responeData); break; case "update_item_title": $items->updateItemTitleFromData($data); HelperUG::ajaxResponseSuccess(__("Item Title Updated", UNITEGALLERY_TEXTDOMAIN)); break; case "duplicate_items": $response = $items->duplicateItemsFromData($data); HelperUG::ajaxResponseSuccess(__("Items Duplicated", UNITEGALLERY_TEXTDOMAIN), $response); break; case "update_items_order": $items->saveOrderFromData($data); HelperUG::ajaxResponseSuccess(__("Order Saved", UNITEGALLERY_TEXTDOMAIN)); break; case "copy_move_items": $response = $items->copyMoveItemsFromData($data); HelperUG::ajaxResponseSuccess(__("Done Operation", UNITEGALLERY_TEXTDOMAIN), $response); break; case "create_gallery": $galleryID = $galleries->addGaleryFromData($galleryType, $data); $urlView = HelperUG::getGalleryView($galleryID); HelperUG::ajaxResponseSuccessRedirect(__("Gallery Created", UNITEGALLERY_TEXTDOMAIN), $urlView); break; case "delete_gallery": $galleries->deleteGalleryFromData($data); HelperUG::ajaxResponseSuccessRedirect(__("Gallery deleted", UNITEGALLERY_TEXTDOMAIN), $urlGalleriesView); break; case "update_gallery": $galleries->updateGalleryFromData($data); HelperUG::ajaxResponseSuccess(__("Gallery Updated")); break; case "duplicate_gallery": $galleries->duplicateGalleryFromData($data); HelperUG::ajaxResponseSuccessRedirect(__("Gallery duplicated", UNITEGALLERY_TEXTDOMAIN), $urlGalleriesView); break; case "update_plugin": if (method_exists("UniteProviderFunctionsUG", "updatePlugin")) { UniteProviderFunctionsUG::updatePlugin(); } else { echo "Functionality Don't Exists"; } break; case "export_gallery_settings": $galleryID = UniteFunctionsUG::getPostGetVariable("galleryid"); $galleries->exportGallerySettings($galleryID); break; case "import_gallery_settings": $galleryID = UniteFunctionsUG::getPostGetVariable("galleryid"); $galleries->importGallerySettingsFromUploadFile($galleryID); break; default: HelperUG::ajaxResponseError("wrong ajax action: <b>{$action}</b> "); break; } } catch (Exception $e) { $message = $e->getMessage(); $errorMessage = $message; if (GlobalsUG::SHOW_TRACE == true) { $trace = $e->getTraceAsString(); $errorMessage = $message . "<pre>" . $trace . "</pre>"; } HelperUG::ajaxResponseError($errorMessage); } //it's an ajax action, so exit HelperUG::ajaxResponseError("No response output on <b> {$action} </b> action. please check with the developer."); exit; }
/** * * add item to database from data, init the item on the way by the record. * return item id */ public function add($data) { $catID = UniteFunctionsUG::getVal($data, "catID"); $type = UniteFunctionsUG::getVal($data, "type"); $params = ""; $urlImage = UniteFunctionsUG::getVal($data, "urlImage"); $urlImage = HelperUG::URLtoRelative($urlImage); $urlThumb = UniteFunctionsUG::getVal($data, "urlThumb"); $urlThumb = HelperUG::URLtoRelative($urlThumb); //get max items order $items = new UniteGalleryItems(); $maxOrder = $items->getMaxOrder($catID); $arrInsert = array(); $arrInsert["type"] = $type; $arrInsert["published"] = 1; $arrInsert["ordering"] = $maxOrder + 1; $arrInsert["catid"] = $catID; $arrInsert["url_image"] = $urlImage; $arrInsert["url_thumb"] = $urlThumb; $arrParams = array(); switch ($type) { case self::TYPE_IMAGE: $urlImage = UniteFunctionsUG::getVal($data, "urlImage"); $arrInsert["catid"] = $catID; //set params $title = HelperUG::getTitleFromUrl($urlImage, $this->itemTitleBase); $imageID = UniteFunctionsUG::getVal($data, "imageID", 0); $arrInsert["imageid"] = $imageID; //get title from attachment if (!empty($imageID)) { $data = null; if (method_exists("UniteProviderFunctionsUG", "getImageDataFromImageID")) { $data = UniteProviderFunctionsUG::getImageDataFromImageID($imageID); } //set title from image meta $dataTitle = UniteFunctionsUG::getVal($data, "title"); if (!empty($dataTitle)) { $title = $dataTitle; } //set decription from image meta $dataDesc = UniteFunctionsUG::getVal($data, "description"); if (!empty($dataDesc)) { $arrParams["ug_item_description"] = $dataDesc; } } break; default: //add media item $title = UniteFunctionsUG::getVal($data, "title"); $arrInsert = $this->getAddDataFromMedia($data, $arrInsert); break; } UniteFunctionsUG::validateNotEmpty($title, "title"); $arrInsert["title"] = $title; //add params $arrParamsExisting = UniteFunctionsUG::getVal($arrInsert, "params"); if (is_array($arrParamsExisting)) { $arrParams = array_merge($arrParams, $arrParamsExisting); } $jsonParams = json_encode($arrParams); $arrInsert["params"] = $jsonParams; //insert the category $itemID = $this->db->insert(GlobalsUG::$table_items, $arrInsert); $arrInsert["id"] = $itemID; $this->initByDBRecord($arrInsert); return $itemID; }
/** * * put the gallery */ public function putGallery($galleryID, $arrOptions = array(), $initType = "id") { try { $objCategories = new UniteGalleryCategories(); $this->initGallery($galleryID); $this->setOutputOptions(); $this->putScripts(); $enableCatTabs = $this->getParam('enable_category_tabs', self::FORCE_BOOLEAN); //custom items pass if (is_array($arrOptions) && array_key_exists("items", $arrOptions)) { $arrItems = $arrOptions["items"]; $enableCatTabs = false; } else { //set gallery category $optCatID = UniteFunctionsUG::getVal($arrOptions, "categoryid"); if (!empty($optCatID) && $objCategories->isCatExists($optCatID)) { $categoryID = $optCatID; } else { if ($enableCatTabs == true) { $categoryID = $this->getParam("tabs_init_catid"); if ($categoryID == "first") { //get first category from tabs $strCatIDs = $this->getParam("categorytabs_ids"); $arrIDs = explode(",", $strCatIDs); if (!empty($arrIDs)) { $categoryID = $arrIDs[0]; } } if (empty($categoryID) || is_numeric($categoryID) == false) { $categoryID = $this->getParam("category"); } } else { $categoryID = $this->getParam("category"); } } if (empty($categoryID)) { UniteFunctionsUG::throwError(__("No items category selected", UNITEGALLERY_TEXTDOMAIN)); } $items = new UniteGalleryItems(); $arrItems = $items->getCatItems($categoryID); } if (empty($arrItems)) { UniteFunctionsUG::throwError("No gallery items found", UNITEGALLERY_TEXTDOMAIN); } //set wrapper style //size validation $this->getParam("gallery_width", self::FORCE_SIZE); if ($this->isTilesType == false) { $this->getParam("gallery_height", self::VALIDATE_NUMERIC); } $fullWidth = $this->getParam("full_width", self::FORCE_BOOLEAN); if ($fullWidth == true) { $this->arrParams["gallery_width"] = "100%"; } $wrapperStyle = $this->getPositionString(); //set position $htmlTabs = ""; if ($enableCatTabs == true) { $htmlTabs = $this->getCategoryTabsHtml($this->galleryHtmlID, $objCategories); $this->arrParams["gallery_initial_catid"] = $categoryID; } //get output related variables $addStyles = $this->getAdditionalStyles(); $position = $this->getParam("position"); $isRtlWrapper = $position == "right"; if ($isRtlWrapper == true) { $rtlWrapperStyle = $wrapperStyle; if (!empty($rtlWrapperStyle)) { $rtlWrapperStyle = " style='{$rtlWrapperStyle}'"; } $wrapperStyle = ""; //move the wrapper style to rtl wrapper } if (!empty($wrapperStyle)) { $wrapperStyle = " style='{$wrapperStyle}'"; } global $uniteGalleryVersion; $output = "\n\t\t\t\t\t\n\n\t\t\t\t\t<!-- START UNITE GALLERY LITE {$uniteGalleryVersion} -->\n\t\t\t\t\t\n\t\t\t\t"; if (!empty($addStyles)) { $output = $this->putInlineStyle($addStyles, $output); } if ($this->putJsToBody == true) { $output .= $this->putJsIncludesToBody(); } if ($enableCatTabs == true) { $output .= $htmlTabs; } //add rtl prefix to get the gallery to right if needed if ($isRtlWrapper == true) { $output .= self::LINE_PREFIX1 . "<div class='ug-rtl'{$rtlWrapperStyle}>"; } $output .= self::LINE_PREFIX1 . "<div id='{$this->galleryHtmlID}' class='unite-gallery'{$wrapperStyle}>"; $output .= self::LINE_PREFIX2 . $this->putItems($arrItems); $output .= self::LINE_PREFIX1 . "</div>"; if ($isRtlWrapper == true) { $output .= self::LINE_PREFIX1 . "</div>"; } $output .= self::BR; $output = $this->putGalleryScripts($output); $output .= self::BR; $output .= self::LINE_PREFIX1 . "<!-- END UNITEGALLERY LITE-->"; $compressOutput = $this->getParam("compress_output", self::FORCE_BOOLEAN); if ($compressOutput == true) { $output = str_replace("\r", "", $output); $output = str_replace("\n", "", $output); $output = trim($output); } return $output; ?> <?php } catch (Exception $e) { $prefix = __("Unite Gallery Error", UNITEGALLERY_TEXTDOMAIN); $output = $this->getErrorMessage($e, $prefix); return $output; } }