Файл: oc-includes/osclass/helpers/hPreference.php
Строк: 1130
<?php
/*
* Copyright 2014 Osclass
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* Helper Preferences
* @package Osclass
* @subpackage Helpers
* @author Osclass
*/
/**
* Gets cookie's life
*
* @return int
*/
function osc_time_cookie() {
return ( 31536000 ); // one year in seconds
}
/**
* Gets if comments are enabled or not
*
* @return boolean
*/
function osc_comments_enabled() {
return (getBoolPreference('enabled_comments'));
}
/**
* Force uploaded images to be JPEG
*
* @return boolean
*/
function osc_force_jpeg() {
return (getBoolPreference('force_jpeg'));
}
/**
* Gets comments per page
*
* @return int
*/
function osc_comments_per_page() {
return (getPreference('comments_per_page'));
}
/**
* Gets auto update settings
*
* @return string
*/
function osc_auto_update() {
return (getPreference('auto_update'));
}
/**
* Gets number of days to warn about an ad being expired
*
* @return int
*/
function osc_warn_expiration() {
return (getPreference('warn_expiration'));
}
/**
* Gets comments per page
*
* @return int
*/
function osc_timezone() {
return (getPreference('timezone'));
}
/**
* Gets csrf session name
*
* @return int
*/
function osc_csrf_name() {
return (getPreference('csrf_name'));
}
/**
* Gets if only users can post comments
*
* @return boolean
*/
function osc_reg_user_post_comments() {
return (getBoolPreference('reg_user_post_comments'));
}
/**
* Gets if only users can contact to seller
*
* @return boolean
*/
function osc_reg_user_can_contact() {
return (getPreference('reg_user_can_contact'));
}
/**
* Gets list of blacklsited terms for usernames
*
* @return string
*/
function osc_username_blacklist() {
return (getPreference('username_blacklist'));
}
/**
* Gets if users are enabled or not
*
* @return boolean
*/
function osc_users_enabled() {
return (getBoolPreference('enabled_users'));
}
/**
* Gets if user registration is enabled
*
* @return boolean
*/
function osc_user_registration_enabled() {
return (getBoolPreference('enabled_user_registration'));
}
/**
* Gets is user validation is enabled or not
*
* @return boolean
*/
function osc_user_validation_enabled() {
return (getBoolPreference('enabled_user_validation'));
}
/**
* Gets if validation for logged users is required or not
*
* @return boolean
*/
function osc_logged_user_item_validation() {
return (getBoolPreference('logged_user_item_validation'));
}
/**
* Gets how many comments should be posted before auto-moderation
*
* @return int
*/
function osc_moderate_comments() {
return (getPreference('moderate_comments'));
}
/**
* Gets if notification of new comments is enabled or not to admin
*
* @return boolean
*/
function osc_notify_new_comment() {
return (getBoolPreference('notify_new_comment'));
}
/**
* Gets if notification of new comments is enabled or notto users
*
* @return boolean
*/
function osc_notify_new_comment_user() {
return (getBoolPreference('notify_new_comment_user'));
}
/**
* Gets if nice urls are enabled or not
*
* @return boolean
*/
function osc_rewrite_enabled() {
return (getBoolPreference('rewriteEnabled'));
}
/**
* Gets if mod rewrite is loaded or not (if apache runs on cgi mode, mod rewrite will not be detected)
*
* @return boolean
*/
function osc_mod_rewrite_loaded() {
return (getBoolPreference('mod_rewrite_loaded'));
}
/**
* Gets if original images should be kept
*
* @return boolean
*/
function osc_keep_original_image() {
return (getBoolPreference('keep_original_image'));
}
/**
* Force image aspect
*
* @return boolean
*/
function osc_force_aspect_image() {
return (getBoolPreference('force_aspect_image'));
}
/**
* Gets if autocron is enabled
*
* @return boolean
*/
function osc_auto_cron() {
return (getBoolPreference('auto_cron'));
}
/**
* Gets if recaptcha for items is enabled or not
*
* @return boolean
*/
function osc_recaptcha_items_enabled() {
return (getBoolPreference('enabled_recaptcha_items'));
}
/**
* Gets how many seconds should an user wait to post a second item (0 for no waiting)
*
* @return int
*/
function osc_items_wait_time() {
return (getPreference('items_wait_time'));
}
/**
* Gets how many items should be moderated to enable auto-moderation
*
* @return int
*/
function osc_moderate_items() {
return (getPreference('moderate_items'));
}
/**
* Gets if only registered users can publish new items or anyone could
*
* @return boolean
*/
function osc_reg_user_post() {
return (getBoolPreference('reg_user_post'));
}
/**
* Gets if the prices are o not enabled on the item's form
*
* @return boolean
*/
function osc_price_enabled_at_items() {
return (getBoolPreference('enableField#f_price@items'));
}
/**
* Gets if images are o not enabled in item's form
*
* @return boolean
*/
function osc_images_enabled_at_items() {
return (getBoolPreference('enableField#images@items'));
}
/**
* Gets how many images are allowed per item (o for unlimited)
*
* @return int
*/
function osc_max_images_per_item() {
return (getPreference('numImages@items'));
}
/**
* Gets how many characters are allowed for the listings title
*
* @return int
*/
function osc_max_characters_per_title() {
$value = getPreference('title_character_length');
return ( !empty($value) ? $value : 128);
}
/**
* Gets how many characters are allowed for the listings description
*
* @return int
*/
function osc_max_characters_per_description() {
$value = getPreference('description_character_length');
return ( !empty($value) ? $value : 4096);
}
/**
* Gets if notification are sent to admin when a send-a-friend message is sent
*
* @return boolean
*/
function osc_notify_contact_friends() {
return(getBoolPreference('notify_contact_friends'));
}
/**
* Gets if notification are sent to admin when a contact message is sent
*
* @return boolean
*/
function osc_notify_contact_item() {
return(getBoolPreference('notify_contact_item'));
}
/**
* Gets item attachment is enabled
*
* @return boolean
*/
function osc_item_attachment() {
return(getBoolPreference('item_attachment'));
}
/**
* Gets if contact attachment is enabled
*
* @return boolean
*/
function osc_contact_attachment() {
return(getBoolPreference('contact_attachment'));
}
/**
* Gets if notification are sent to admin with new item
*
* @return boolean
*/
function osc_notify_new_item() {
return(getBoolPreference('notify_new_item'));
}
/**
* Gets if notification are sent to admin with new user
*
* @return boolean
*/
function osc_notify_new_user() {
return(getBoolPreference('notify_new_user'));
}
/**
* Gets if the mailserver requires authetification
*
* @return boolean
*/
function osc_mailserver_auth() {
return(getBoolPreference('mailserver_auth'));
}
/**
* Gets if the mailserver requires authetification
*
* @return boolean
*/
function osc_mailserver_pop() {
return(getBoolPreference('mailserver_pop'));
}
//OTHER FUNCTIONS TO GET INFORMATION OF PREFERENCES
/**
* Gets the rewrite rules (generated via generate_rules.php at root folder)
*
* @return string
*/
function osc_rewrite_rules() {
return (getPreference('rewrite_rules'));
}
/**
* Gets max kb of uploads
*
* @return int
*/
function osc_max_size_kb() {
return (getPreference('maxSizeKb'));
}
/**
* Gets allowed extensions of uploads
*
* @return string
*/
function osc_allowed_extension() {
return (getPreference('allowedExt'));
}
/**
* Gets if use of imagick is enabled or not
*
* @return string
*/
function osc_use_imagick() {
return (getBoolPreference('use_imagick'));
}
/**
* Gets thumbnails' dimensions
*
* @return string
*/
function osc_thumbnail_dimensions() {
return (getPreference('dimThumbnail'));
}
/**
* Gets preview images' dimensions
*
* @return string
*/
function osc_preview_dimensions() {
return (getPreference('dimPreview'));
}
/**
* Gets normal size images' dimensions
*
* @return string
*/
function osc_normal_dimensions() {
return (getPreference('dimNormal'));
}
/**
* Gets when was the last version check
*
* @return string
*/
function osc_last_version_check() {
return (getPreference('last_version_check'));
}
/**
* Gets when was the last version check
*
* @return string
*/
function osc_themes_last_version_check() {
return (getPreference('themes_last_version_check'));
}
/**
* Gets when was the last version check
*
* @return string
*/
function osc_plugins_last_version_check() {
return (getPreference('plugins_last_version_check'));
}
/**
* Gets when was the last version check
*
* @return string
*/
function osc_languages_last_version_check() {
return (getPreference('languages_last_version_check'));
}
/**
* Gets json response when checking if there is available a new version
*
* @return string
*/
function osc_update_core_json() {
return (getPreference('update_core_json'));
}
/**
* Gets current version
*
* @return int
*/
function osc_version() {
return (getPreference('version'));
}
/**
* Gets website's title
*
* @return string
*/
function osc_page_title() {
return (getPreference('pageTitle'));
}
/**
* Gets website's default language
*
* @return string
*/
function osc_language() {
return(getPreference('language'));
}
/**
* Gets website's admin default language
*
* @return string
*/
function osc_admin_language() {
return(getPreference('admin_language'));
}
/**
* Gets current theme
*
* @return string
*/
function osc_theme() {
return(getPreference('theme'));
}
/**
* Gets current admin theme
*
* @return string
*/
function osc_admin_theme() {
return(getPreference('admin_theme'));
}
/**
* Gets website description
*
* @return string
*/
function osc_page_description() {
return(getPreference('pageDesc'));
}
/**
* Gets contact email
*
* @return string
*/
function osc_contact_email() {
return(getPreference('contactEmail'));
}
/**
* Gets date format
*
* @return string
*/
function osc_date_format() {
return(getPreference('dateFormat'));
}
/**
* Gets time format
*
* @return string
*/
function osc_time_format() {
return(getPreference('timeFormat'));
}
/**
* Gets week start day
*
* @return string
*/
function osc_week_starts_at() {
return(getPreference('weekStart'));
}
/**
* Gets number of items to display on RSS
*
* @return int
*/
function osc_num_rss_items() {
return(getPreference('num_rss_items'));
}
/**
* Gets default currency
*
* @return string
*/
function osc_currency() {
return(getPreference('currency'));
}
/**
* Gets akismet key
*
* @return string
*/
function osc_akismet_key() {
return(getPreference('akismetKey'));
}
/**
* Gets recaptcha private key
*
* @return string
*/
function osc_recaptcha_private_key() {
return(getPreference('recaptchaPrivKey'));
}
/**
* Gets Osclass' market URL
*
* @return string
*/
function osc_market_url($type = '', $code = '') {
$url = getPreference('marketURL');
switch ($type) {
case 'plugins':
case 'plugin':
$url .= 'section/plugins/';
if($code!='') {
$url .= 'code/'. $code;
}
break;
case 'themes':
case 'theme':
$url .= 'section/themes/';
if($code!='') {
$url .= 'code/'. $code;
}
break;
case 'languages':
case 'language':
$url .= 'section/languages/';
if($code!='') {
$url .= 'code/'. $code;
}
break;
case 'purchases':
case 'purchase':
$url .= 'section/purchases/';
break;
default:
break;
}
return $url;
}
/**
* Gets market connect api key
*
* @return string
*/
function osc_market_api_connect() {
return(getPreference('marketAPIConnect'));
}
/**
* Get Osclass' market url for count items in categories
*
* @return string
*/
function osc_market_count_url() {
$url = getPreference('marketURL');
return $url . 'count/';
}
/**
* Osclass' market url for get featured items in categories
*
* @return string
*/
function osc_market_featured_url($type, $num = '') {
$url = getPreference('marketURL');
$url .= 'featured/';
switch ($type) {
case 'plugins':
$url .= 'plugins/';
break;
case 'themes':
$url .= 'themes/';
break;
case 'languages':
$url .= 'languages/';
break;
default:
break;
}
if($num!='') {
$url .= 'num/'. $num;
}
return $url;
}
/**
* Gets if third party sources are allowed to install new plugins and themes
*
* @return int
*/
function osc_market_external_sources() {
return(getBoolPreference('marketAllowExternalSources'));
}
/**
* Market filters
*
* @return int
*/
function osc_market_categories() {
return(getPreference('marketCategories'));
}
/**
* Market data update
*
* @return int
*/
function osc_market_data_update() {
return(getPreference('marketDataUpdate'));
}
/**
* Gets recaptcha public key
*
* @return string
*/
function osc_recaptcha_public_key() {
return(getPreference('recaptchaPubKey'));
}
/**
* Gets mailserver's type
*
* @return string
*/
function osc_mailserver_type() {
return(getPreference('mailserver_type'));
}
/**
* Gets mailserver's host
*
* @return string
*/
function osc_mailserver_host() {
return(getPreference('mailserver_host'));
}
/**
* Gets mailserver's port
*
* @return int
*/
function osc_mailserver_port() {
return(getPreference('mailserver_port'));
}
/**
* Gets mail from
*
* @return string
*/
function osc_mailserver_mail_from() {
return(getPreference('mailserver_mail_from'));
}
/**
* Gets name from
*
* @return string
*/
function osc_mailserver_name_from() {
return(getPreference('mailserver_name_from'));
}
/**
* Gets mailserver's username
*
* @return string
*/
function osc_mailserver_username() {
return(getPreference('mailserver_username'));
}
/**
* Gets mailserver's password
*
* @return string
*/
function osc_mailserver_password() {
return(getPreference('mailserver_password'));
}
/**
* Gets if use SSL on the mailserver
*
* @return boolean
*/
function osc_mailserver_ssl() {
return(getPreference('mailserver_ssl'));
}
/**
* Gets list of active plugins
*
* @return string
*/
function osc_active_plugins() {
return(getPreference('active_plugins'));
}
/**
* Gets list of installed plugins
*
* @return string
*/
function osc_installed_plugins() {
return(getPreference('installed_plugins'));
}
/**
* Gets default order field at search
*
* @return string
*/
function osc_default_order_field_at_search() {
return(getPreference('defaultOrderField@search'));
}
/**
* Gets default order type at search
*
* @return string
*/
function osc_default_order_type_at_search() {
return(getPreference('defaultOrderType@search'));
}
/**
* Gets default show as at search
*
* @return string
*/
function osc_default_show_as_at_search() {
return(getPreference('defaultShowAs@search'));
}
/**
* Gets max results per page at search
*
* @return int
*/
function osc_max_results_per_page_at_search() {
return(getPreference('maxResultsPerPage@search'));
}
/**
* Gets default results per page at search
*
* @return int
*/
function osc_default_results_per_page_at_search() {
return(getPreference('defaultResultsPerPage@search'));
}
/**
* Gets max latest items
*
* @return int
*/
function osc_max_latest_items() {
return(getPreference('maxLatestItems@home'));
}
/**
* Gets if save searches is enabled or not
*
* @return boolean
*/
function osc_save_latest_searches() {
return(getBoolPreference('save_latest_searches'));
}
function osc_purge_latest_searches() {
return(getPreference('purge_latest_searches'));
}
/**
* Gets how many seconds between item post to not consider it SPAM
*
* @return int
*/
function osc_item_spam_delay() {
return 60; // need to be changed
}
/**
* Gets how many seconds between comment post to not consider it SPAM
*
* @return int
*/
function osc_comment_spam_delay() {
return 60; // need to be changed
}
/**
* Gets if parent categories are enabled or not
*
* @return boolean
*/
function osc_selectable_parent_categories() {
return(getPreference('selectable_parent_categories'));
}
/**
* Return max. number of latest items displayed at home index
*
* @return int
*/
function osc_max_latest_items_at_home() {
return(getPreference('maxLatestItems@home'));
}
/**
* generic function to retrieve preferences
*
* @param string $key
* @param string $section
* @return string
*/
function osc_get_preference($key, $section = 'osclass') {
return getPreference($key, $section);
}
/**
* generic function to insert/update preferences
*
* @param string $key
* @param mixed $value
* @param string $section
* @param string $type
* @return boolean
*/
function osc_set_preference($key, $value = '', $section = 'osclass', $type = 'STRING') {
return Preference::newInstance()->replace($key, $value, $section, $type);
}
/**
* generic function to delete preferences
*
* @param string $key
* @param string $section
* @return boolean
*/
function osc_delete_preference($key = '', $section = 'osclass') {
return Preference::newInstance()->delete(array('s_name' => $key, 's_section' => $section));
}
/**
* Reload preferences
*
* @return <array>
*/
function osc_reset_preferences() {
return Preference::newInstance()->toArray();
}
/**
* Return if need mark images with text
*
* @return boolean
*/
function osc_is_watermark_text() {
$text = getPreference('watermark_text');
if($text != ''){
return true;
} else {
return false;
}
}
/**
* Return if need mark images with image
*
* @return boolean
*/
function osc_is_watermark_image() {
$image = getPreference('watermark_image');
if($image != ''){
return true;
} else {
return false;
}
}
/**
* Return watermark text color
*
* @return string
*/
function osc_watermark_text_color() {
return getPreference('watermark_text_color');
}
/**
* Return watermark text
*
* @return string
*/
function osc_watermark_text() {
return getPreference('watermark_text');
}
/**
* Return watermark place
*
* @return string
*/
function osc_watermark_place() {
return getPreference('watermark_place');
}
/**
* Return subdomain type
*
* @return string
*/
function osc_subdomain_type() {
return getPreference('subdomain_type');
}
/**
* Return subdomain host
*
* @return string
*/
function osc_subdomain_host() {
return getPreference('subdomain_host');
}
//PRIVATE FUNCTION (if there was a class :P)
/**
* Gets preference
*
* @param string $key
* @return boolean
*/
function getBoolPreference($key) {
$_P = Preference::newInstance();
if($_P->get($key)) {
return true;
} else {
return false;
}
}
//PRIVATE FUNCTION FOR GETTING NO BOOLEAN INFORMATION (if there was a class :P)
/**
* Gets preference
*
* @param string $key
* @param string $section
* @return string
*/
function getPreference($key, $section = 'osclass') {
$_P = Preference::newInstance();
return($_P->get($key, $section));
}
?>