Exemple #1
0
    public function heading()
    {
        $display_version = ShoppVersion::release();
        Shopp::_em('
# Welcome to Shopp %s

Thank you for using Shopp! E-commerce just got a little easier and more secure. Enjoy!', $display_version);
        ?>

		<div class="shopp-badge"><div class="logo">Shopp</div><span class="version"><?php 
        printf(__('Version %s'), $display_version);
        ?>
</span></div>

		<?php 
        $this->tabs(array('shopp-welcome' => __('What&#8217;s New'), 'shopp-credits' => __('Credits')));
        ?>

		<?php 
    }
Exemple #2
0
 public static function defaults(ShoppStyles $styles)
 {
     $script = basename(__FILE__);
     $schema = !empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) != 'off' ? 'https://' : 'http://';
     if (defined('SHOPP_PLUGINURI')) {
         $url = SHOPP_PLUGINURI . '/core';
     } else {
         $url = preg_replace("|{$script}.*|i", '', $schema . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
     }
     $styles->base_url = $url;
     // Short checksum for cache control that changes with Shopp versions while masking it somewhat
     $styles->default_version = hash('crc32b', ABSPATH . ShoppVersion::release());
     $styles->default_dirs = array('/ui/styles/');
     $styles->add('admin', '/ui/styles/admin.css');
     $styles->add('admin-rtl', '/ui/styles/rtl.css');
     $styles->add('catalog', '/ui/styles/catalog.css');
     $styles->add('colorbox', '/ui/styles/colorbox.css');
     $styles->add('dashboard', '/ui/styles/dashboard.css');
     $styles->add('icons', '/ui/styles/icons.css');
     $styles->add('menus', '/ui/styles/menu.css');
     $styles->add('welcome', '/ui/styles/welcome.css');
     // Fix icons
     $styles->add('selectize', '/ui/styles/selectize.css');
 }
function shopp_default_scripts(&$scripts)
{
    $script = basename(__FILE__);
    $schema = !empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) != 'off' ? 'https://' : 'http://';
    if (defined('SHOPP_PLUGINURI')) {
        $url = SHOPP_PLUGINURI . '/core';
    } else {
        $url = preg_replace("|{$script}.*|i", '', $schema . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
    }
    $scripts->base_url = $url;
    $scripts->default_version = mktime(false, false, false, 1, 1, 2010);
    $scripts->default_dirs = array('/ui/behaviors/', '/ui/products');
    // Short checksum for cache control that changes with Shopp versions while masking it somewhat
    $version = hash('crc32b', ABSPATH . ShoppVersion::release());
    $version = time();
    $scripts->add('shopp', '/ui/behaviors/shopp.js', array('jquery'), $version);
    $scripts->add_data('shopp', 'group', 1);
    $scripts->add('jquery-tmpl', '/ui/behaviors/jquery/jquery.tmpl.min.js', array('jquery'), $version);
    $scripts->add_data('jquery-tmpl', 'group', 1);
    $scripts->add('address', '/ui/behaviors/address.js', array('jquery', 'shopp'), $version);
    $scripts->add_data('address', 'group', 1);
    $scripts->add('cart', '/ui/behaviors/cart.js', array('jquery', 'shopp'), $version);
    $scripts->add_data('cart', 'group', 1);
    $scripts->add('catalog', '/ui/behaviors/catalog.js', array('jquery', 'shopp'), $version);
    $scripts->add_data('catalog', 'group', 1);
    $scripts->add('calendar', '/ui/behaviors/calendar.js', array('jquery', 'shopp'), $version);
    $scripts->add_data('calendar', 'group', 1);
    $scripts->add('daterange', '/ui/behaviors/daterange.js', array('jquery', 'shopp', 'calendar'), $version);
    $scripts->add_data('daterange', 'group', 1);
    $scripts->add('checkout', '/ui/behaviors/checkout.js', array('jquery', 'shopp'), $version);
    $scripts->add_data('checkout', 'group', 1);
    $scripts->add('colorbox', '/ui/behaviors/colorbox.min.js', array('jquery'), $version);
    $scripts->add_data('colorbox', 'group', 1);
    $scripts->add('ocupload', '/ui/behaviors/ocupload.js', array('jquery'), $version);
    $scripts->add_data('ocupload', 'group', 1);
    $scripts->add('orders', '/ui/behaviors/orders.js', array('jquery'), $version);
    $scripts->add_data('orders', 'group', 1);
    $scripts->add('scalecrop', '/ui/behaviors/scalecrop.js', array('jquery', 'jquery-ui-core', 'jquery-ui-draggable'), $version);
    $scripts->add_data('scalecrop', 'group', 1);
    $scripts->add('priceline', '/ui/behaviors/priceline.js', array('jquery', 'shopp'), $version);
    $scripts->add_data('priceline', 'group', 1);
    $scripts->add('editors', '/ui/behaviors/editors.js', array('jquery', 'jquery-ui-sortable'), $version);
    $scripts->add_data('editors', 'group', 1);
    $scripts->add('product-editor', '/ui/products/editor.js', array('jquery', 'priceline'), $version);
    $scripts->add_data('product-editor', 'group', 1);
    $scripts->add('category-editor', '/ui/categories/category.js', array('jquery', 'priceline'), $version);
    $scripts->add_data('category-editor', 'group', 1);
    $scripts->add('category-arrange', '/ui/categories/arrange.js', array('jquery', 'shopp'), $version);
    $scripts->add_data('category-arrange', 'group', 1);
    $scripts->add('products-arrange', '/ui/categories/products.js', array('jquery'), $version);
    $scripts->add_data('products-arrange', 'group', 1);
    $scripts->add('setup', '/ui/behaviors/setup.js', array('jquery'), $version);
    $scripts->add_data('setup', 'group', 1);
    $scripts->add('pageset', '/ui/behaviors/pageset.js', array('jquery'), $version);
    $scripts->add_data('pageset', 'group', 1);
    $scripts->add('payments', '/ui/behaviors/payments.js', array('jquery'), $version);
    $scripts->add_data('payments', 'group', 1);
    $scripts->add('storage', '/ui/behaviors/storage.js', array('jquery'), $version);
    $scripts->add_data('storage', 'group', 1);
    $scripts->add('shiprates', '/ui/behaviors/shiprates.js', array('jquery'), $version);
    $scripts->add_data('shiprates', 'group', 1);
    $scripts->add('taxrates', '/ui/behaviors/taxrates.js', array('jquery'), $version);
    $scripts->add_data('taxrates', 'group', 1);
    $scripts->add('imageset', '/ui/behaviors/imageset.js', array('jquery'), $version);
    $scripts->add_data('imageset', 'group', 1);
    $scripts->add('system', '/ui/behaviors/system.js', array('jquery'), $version);
    $scripts->add_data('system', 'group', 1);
    $scripts->add('spin', '/ui/behaviors/spin.js', array('jquery'), $version);
    $scripts->add_data('spin', 'group', 1);
    $scripts->add('suggest', '/ui/behaviors/suggest.js', array('jquery'), $version);
    $scripts->add_data('suggest', 'group', 1);
    $scripts->add('search-select', '/ui/behaviors/searchselect.js', array('jquery'), $version);
    $scripts->add_data('search-select', 'group', 1);
    $scripts->add('membership-editor', '/ui/memberships/editor.js', array('jquery', 'jquery-tmpl', 'search-select'), $version);
    $scripts->add_data('membership-editor', 'group', 1);
    $scripts->add('labelset', '/ui/behaviors/labelset.js', array('jquery', 'jquery-tmpl'), $version);
    $scripts->add_data('labelset', 'group', 1);
    $scripts->add('flot', '/ui/behaviors/flot/jquery.flot.min.js', array('jquery'), $version);
    $scripts->add_data('flot', 'group', 1);
    $scripts->add('flot-time', '/ui/behaviors/flot/jquery.flot.time.min.js', array('jquery'), $version);
    $scripts->add_data('flot-time', 'group', 1);
    $scripts->add('flot-grow', '/ui/behaviors/flot/jquery.flot.grow.min.js', array('flot'), $version);
    $scripts->add_data('flot-grow', 'group', 1);
    $scripts->add('jvectormap', '/ui/behaviors/jvectormap.min.js', array('jquery'), $version);
    $scripts->add_data('jvectormap', 'group', 1);
    $scripts->add('worldmap', '/ui/behaviors/worldmap.min.js', array('jvectormap'), $version);
    $scripts->add_data('worldmap', 'group', 1);
    $scripts->add('reports', '/ui/behaviors/reports.js', array(), $version);
    $scripts->add_data('reports', 'group', 1);
}
Exemple #4
0
 /**
  * Setup configurable constants
  *
  * @author Jonathan Davis
  * @since 1.3
  *
  * @return void
  **/
 public function constants()
 {
     if (!defined('SHOPP_VERSION')) {
         define('SHOPP_VERSION', ShoppVersion::release());
     }
     if (!defined('SHOPP_GATEWAY_USERAGENT')) {
         define('SHOPP_GATEWAY_USERAGENT', ShoppVersion::agent());
     }
     // @deprecated
     if (!defined('SHOPP_HOME')) {
         define('SHOPP_HOME', ShoppSupport::HOMEPAGE);
     }
     if (!defined('SHOPP_CUSTOMERS')) {
         define('SHOPP_CUSTOMERS', ShoppSupport::FORUMS);
     }
     if (!defined('SHOPP_DOCS')) {
         define('SHOPP_DOCS', ShoppSupport::DOCS);
     }
     // Helper for line break output
     if (!defined('BR')) {
         define('BR', '<br />');
     }
     // Overrideable config macros
     if (!defined('SHOPP_NOSSL')) {
         define('SHOPP_NOSSL', false);
     }
     // Require SSL to protect transactions, overrideable for development
     if (!defined('SHOPP_PREPAYMENT_DOWNLOADS')) {
         define('SHOPP_PREPAYMENT_DOWNLOADS', false);
     }
     // Require payment capture granting access to downloads
     if (!defined('SHOPP_SESSION_TIMEOUT')) {
         define('SHOPP_SESSION_TIMEOUT', 172800);
     }
     // Sessions live for 2 days
     if (!defined('SHOPP_CART_EXPIRES')) {
         define('SHOPP_CART_EXPIRES', 1209600);
     }
     // Carts are stashed for up to 2 weeks
     if (!defined('SHOPP_QUERY_DEBUG')) {
         define('SHOPP_QUERY_DEBUG', false);
     }
     // Debugging queries is disabled by default
     if (!defined('SHOPP_GATEWAY_TIMEOUT')) {
         define('SHOPP_GATEWAY_TIMEOUT', 10);
     }
     // Gateway connections timeout after 10 seconds
     if (!defined('SHOPP_SHIPPING_TIMEOUT')) {
         define('SHOPP_SHIPPING_TIMEOUT', 10);
     }
     // Shipping provider connections timeout after 10 seconds
     if (!defined('SHOPP_SUBMIT_TIMEOUT')) {
         define('SHOPP_SUBMIT_TIMEOUT', 20);
     }
     // Order submission timeout
     if (!defined('SHOPP_TEMP_PATH')) {
         define('SHOPP_TEMP_PATH', sys_get_temp_dir());
     }
     // Use the system defined temporary directory
     if (!defined('SHOPP_ADDONS')) {
         define('SHOPP_ADDONS', WP_CONTENT_DIR . '/shopp-addons');
     }
     // A configurable directory to keep Shopp addons
     if (!defined('SHOPP_NAMESPACE_TAXONOMIES')) {
         define('SHOPP_NAMESPACE_TAXONOMIES', true);
     }
     // Add taxonomy namespacing for permalinks /shop/category/category-name, /shopp/tag/tag-name
 }
Exemple #5
0
 /**
  * Queues Shopp storefront javascript and styles as needed
  *
  * @author Jonathan Davis
  * @since 1.1
  *
  * @return void
  **/
 public function behaviors()
 {
     $Shopp = Shopp::object();
     if (is_ssl()) {
         $urls = array('option_siteurl', 'option_home', 'option_url', 'option_wpurl', 'option_stylesheet_url', 'option_template_url', 'script_loader_src');
         foreach ($urls as $filter) {
             add_filter($filter, 'force_ssl');
         }
     }
     // Replace the WordPress canonical link
     remove_action('wp_head', 'rel_canonical');
     add_action('wp_head', array($this, 'header'));
     add_action('wp_footer', array($this, 'footer'));
     shopp_enqueue_style('catalog');
     shopp_enqueue_style('icons');
     shopp_enqueue_style('colorbox');
     shopp_enqueue_style('shopp', Shopp::template_url('shopp.css'), array('catalog'), hash('crc32b', ABSPATH . ShoppVersion::release()), 'all');
     $orderhistory = is_account_page() && isset($_GET['id']) && !empty($_GET['id']);
     if (is_thanks_page() || $orderhistory) {
         wp_enqueue_style('shopp.printable', SHOPP_ADMIN_URI . '/styles/printable.css', array(), 20110511, 'print');
     }
     $loading = shopp_setting('script_loading');
     if (!$loading || 'global' == $loading || !empty($page)) {
         shopp_enqueue_script('colorbox');
         shopp_enqueue_script('shopp');
         shopp_enqueue_script('catalog');
         shopp_enqueue_script('cart');
         if (is_catalog_page()) {
             shopp_custom_script('catalog', "var pricetags = {};\n");
         }
     }
     if (is_checkout_page()) {
         shopp_enqueue_script('address');
         shopp_enqueue_script('checkout');
     }
     if (is_confirm_page()) {
         shopp_enqueue_script('checkout');
     }
     if (is_account_page()) {
         shopp_enqueue_script('address');
         $regions = Lookup::country_zones();
         $js = 'var regions=' . json_encode($regions);
         add_storefrontjs($js, true);
     }
 }
Exemple #6
0
 public function output()
 {
     if (!$this->data) {
         $this->query();
     }
     if (!$this->data) {
         Shopp::redirect(add_query_arg(array_merge($_GET, array('src' => null)), admin_url('admin.php')));
     }
     header("Content-type: {$this->content_type}; charset=UTF-8");
     header("Content-Disposition: attachment; filename=\"{$this->sitename} Purchase Log.{$this->extension}\"");
     header("Content-Description: Delivered by " . ShoppVersion::agent());
     header("Cache-Control: maxage=1");
     header("Pragma: public");
     $this->begin();
     if ($this->headings) {
         $this->heading();
     }
     $this->records();
     $this->end();
 }
Exemple #7
0
 /**
  * Determines if the module is a valid and compatible Shopp module
  *
  * @author Jonathan Davis
  * @since 1.1
  *
  * @return boolean True if the addon validates, false otherwise
  **/
 public function valid()
 {
     $error = false;
     if (false === strpos(strtolower($this->package), 'shopp') || empty($this->classname) || empty($this->interface)) {
         $error = true;
     } elseif (empty($this->version)) {
         $error = shopp_debug(sprintf('%s could not be loaded because no @version property was set in the addon header comments.', $this->filename));
     } elseif (empty($this->since)) {
         $error = shopp_debug(sprintf('%s could not be loaded because no @since property was set in the addon header comments.', $this->filename));
     } elseif (class_exists('ShoppVersion')) {
         if (version_compare(self::baseversion(ShoppVersion::release()), self::baseversion($this->since)) == -1) {
             $error = shopp_debug(sprintf('%s could not be loaded because it requires version %s (or higher) of Shopp.', $this->name, $this->since));
         }
     }
     if ($error) {
         return false;
     }
     return true;
 }
Exemple #8
0
 public function download($dkey = false)
 {
     $found = $this->found();
     if (!$found) {
         return shopp_add_error(Shopp::__('Download failed. &quot;%s&quot; could not be found.', $this->name), 'false');
     }
     add_action('shopp_download_success', array($this, 'downloaded'));
     // send immediately if the storage engine is redirecting
     if (isset($found['redirect'])) {
         $this->send();
         exit;
     }
     // Close the session in case of long download
     @session_write_close();
     // Don't want interference from the server
     if (function_exists('apache_setenv')) {
         @apache_setenv('no-gzip', 1);
     }
     @ini_set('zlib.output_compression', 0);
     set_time_limit(0);
     // Don't timeout on long downloads
     // Use HTTP/1.0 Expires to support bad browsers (trivia: timestamp used is the Shopp 1.0 release date)
     header('Expires: ' . date('D, d M Y H:i:s O', 1230648947));
     header('Cache-Control: maxage=0, no-cache, must-revalidate');
     header('Content-type: application/octet-stream');
     header("Content-Transfer-Encoding: binary");
     header('Content-Disposition: attachment; filename="' . $this->name . '"');
     header('Content-Description: Delivered by ' . ShoppVersion::agent());
     ignore_user_abort(true);
     if (ob_get_length() !== false) {
         while (@ob_end_flush()) {
         }
     }
     // Clear all open output buffers
     $this->send();
     // Send the file data using the storage engine
     flush();
     // Flush output to browser (to poll for connection)
     if (connection_aborted()) {
         return shopp_add_error(Shopp::__('Connection broken. Download attempt failed.'), SHOPP_COMM_ERR);
     }
     return true;
 }
 /**
  * Loads the Shopp admin CSS on the WordPress dashboard for widget styles
  *
  * @author Jonathan Davis
  * @since 1.0
  *
  * @return void
  **/
 public static function styles()
 {
     wp_enqueue_style('shopp.dashboard', SHOPP_ADMIN_URI . '/styles/dashboard.css', array(), ShoppVersion::cache(), 'screen');
 }
Exemple #10
0
 public static function cacheversion()
 {
     return hash('crc32b', ABSPATH . ShoppVersion::release());
 }
Exemple #11
0
 /**
  * Provides a salted checksum of the current release
  *
  * This is used primarily for front-end browser cache control for assets (JS, CSS)
  *
  * @author Jonathan Davis
  * @since 1.3
  *
  * @return string A short hex string representing the current cache version
  **/
 public static function cache()
 {
     return hash('crc32b', __FILE__ . ShoppVersion::release());
 }
Exemple #12
0
 /**
  * Detect if a database schema upgrade is required
  *
  * @author Jonathan Davis
  * @since 1.3
  *
  * @return boolean
  **/
 public static function upgradedb()
 {
     return !ShoppSettings()->available() || ShoppSettings()->dbversion() != ShoppVersion::db();
 }
 /**
  * Check if Shopp is installed and active.
  * If it is and the version is compatible, load our Shopp connector.
  */
 protected function shopp()
 {
     // Check if the legacy plugin exists
     if (class_exists('Tribe__Events__Tickets__Shopp__Main')) {
         $args = array('action' => 'deactivate', 'plugin' => $this->get_plugin_file('The Events Calendar: Shopp Tickets'), 'plugin_status' => 'all', 'paged' => 1, 's' => '');
         $deactivate_url = wp_nonce_url(add_query_arg($args, 'plugins.php'), 'deactivate-plugin_' . $args['plugin']);
         $this->nag_data['shopp'] = array(__('Shopp', 'event-tickets-plus'), $deactivate_url, 'legacy-plugin');
         return;
     }
     $shoppVersion = false;
     if (class_exists('ShoppVersion')) {
         $shoppVersion = ShoppVersion::release();
     } elseif (defined('SHOPP_VERSION')) {
         $shoppVersion = SHOPP_VERSION;
     }
     // Pre-1.3
     if (empty($shoppVersion)) {
         return;
     }
     // Here we will check for Comptibility problems
     if (!version_compare($shoppVersion, Tribe__Tickets_Plus__Commerce__Shopp__Main::REQUIRED_SHOPP_VERSION, '>=')) {
         $this->nag_data['shopp'] = array(__('Shopp', 'event-tickets-plus'), add_query_arg(array('tab' => 'plugin-information', 'plugin' => 'shopp', 'TB_iframe' => 'true'), admin_url('plugin-install.php')), 'incompatible');
         return;
     }
     Tribe__Tickets_Plus__Commerce__Shopp__Main::get_instance();
 }
Exemple #14
0
 public static function earlyupdates()
 {
     $updates = shopp_setting('updates');
     $core = isset($updates->response[SHOPP_PLUGINFILE]) ? $updates->response[SHOPP_PLUGINFILE] : false;
     $addons = isset($updates->response[SHOPP_PLUGINFILE . '/addons']) ? $updates->response[SHOPP_PLUGINFILE . '/addons'] : false;
     if (!$core && !$addons) {
         return false;
     }
     $plugin_name = 'Shopp';
     $plugin_slug = strtolower($plugin_name);
     $store_url = ShoppSupport::STORE;
     $account_url = "{$store_url}/account/";
     $updates = array();
     if (!empty($core) && isset($core->new_version) && version_compare($core->new_version, ShoppVersion::release(), '>')) {
         $details_url = admin_url('plugin-install.php?tab=plugin-information&plugin=' . $plugin_slug . '&core=' . $core->new_version . '&TB_iframe=true&width=600&height=800');
         $updates[] = Shopp::_mi('%2$s Shopp %1$s is available %3$s from shopplugin.com now.', $core->new_version, '<a href="' . $details_url . '" class="thickbox" title="' . esc_attr($plugin_name) . '">', '</a>');
     }
     if (!empty($addons)) {
         // Addon update messages
         $addonupdates = array();
         foreach ((array) $addons as $addon) {
             $addonupdates[] = $addon->name . ' ' . $addon->new_version;
         }
         if (count($addons) > 1) {
             $last = array_pop($addonupdates);
             $updates[] = Shopp::_mi('Add-on updates are available for %s &amp; %s.', join(', ', $addonupdates), $last);
         } elseif (count($addons) == 1) {
             $updates[] = Shopp::_mi('An add-on update is available for %s.', $addonupdates[0]);
         }
     }
     if (is_network_admin() || !is_multisite()) {
         $wp_list_table = _get_list_table('WP_Plugins_List_Table');
         echo '<tr class="plugin-update-tr"><th colspan="' . $wp_list_table->get_column_count() . '" class="plugin-update colspanchange"><div class="update-message">';
         Shopp::_emi('You&apos;re missing out on important updates! %1$s &nbsp; %2$s Buy a Shopp Support Key! %3$s', empty($updates) ? '' : join(' ', $updates), '<a href="' . ShoppSupport::STORE . '" class="button button-primary">', '</a>');
         echo '<style type="text/css">#shopp th,#shopp td{border-bottom:0;}</style>';
         echo '</div></td></tr>';
     }
     return true;
 }
Exemple #15
0
 /**
  * Displays the database update screen
  *
  * @since 1.3
  *
  * @return boolean
  **/
 public static function updatedb()
 {
     $uri = SHOPP_ADMIN_URI . '/styles';
     wp_enqueue_style('shopp.welcome', "{$uri}/welcome.css", array(), ShoppVersion::cache(), 'screen');
     include SHOPP_ADMIN_PATH . '/help/update.php';
 }
Exemple #16
0
 /**
  * Generates the output for the exported report
  *
  * @author Jonathan Davis
  * @since 1.3
  *
  * @return void
  **/
 public function output()
 {
     if (empty($this->data)) {
         Shopp::redirect(add_query_arg(array_merge($_GET, array('src' => null)), admin_url('admin.php')));
     }
     $sitename = get_bloginfo('name');
     $report = $this->options['report'];
     $reports = ShoppAdminReport::reports();
     $name = $reports[$report]['name'];
     header("Content-type: {$this->content_type}");
     header("Content-Disposition: attachment; filename=\"{$sitename} {$name}.{$this->extension}\"");
     header("Content-Description: Delivered by " . ShoppVersion::agent());
     header("Cache-Control: maxage=1");
     header("Pragma: public");
     $this->begin();
     if ($this->headings) {
         $this->heading();
     }
     $this->records();
     $this->end();
 }
 public function output()
 {
     if (!$this->data) {
         $this->query();
     }
     if (!$this->data) {
         return false;
     }
     header("Content-type: {$this->content_type}; charset=UTF-8");
     header("Content-Disposition: attachment; filename=\"{$this->sitename} Customer Export.{$this->extension}\"");
     header("Content-Description: Delivered by " . ShoppVersion::agent());
     header("Cache-Control: maxage=1");
     header("Pragma: public");
     $this->begin();
     if ($this->headings) {
         $this->heading();
     }
     $this->records();
     $this->end();
 }
Exemple #18
0
 /**
  * Initializes default settings or resets missing settings
  *
  * @author Jonathan Davis
  * @since 1.1
  *
  * @return void
  **/
 public function setup()
 {
     $Settings = ShoppSettings();
     $Settings->setup('show_welcome', 'on');
     $Settings->setup('display_welcome', 'on');
     // General Settings
     $Settings->setup('shipping', 'on');
     $Settings->setup('order_status', array(__('Pending', 'Shopp'), __('Completed', 'Shopp')));
     $Settings->setup('shopp_setup', 'completed');
     $Settings->setup('maintenance', 'off');
     $Settings->setup('dashboard', 'on');
     // Preferences
     $Settings->setup('order_confirmation', '');
     $Settings->setup('receipt_copy', '1');
     $Settings->setup('account_system', 'none');
     $Settings->setup('shopping_cart', 'on');
     $Settings->setup('cancel_reasons', array(__('Not as described or expected', 'Shopp'), __('Wrong size', 'Shopp'), __('Found better prices elsewhere', 'Shopp'), __('Product is missing parts', 'Shopp'), __('Product is defective or damaged', 'Shopp'), __('Took too long to deliver', 'Shopp'), __('Item out of stock', 'Shopp'), __('Customer request to cancel', 'Shopp'), __('Item discontinued', 'Shopp'), __('Other reason', 'Shopp')));
     // Shipping
     $Settings->setup('active_shipping', '');
     $Settings->setup('shipping', '');
     $Settings->setup('inventory', '');
     $Settings->setup('shipping_packaging', 'like');
     $Settings->setup('shipping_package_weight_limit', '-1');
     // Taxes
     $Settings->setup('tax_inclusive', '');
     $Settings->setup('taxes', '');
     $Settings->setup('taxrates', '');
     $Settings->setup('tax_shipping', '');
     // Presentation Settings
     $Settings->setup('theme_templates', 'off');
     $Settings->setup('row_products', '3');
     $Settings->setup('catalog_pagination', '24');
     $Settings->setup('default_product_order', 'title');
     $Settings->setup('product_image_order', 'ASC');
     $Settings->setup('product_image_orderby', 'sortorder');
     // System Settings
     $Settings->setup('uploader_pref', 'flash');
     $Settings->setup('script_loading', 'global');
     $Settings->setup('script_server', 'plugin');
     // Pre-inits
     $Settings->setup('active_catalog_promos', '');
     $Settings->setup('version', ShoppVersion::release());
     $this->images();
     // Setup default image settings
 }
Exemple #19
0
    ?>
		<?php 
    if (isset($_GET['_shopp_upgrade_notice'])) {
        ?>
			<?php 
        check_admin_referer('shopp_upgrade_notice');
        $blogname = wp_specialchars_decode(get_option('blogname'), ENT_QUOTES);
        $homeurl = wp_specialchars_decode(get_option('home'), ENT_QUOTES);
        $admin = get_bloginfo('admin_email');
        $site = parse_url($homeurl);
        $_ = array();
        $_[] = 'From: "' . $blogname . '" <' . shopp_setting('merchant_email') . '>';
        $_[] = 'To: ' . $admin;
        $_[] = sprintf('Subject: Shopp Upgraded on %s', $site['host']);
        $_[] = '';
        $_[] = sprintf(__('The Shopp installation on %1$s has been upgraded to %2$s and requires a database upgrade. Please login to %1$s and perform the upgrade by deactivating and reactivating the Shopp plugin.', 'Shopp'), $homeurl, ShoppVersion::release());
        $message = apply_filters('shopp_upgrade_notice_message', join("\n", $_));
        if (Shopp::email($message)) {
            shopp_debug('A Shopp upgrade notification was sent.');
        }
        Shopp::_em('### Upgrade Notice Sent

An upgrade notice has been sent to the site administrator.');
        ?>
		<?php 
    } else {
        ?>

			<div class="error"><?php 
        Shopp::_em('### Contact Your Site Administrator