Exemple #1
0
 /**
  * Defines the Shopp pages used to create WordPress menus
  *
  * @since 1.3
  *
  * @return void
  **/
 private function __construct()
 {
     // Orders menu
     $this->add('orders', Shopp::__('All Orders'), 'ShoppAdminOrders');
     $this->add('customers', Shopp::__('Customers'), 'ShoppAdminCustomers');
     $this->add('reports', Shopp::__('Reports'), 'ShoppAdminReports');
     $this->add('settings', Shopp::__('Settings'), 'ShoppAdminSettings');
     // Settings pages
     $this->add('settings-core', Shopp::__('Setup'), 'ShoppAdminSettings', 'settings', 'shoppui-th-list');
     $this->add('settings-shipping', Shopp::__('Shipping Rates'), 'ShoppAdminSettings', 'settings', 'shoppui-map-marker');
     $this->add('settings-boxes', Shopp::__('Shipment Boxes'), 'ShoppAdminSettings', 'settings', 'shoppui-archive');
     $this->add('settings-downloads', Shopp::__('Downloads'), 'ShoppAdminSettings', 'settings', 'shoppui-download');
     $this->add('settings-orders', Shopp::__('Orders'), 'ShoppAdminSettings', 'settings', 'shoppui-flag');
     $this->add('settings-payments', Shopp::__('Payments'), 'ShoppAdminSettings', 'settings', 'shoppui-credit');
     $this->add('settings-taxes', Shopp::__('Taxes'), 'ShoppAdminSettings', 'settings', 'shoppui-money');
     $this->add('settings-presentation', Shopp::__('Presentation'), 'ShoppAdminSettings', 'settings', 'shoppui-th-large');
     $this->add('settings-pages', Shopp::__('Pages'), 'ShoppAdminSettings', 'settings', 'shoppui-file');
     $this->add('settings-images', Shopp::__('Images'), 'ShoppAdminSettings', 'settings', 'shoppui-picture');
     $this->add('settings-storage', Shopp::__('Storage'), 'ShoppAdminSettings', 'settings', 'shoppui-cloud');
     $this->add('settings-advanced', Shopp::__('Advanced'), 'ShoppAdminSettings', 'settings', 'shoppui-cog');
     if (ShoppErrorLogging()->size() > 0) {
         $this->add('settings-log', Shopp::__('Log'), 'ShoppAdminSettings', 'settings', 'shoppui-info-2');
     }
     // Catalog menu
     $this->add('products', Shopp::__('Products'), 'ShoppAdminProducts', 'products');
     $this->add('categories', Shopp::__('Categories'), 'ShoppAdminCategories', 'products');
     // Add Shopp taxonomies and custom Shopp taxonomies to menus
     $taxonomies = get_object_taxonomies(ShoppProduct::$posttype, 'object');
     foreach ($taxonomies as $t) {
         if ('shopp_category' == $t->name) {
             continue;
         }
         $pagehook = str_replace('shopp_', '', $t->name);
         $this->add($pagehook, $t->labels->menu_name, 'ShoppAdminCategories', 'products');
     }
     $this->add('discounts', Shopp::__('Discounts'), 'ShoppAdminDiscounts', 'products');
     // Adds extra screens
     $this->add('welcome', Shopp::__('Welcome'), 'ShoppAdminWelcome', 'welcome');
     $this->add('credits', Shopp::__('Credits'), 'ShoppAdminWelcome', 'credits');
     // Filter hook for adding/modifying Shopp page definitions
     $this->pages = apply_filters('shopp_admin_pages', $this->pages);
     $this->caps = apply_filters('shopp_admin_caps', $this->caps);
     reset($this->pages);
     $this->mainmenu = key($this->pages);
     add_action('admin_menu', array($this, 'taxonomies'), 100);
     shopp_enqueue_style('menus');
     // Set the currently requested page and menu
     $page = ShoppFlow()->request('page');
     if (self::posteditor()) {
         $page = 'shopp-products';
     }
     if (empty($page)) {
         return;
     }
     if (isset($this->pages[$page])) {
         $this->Page = $this->pages[$page];
     }
     if (isset($this->menus[$page])) {
         $this->menu = $this->menus[$page];
     }
 }
Exemple #2
0
 /**
  * Loads the Shopp admin CSS on the WordPress dashboard for widget styles
  *
  * @author Jonathan Davis
  * @since 1.0
  *
  * @return void
  **/
 public function styles()
 {
     shopp_enqueue_style('dashboard');
 }
Exemple #3
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 #4
0
 public function __construct()
 {
     parent::__construct();
     $uri = SHOPP_ADMIN_URI . '/styles';
     shopp_enqueue_style('welcome');
 }
Exemple #5
0
 /**
  * Dynamically includes necessary JavaScript and stylesheets for the admin
  *
  * @since 1.4
  *
  * @return void
  **/
 public function assets()
 {
     // Global scripts
     shopp_enqueue_script('shopp');
     // Global styles
     shopp_enqueue_style('colorbox');
     shopp_enqueue_style('admin');
     shopp_enqueue_style('icons');
     shopp_enqueue_style('selectize');
     if ('rtl' == get_bloginfo('text_direction')) {
         shopp_enqueue_style('admin-rtl');
     }
     // Screen assets (scripts & styles)
     $this->Screen->assets();
     do_action('shopp_' . $this->Screen->slug() . '_admin_scripts');
 }
Exemple #6
0
 /**
  * Queues the admin stylesheets
  *
  * @author Jonathan Davis
  * @since 1.1
  *
  * @return void
  **/
 public function styles()
 {
     global $taxonomy;
     if (isset($taxonomy)) {
         // Prevent loading styles if not on Shopp taxonomy editor
         $taxonomies = get_object_taxonomies(ShoppProduct::$posttype);
         if (!in_array($taxonomy, $taxonomies)) {
             return;
         }
     }
     shopp_enqueue_style('colorbox');
     shopp_enqueue_style('admin');
     shopp_enqueue_style('icons');
     if ('rtl' == get_bloginfo('text_direction')) {
         shopp_enqueue_style('admin-rtl');
     }
 }