$meta->addOption('group', 'items', Everything::isPluginActive('woocommerce-brands') ? array('sku', 'categories', 'tags', 'brands') : array('sku', 'categories', 'tags'), '', '', array('options' => array('sku' => __('SKU', 'everything'), 'categories' => __('Categories', 'everything'), 'tags' => __('Tags', 'everything'), 'brands' => __('Brands', 'everything')), 'disabled' => Everything::isPluginActive('woocommerce-brands') ? array() : array('brands'), 'indent' => true, 'multiple' => true, 'sortable' => true, 'owner' => $visible)); $related_products = $woocommerce->addGroup('related_products', __('Related products', 'everything')); $related_products->addOption('number', 'total', 4, __('Products', 'everything'), '', array('min' => 0)); $related_products->addOption('number', 'columns', 4, __('Columns', 'everything'), '', array('min' => 1, 'max' => 8)); $cross_sells = $woocommerce->addGroup('cross_sells', __('Cross sells', 'everything')); $cross_sells->addOption('number', 'total', 4, __('Products', 'everything'), '', array('min' => 0)); $cross_sells->addOption('number', 'columns', 4, __('Columns', 'everything'), '', array('min' => 1, 'max' => 8)); $cart = $woocommerce->addGroup('cart', __('Cart icon', 'everything')); $cart->addOption('image_select', 'icon', 'cart-1', __('Image', 'everything'), '', array('options' => array_intersect_key(\Drone\Options\Option\ImageSelect::cssToOptions('data/img/icons/icons.css'), array_flip(array('cart-1', 'cart-2', 'cart-3', 'bag', 'bag-1', 'bag-2', 'bag-3', 'bag-4', 'basket'))), 'font_path' => Everything::ICON_FONT_PATH)); $cart->addOption('color', 'color', '', __('Color', 'everything'), '', array('required' => false, 'placeholder' => __('default', 'everything'))); $onsale = $woocommerce->addGroup('onsale', __('Sale label style', 'everything')); $custom = $onsale->addOption('boolean', 'custom', false, '', '', array('caption' => __('Custom', 'everything'))); $onsale->addOption('color', 'background', '#2d4b7e', __('Background', 'everything'), '', array('owner' => $custom, 'indent' => true)); $onsale->addOption('color', 'color', '#ffffff', __('Color', 'everything'), '', array('owner' => $custom, 'indent' => true)); $rating = $woocommerce->addGroup('rating', __('Ratings style', 'everything')); $rating->included = \Drone\Func::stringToBool(get_option('woocommerce_enable_review_rating')); $custom = $rating->addOption('boolean', 'custom', false, '', '', array('caption' => __('Custom', 'everything'))); $rating->addOption('color', 'color', '#ffba00', __('Color', 'everything'), '', array('owner' => $custom, 'indent' => true)); // ----------------------------------------------------------------------------- // Not found $not_found = $theme_options->addGroup('not_found', __('404 page', 'everything')); $default = sprintf("<h2>%s</h2>\n%s\n\n[search]", __('Are you lost?', 'everything'), sprintf(__('This is 404 page - it seems you\'ve encountered a dead link or missing page. You can use search form below to find what you\'re lookig for or go to a <a href="%s">homepage</a>.', 'everything'), esc_url(home_url('/')))); $not_found->addOption('editor', 'content', $default, __('Content', 'everything')); // ----------------------------------------------------------------------------- // Contact form $this->addThemeFeature('option-contact-form'); // ----------------------------------------------------------------------------- // Advanced $advanced = $theme_options->addGroup('advanced', __('Advanced', 'everything')); $this->addThemeFeature('option-custom-css'); $this->addThemeFeature('option-custom-js');
/** * Get image attributes * * @since 1.0 * * @param string $tag * @param array $atts * @param string $format * @return array */ public static function getImageAttrs($tag, $atts = array(), $format = 'array') { // Image settings $settings = Everything::to_('site/image/settings'); // Attributes extract(array_merge($defaults = array('border' => $settings->value('border'), 'hover' => $settings->value('hover') ? 'zoom' : '', 'fancybox' => $settings->value('fancybox')), $atts)); // Border $border = $border === 'inherit' ? $defaults['border'] : \Drone\Func::stringToBool($border); // Hover if ($hover === 'inherit' || !in_array($hover, array('', 'zoom', 'image', 'grayscale'), true)) { $hover = $defaults['hover']; } // Fancybox $fancybox = $fancybox === 'inherit' ? $defaults['fancybox'] : \Drone\Func::stringToBool($fancybox); // Properties $attrs = array('class' => array()); if ($border) { $attrs['class'][] = 'inset-border'; } if ($tag == 'a') { if ($hover) { $attrs['class'][] = $hover . '-hover'; } if ($fancybox) { $attrs['class'][] = 'fb'; } } $attrs['class'] = implode(' ', $attrs['class']); // Output switch ($format) { case 'html': return \Drone\Func::arraySerialize($attrs, 'html'); default: return $attrs; } }
protected function _sanitize($value) { $value = is_string($value) ? Func::stringToBool($value) : (bool) $value; if ($this->disabled) { return $this->default; } return $value; }