first commit

This commit is contained in:
2023-11-23 22:14:40 +01:00
commit 6c5e83d1b2
2779 changed files with 640726 additions and 0 deletions

View File

@@ -0,0 +1,701 @@
<?php
/*
Class: CallaElatedFramework
A class that initializes Elated Framework
*/
class CallaElatedFramework {
private static $instance;
public $eltdOptions;
public $eltdMetaBoxes;
public $eltdTaxonomyOptions;
public $eltdUserOptions;
private $skin;
private function __construct() {
$this->eltdOptions = CallaElatedOptions::get_instance();
$this->eltdMetaBoxes = CallaElatedMetaBoxes::get_instance();
$this->eltdTaxonomyOptions = CallaElatedTaxonomyOptions::get_instance();
$this->eltdUserOptions = CallaElatedUserOptions::get_instance();
$this->eltdDashboardOptions = CallaElatedDashboardOptions::get_instance();
}
public static function get_instance() {
if ( null == self::$instance ) {
self::$instance = new self;
}
return self::$instance;
}
public function getSkin() {
return $this->skin;
}
public function setSkin( CallaElatedSkinAbstract $skinObject ) {
$this->skin = $skinObject;
}
}
/**
* Class CallaElatedSkinManager
*
* Class that used like a factory for skins.
* It loads required skin file and instantiates skin class
*/
class CallaElatedSkinManager {
/**
* @var this will be an instance of skin
*/
private $skin;
/**
* @see CallaElatedSkinManager::setSkin()
*/
public function __construct() {
$this->setSkin();
}
/**
* Loads wanted skin, instantiates skin class and stores it in $skin attribute
*
* @param string $skinName skin to load. Must match skin folder name
*/
private function setSkin( $skinName = ELATED_PROFILE_SLUG ) {
if ( $skinName !== '' ) {
if ( file_exists( get_template_directory() . '/framework/admin/skins/' . $skinName . '/skin.php' ) ) {
require_once get_template_directory() . '/framework/admin/skins/' . $skinName . '/skin.php';
$skinName = ucfirst( $skinName ) . esc_html__( 'Skin', 'calla' );
$this->skin = new $skinName();
}
} else {
$this->skin = false;
}
}
/**
* Returns current skin object. It $skin attribute isn't set it calls setSkin method
*
* @return mixed
*
* @see CallaElatedSkinManager::setSkin()
*/
public function getSkin() {
if ( empty( $this->skin ) ) {
$this->setSkin();
}
return $this->skin;
}
}
/**
* Class CallaElatedSkinAbstract
*
* Abstract class that each skin class must extend
*/
abstract class CallaElatedSkinAbstract {
/**
* @var string
*/
protected $skinName;
/**
* @var array of styles that skin will be including
*/
protected $styles;
/**
* @var array of scripts that skin will be including
*/
protected $scripts;
/**
* @var array of icons names for each menu item that theme is adding
*/
protected $icons;
/**
* @var array of menu items positions of each menu item that theme is adding
*/
protected $itemPosition;
/**
* Returns skin name attribute whenever skin is used in concatenation
* @return mixed
*/
public function __toString() {
return $this->skinName;
}
/**
* @return mixed
*/
public function getSkinName() {
return $this->skinName;
}
/**
* Loads template part with params. Uses locate_template function which is child theme friendly
*
* @param $template string template to load
* @param array $params parameters to pass to template
*/
public function loadTemplatePart( $template, $params = array() ) {
if ( is_array( $params ) && count( $params ) ) {
extract( $params );
}
if ( $template !== '' ) {
include( calla_elated_find_template_path( 'framework/admin/skins/' . $this->skinName . '/templates/' . $template . '.php' ) );
}
}
/**
* Goes through each added scripts and enqueus it
*/
public function enqueueScripts() {
if ( is_array( $this->scripts ) && count( $this->scripts ) ) {
foreach ( $this->scripts as $scriptHandle => $scriptPath ) {
wp_enqueue_script( $scriptHandle );
}
}
}
/**
* Goes through each added styles and enqueus it
*/
public function enqueueStyles() {
if ( is_array( $this->styles ) && count( $this->styles ) ) {
foreach ( $this->styles as $styleHandle => $stylePath ) {
wp_enqueue_style( $styleHandle );
}
}
}
/**
* Echoes script tag that generates global variable that will be used in TinyMCE
*/
public function setShortcodeJSParams() { ?>
<script>
window.eltdSCIcon = '<?php echo calla_elated_get_skin_uri() . '/assets/img/admin-logo-icon.png'; ?>';
window.eltdSCLabel = '<?php echo esc_html( ucfirst( $this->skinName ) ); ?> <?php esc_html_e( 'Shortcodes', 'calla' ) ?>';
</script>
<?php }
/**
* Formates skin name so it can be used in concatenation
* @return string
*/
public function getSkinLabel() {
return ucfirst( $this->skinName );
}
/**
* Returns URI to skin folder
* @return string
*/
public function getSkinURI() {
return get_template_directory_uri() . '/framework/admin/skins/' . $this->skinName;
}
/**
* Here options page content will be generated
* @return mixed
*/
public abstract function renderOptions();
/**
* Here backup options page will be generated
* @return mixed
*/
public abstract function renderBackupOptions();
/**
* Here import page will be generated
* @return mixed
*/
public abstract function renderImport();
/**
* Here all scripts will be registered
* @return mixed
*/
public abstract function registerScripts();
/**
* Here all styles will be registered
* @return mixed
*/
public abstract function registerStyles();
}
/*
Class: CallaElatedOptions
A class that initializes Elated Options
*/
class CallaElatedOptions {
private static $instance;
public $adminPages;
public $options;
public $optionsByType;
private function __construct() {
$this->adminPages = array();
$this->options = array();
$this->optionsByType = array();
}
public static function get_instance() {
if ( null == self::$instance ) {
self::$instance = new self;
}
return self::$instance;
}
public function addAdminPage( $key, $page ) {
$this->adminPages[ $key ] = $page;
}
public function getAdminPage( $key ) {
return $this->adminPages[ $key ];
}
public function adminPageExists( $key ) {
return array_key_exists( $key, $this->adminPages );
}
public function getAdminPageFromSlug( $slug ) {
foreach ( $this->adminPages as $key => $page ) {
if ( $page->slug == $slug ) {
return $page;
}
}
return;
}
public function addOption( $key, $value, $type = '' ) {
$this->options[ $key ] = $value;
$this->addOptionByType( $type, $key );
}
public function getOption( $key ) {
if ( isset( $this->options[ $key ] ) ) {
return $this->options[ $key ];
}
return;
}
public function addOptionByType( $type, $key ) {
$this->optionsByType[ $type ][] = $key;
}
public function getOptionsByType( $type ) {
if ( array_key_exists( $type, $this->optionsByType ) ) {
return $this->optionsByType[ $type ];
}
return false;
}
public function getOptionValue( $key ) {
global $calla_elated_options;
if ( array_key_exists( $key, $calla_elated_options ) ) {
return $calla_elated_options[ $key ];
} elseif ( array_key_exists( $key, $this->options ) ) {
return $this->getOption( $key );
}
return false;
}
}
/*
Class: CallaElatedAdminPage
A class that initializes Elated Admin Page
*/
class CallaElatedAdminPage implements iCallaElatedLayoutNode {
public $layout;
private $factory;
public $slug;
public $title;
public $icon;
function __construct( $slug = "", $title_label = "", $icon = "" ) {
$this->layout = array();
$this->factory = new CallaElatedFieldFactory();
$this->slug = $slug;
$this->title = $title_label;
$this->icon = $icon;
}
public function hasChidren() {
return ( count( $this->layout ) > 0 ) ? true : false;
}
public function getChild( $key ) {
return $this->layout[ $key ];
}
public function addChild( $key, $value ) {
$this->layout[ $key ] = $value;
}
function render() {
foreach ( $this->layout as $child ) {
$this->renderChild( $child );
}
}
public function renderChild( iCallaElatedRender $child ) {
$child->render( $this->factory );
}
}
/*
Class: CallaElatedMetaBoxes
A class that initializes Elated Meta Boxes
*/
class CallaElatedMetaBoxes {
private static $instance;
public $metaBoxes;
public $options;
public $optionsByType;
private function __construct() {
$this->metaBoxes = array();
$this->options = array();
$this->optionsByType = array();
}
public static function get_instance() {
if ( null == self::$instance ) {
self::$instance = new self;
}
return self::$instance;
}
public function addMetaBox( $key, $box ) {
$this->metaBoxes[ $key ] = $box;
}
public function getMetaBox( $key ) {
return $this->metaBoxes[ $key ];
}
public function addOption( $key, $value, $type = '' ) {
$this->options[ $key ] = $value;
$this->addOptionByType($type, $key);
}
public function getOption( $key ) {
if ( isset( $this->options[ $key ] ) ) {
return $this->options[ $key ];
}
return;
}
public function addOptionByType($type, $key) {
$this->optionsByType[$type][] = $key;
}
public function getOptionsByType($type) {
if(array_key_exists($type, $this->optionsByType)) {
return $this->optionsByType[$type];
}
return array();
}
public function getMetaBoxesByScope( $scope ) {
$boxes = array();
if ( is_array( $this->metaBoxes ) && count( $this->metaBoxes ) ) {
foreach ( $this->metaBoxes as $metabox ) {
if ( is_array( $metabox->scope ) && in_array( $scope, $metabox->scope ) ) {
$boxes[] = $metabox;
} elseif ( $metabox->scope !== '' && $metabox->scope === $scope ) {
$boxes[] = $metabox;
}
}
}
return $boxes;
}
}
/*
Class: CallaElatedMetaBox
A class that initializes Elated Meta Box
*/
class CallaElatedMetaBox implements iCallaElatedLayoutNode {
public $layout;
private $factory;
public $scope;
public $title;
public $hidden_property;
public $hidden_values = array();
public $name;
function __construct( $scope = "", $title_label = "", $hidden_property = "", $hidden_values = array(), $name = '' ) {
$this->layout = array();
$this->factory = new CallaElatedFieldFactory();
$this->scope = $scope;
$this->title = $this->setTitle( $title_label );
$this->hidden_property = $hidden_property;
$this->hidden_values = $hidden_values;
$this->name = $name;
}
public function hasChidren() {
return ( count( $this->layout ) > 0 ) ? true : false;
}
public function getChild( $key ) {
return $this->layout[ $key ];
}
public function addChild( $key, $value ) {
$this->layout[ $key ] = $value;
}
function render() {
foreach ( $this->layout as $child ) {
$this->renderChild( $child );
}
}
public function renderChild( iCallaElatedRender $child ) {
$child->render( $this->factory );
}
public function setTitle( $label ) {
global $calla_elated_Framework;
return $calla_elated_Framework->getSkin()->getSkinLabel() . ' ' . $label;
}
}
/*
Class: CallaElatedTaxonomyOptions
A class that initializes CallaElated Taxonomy Options
*/
class CallaElatedTaxonomyOptions {
private static $instance;
public $taxonomyOptions;
private function __construct() {
$this->taxonomyOptions = array();
}
public static function get_instance() {
if ( null == self::$instance ) {
self::$instance = new self;
}
return self::$instance;
}
public function addTaxonomyOptions( $key, $options ) {
$this->taxonomyOptions[ $key ] = $options;
}
public function getTaxonomyOptions( $key ) {
return $this->taxonomyOptions[ $key ];
}
}
/*
Class: CallaElatedTaxonomyOption
A class that initializes CallaElated Taxonomy Option
*/
class CallaElatedTaxonomyOption implements iCallaElatedLayoutNode {
public $layout;
private $factory;
public $scope;
function __construct( $scope = "" ) {
$this->layout = array();
$this->factory = new CallaElatedTaxonomyFieldFactory();
$this->scope = $scope;
}
public function hasChidren() {
return ( count( $this->layout ) > 0 ) ? true : false;
}
public function getChild( $key ) {
return $this->layout[ $key ];
}
public function addChild( $key, $value ) {
$this->layout[ $key ] = $value;
}
function render() {
foreach ( $this->layout as $child ) {
$this->renderChild( $child );
}
}
public function renderChild( iCallaElatedRender $child ) {
$child->render( $this->factory );
}
}
/*
Class: CallaElatedUserOptions
A class that initializes CallaElated User Options
*/
class CallaElatedUserOptions {
private static $instance;
public $userOptions;
private function __construct() {
$this->userOptions = array();
}
public static function get_instance() {
if ( null == self::$instance ) {
self::$instance = new self;
}
return self::$instance;
}
public function addUserOptions( $key, $options ) {
$this->userOptions[ $key ] = $options;
}
public function getUserOptions( $key ) {
return $this->userOptions[ $key ];
}
}
/*
Class: CallaElatedUserOption
A class that initializes CallaElated User Option
*/
class CallaElatedUserOption implements iCallaElatedLayoutNode {
public $layout;
private $factory;
public $scope;
function __construct( $scope = "" ) {
$this->layout = array();
$this->factory = new CallaElatedUserFieldFactory();
$this->scope = $scope;
}
public function hasChidren() {
return ( count( $this->layout ) > 0 ) ? true : false;
}
public function getChild( $key ) {
return $this->layout[ $key ];
}
public function addChild( $key, $value ) {
$this->layout[ $key ] = $value;
}
function render() {
foreach ( $this->layout as $child ) {
$this->renderChild( $child );
}
}
public function renderChild( iCallaElatedRender $child ) {
$child->render( $this->factory );
}
}
/*
Class: CallaElatedDashboardOptions
A class that initializes CallaElated Dashboard Options
*/
class CallaElatedDashboardOptions {
private static $instance;
public $dashboardOptions;
private function __construct() {
$this->dashboardOptions = array();
}
public static function get_instance() {
if ( null == self::$instance ) {
self::$instance = new self;
}
return self::$instance;
}
public function addDashboardOptions( $key, $options ) {
$this->dashboardOptions[ $key ] = $options;
}
public function getDashboardOptions( $key ) {
return $this->dashboardOptions[ $key ];
}
}
/*
Class: CallaElatedDashboardOption
A class that initializes CallaElated Dashboard Option
*/
class CallaElatedDashboardOption implements iCallaElatedLayoutNode {
public $layout;
private $factory;
function __construct() {
$this->layout = array();
$this->factory = new CallaElatedDashboardFieldFactory();
}
public function hasChidren() {
return ( count( $this->layout ) > 0 ) ? true : false;
}
public function getChild( $key ) {
return $this->layout[ $key ];
}
public function addChild( $key, $value ) {
$this->layout[ $key ] = $value;
}
function render() {
foreach ( $this->layout as $child ) {
$this->renderChild( $child );
}
}
public function renderChild( iCallaElatedRender $child ) {
$child->render( $this->factory );
}
}
if ( ! function_exists( 'calla_elated_init_framework_variable' ) ) {
function calla_elated_init_framework_variable() {
global $calla_elated_Framework;
$calla_elated_Framework = CallaElatedFramework::get_instance();
$eltdSkinManager = new CallaElatedSkinManager();
$calla_elated_Framework->setSkin( $eltdSkinManager->getSkin() );
}
add_action( 'calla_elated_before_options_map', 'calla_elated_init_framework_variable' );
}
?>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,284 @@
<?php
class CallaElatedDripicons implements iCallaElatedIconCollection
{
public $icons;
public $title;
public $param;
public $styleUrl;
public function __construct($title_label = "", $param = "") {
$this->icons = array();
$this->title = $title_label;
$this->param = $param;
$this->setIconsArray();
$this->styleUrl = ELATED_ASSETS_ROOT . "/css/dripicons/dripicons.css";
}
public function setIconsArray() {
$this->icons = array(
'dripicons-alarm' => '\61',
'dripicons-align-center' => '\62',
'dripicons-align-justify' => '\63',
'dripicons-align-left' => '\64',
'dripicons-align-right' => '\65',
'dripicons-anchor' => '\66',
'dripicons-archive' => '\67',
'dripicons-arrow-down' => '\68',
'dripicons-arrow-left' => '\69',
'dripicons-arrow-right' => '\6a',
'dripicons-arrow-thin-down' => '\6b',
'dripicons-arrow-thin-left' => '\6c',
'dripicons-arrow-thin-right' => '\6d',
'dripicons-arrow-thin-up' => '\6e',
'dripicons-arrow-up' => '\6f',
'dripicons-article' => '\70',
'dripicons-backspace' => '\71',
'dripicons-basket' => '\72',
'dripicons-basketball' => '\73',
'dripicons-battery-empty' => '\74',
'dripicons-battery-full' => '\75',
'dripicons-battery-low' => '\76',
'dripicons-battery-medium' => '\77',
'dripicons-bell' => '\78',
'dripicons-blog' => '\79',
'dripicons-bluetooth' => '\7a',
'dripicons-bold' => '\41',
'dripicons-bookmark' => '\42',
'dripicons-bookmarks' => '\43',
'dripicons-box' => '\44',
'dripicons-briefcase' => '\45',
'dripicons-brightness-low' => '\46',
'dripicons-brightness-max' => '\47',
'dripicons-brightness-medium' => '\48',
'dripicons-broadcast' => '\49',
'dripicons-browser' => '\4a',
'dripicons-browser-upload' => '\4b',
'dripicons-brush' => '\4c',
'dripicons-calendar' => '\4d',
'dripicons-camcorder' => '\4e',
'dripicons-camera' => '\4f',
'dripicons-card' => '\50',
'dripicons-cart' => '\51',
'dripicons-checklist' => '\52',
'dripicons-checkmark' => '\53',
'dripicons-chevron-down' => '\54',
'dripicons-chevron-left' => '\55',
'dripicons-chevron-right' => '\56',
'dripicons-chevron-up' => '\57',
'dripicons-clipboard' => '\58',
'dripicons-clock' => '\59',
'dripicons-clockwise' => '\5a',
'dripicons-cloud' => '\30',
'dripicons-cloud-download' => '\31',
'dripicons-cloud-upload' => '\32',
'dripicons-code' => '\33',
'dripicons-contract' => '\34',
'dripicons-contract-2' => '\35',
'dripicons-conversation' => '\36',
'dripicons-copy' => '\37',
'dripicons-crop' => '\38',
'dripicons-cross' => '\39',
'dripicons-crosshair' => '\21',
'dripicons-cutlery' => '\22',
'dripicons-device-desktop' => '\23',
'dripicons-device-mobile' => '\24',
'dripicons-device-tablet' => '\25',
'dripicons-direction' => '\26',
'dripicons-disc' => '\27',
'dripicons-document' => '\28',
'dripicons-document-delete' => '\29',
'dripicons-document-edit' => '\2a',
'dripicons-document-new' => '\2b',
'dripicons-document-remove' => '\2c',
'dripicons-dot' => '\2d',
'dripicons-dots-2' => '\2e',
'dripicons-dots-3' => '\2f',
'dripicons-download' => '\3a',
'dripicons-duplicate' => '\3b',
'dripicons-enter' => '\3c',
'dripicons-exit' => '\3d',
'dripicons-expand' => '\3e',
'dripicons-expand-2' => '\3f',
'dripicons-experiment' => '\40',
'dripicons-export' => '\5b',
'dripicons-feed' => '\5d',
'dripicons-flag' => '\5e',
'dripicons-flashlight' => '\5f',
'dripicons-folder' => '\60',
'dripicons-folder-open' => '\7b',
'dripicons-forward' => '\7c',
'dripicons-gaming' => '\7d',
'dripicons-gear' => '\7e',
'dripicons-graduation' => '\5c',
'dripicons-graph-bar' => '\e000',
'dripicons-graph-line' => '\e001',
'dripicons-graph-pie' => '\e002',
'dripicons-headset' => '\e003',
'dripicons-heart' => '\e004',
'dripicons-help' => '\e005',
'dripicons-home' => '\e006',
'dripicons-hourglass' => '\e007',
'dripicons-inbox' => '\e008',
'dripicons-information' => '\e009',
'dripicons-italic' => '\e00a',
'dripicons-jewel' => '\e00b',
'dripicons-lifting' => '\e00c',
'dripicons-lightbulb' => '\e00d',
'dripicons-link' => '\e00e',
'dripicons-link-broken' => '\e00f',
'dripicons-list' => '\e010',
'dripicons-loading' => '\e011',
'dripicons-location' => '\e012',
'dripicons-lock' => '\e013',
'dripicons-lock-open' => '\e014',
'dripicons-mail' => '\e015',
'dripicons-map' => '\e016',
'dripicons-media-loop' => '\e017',
'dripicons-media-next' => '\e018',
'dripicons-media-pause' => '\e019',
'dripicons-media-play' => '\e01a',
'dripicons-media-previous' => '\e01b',
'dripicons-media-record' => '\e01c',
'dripicons-media-shuffle' => '\e01d',
'dripicons-media-stop' => '\e01e',
'dripicons-medical' => '\e01f',
'dripicons-menu' => '\e020',
'dripicons-message' => '\e021',
'dripicons-meter' => '\e022',
'dripicons-microphone' => '\e023',
'dripicons-minus' => '\e024',
'dripicons-monitor' => '\e025',
'dripicons-move' => '\e026',
'dripicons-music' => '\e027',
'dripicons-network-1' => '\e028',
'dripicons-network-2' => '\e029',
'dripicons-network-3' => '\e02a',
'dripicons-network-4' => '\e02b',
'dripicons-network-5' => '\e02c',
'dripicons-pamphlet' => '\e02d',
'dripicons-paperclip' => '\e02e',
'dripicons-pencil' => '\e02f',
'dripicons-phone' => '\e030',
'dripicons-photo' => '\e031',
'dripicons-photo-group' => '\e032',
'dripicons-pill' => '\e033',
'dripicons-pin' => '\e034',
'dripicons-plus' => '\e035',
'dripicons-power' => '\e036',
'dripicons-preview' => '\e037',
'dripicons-print' => '\e038',
'dripicons-pulse' => '\e039',
'dripicons-question' => '\e03a',
'dripicons-reply' => '\e03b',
'dripicons-reply-all' => '\e03c',
'dripicons-return' => '\e03d',
'dripicons-retweet' => '\e03e',
'dripicons-rocket' => '\e03f',
'dripicons-scale' => '\e040',
'dripicons-search' => '\e041',
'dripicons-shopping-bag' => '\e042',
'dripicons-skip' => '\e043',
'dripicons-stack' => '\e044',
'dripicons-star' => '\e045',
'dripicons-stopwatch' => '\e046',
'dripicons-store' => '\e047',
'dripicons-suitcase' => '\e048',
'dripicons-swap' => '\e049',
'dripicons-tag' => '\e04a',
'dripicons-tag-delete' => '\e04b',
'dripicons-tags' => '\e04c',
'dripicons-thumbs-down' => '\e04d',
'dripicons-thumbs-up' => '\e04e',
'dripicons-ticket' => '\e04f',
'dripicons-time-reverse' => '\e050',
'dripicons-to-do' => '\e051',
'dripicons-toggles' => '\e052',
'dripicons-trash' => '\e053',
'dripicons-trophy' => '\e054',
'dripicons-upload' => '\e055',
'dripicons-user' => '\e056',
'dripicons-user-group' => '\e057',
'dripicons-user-id' => '\e058',
'dripicons-vibrate' => '\e059',
'dripicons-view-apps' => '\e05a',
'dripicons-view-list' => '\e05b',
'dripicons-view-list-large' => '\e05c',
'dripicons-view-thumb' => '\e05d',
'dripicons-volume-full' => '\e05e',
'dripicons-volume-low' => '\e05f',
'dripicons-volume-medium' => '\e060',
'dripicons-volume-off' => '\e061',
'dripicons-wallet' => '\e062',
'dripicons-warning' => '\e063',
'dripicons-web' => '\e064',
'dripicons-weight' => '\e065',
'dripicons-wifi' => '\e066',
'dripicons-wrong' => '\e067',
'dripicons-zoom-in' => '\e068',
'dripicons-zoom-out' => '\e069'
);
$icons = array();
$icons[""] = "";
foreach ($this->icons as $key => $value) {
$icons[$key] = $key;
}
$this->icons = $icons;
}
public function getIconsArray() {
return $this->icons;
}
public function render($icon, $params = array()) {
$html = '';
extract($params);
$iconAttributesString = '';
$iconClass = '';
if (isset($icon_attributes) && count($icon_attributes)) {
foreach ($icon_attributes as $icon_attr_name => $icon_attr_val) {
if ($icon_attr_name === 'class') {
$iconClass = $icon_attr_val;
unset($icon_attributes[$icon_attr_name]);
} else {
$iconAttributesString .= $icon_attr_name . '="' . $icon_attr_val . '" ';
}
}
}
if (isset($before_icon) && $before_icon !== '') {
$beforeIconAttrString = '';
if (isset($before_icon_attributes) && count($before_icon_attributes)) {
foreach ($before_icon_attributes as $before_icon_attr_name => $before_icon_attr_val) {
$beforeIconAttrString .= $before_icon_attr_name . '="' . $before_icon_attr_val . '" ';
}
}
$html .= '<' . $before_icon . ' ' . $beforeIconAttrString . '>';
}
$html .= '<i class="eltdf-icon-dripicons dripicon ' . $icon . ' ' . $iconClass . '" ' . $iconAttributesString . '></i>';
if (isset($before_icon) && $before_icon !== '') {
$html .= '</' . $before_icon . '>';
}
return $html;
}
public function getSearchIcon() {
return $this->render('dripicons-search');
}
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons() {
return false;
}
}

View File

@@ -0,0 +1,895 @@
<?php
class CallaElatedIconsFontAwesome implements iCallaElatedIconCollection {
public $icons;
public $title;
public $param;
public $styleUrl;
function __construct($title_label = "", $param = "") {
$this->icons = array();
$this->socialIcons = array();
$this->title = $title_label;
$this->param = $param;
$this->setIconsArray();
$this->setSocialIconsArray();
$this->styleUrl = ELATED_ASSETS_ROOT . "/css/font-awesome/css/font-awesome.min.css";
}
private function setIconsArray() {
$this->icons = array(
'fa-500px' => '\f26e',
'fa-address-book' => '\f2b9',
'fa-address-book-o' => '\f2ba',
'fa-address-card' => '\f2bb',
'fa-address-card-o' => '\f2bc',
'fa-adjust' => '\f042',
'fa-adn' => '\f170',
'fa-align-center' => '\f037',
'fa-align-justify' => '\f039',
'fa-align-left' => '\f036',
'fa-align-right' => '\f038',
'fa-amazon' => '\f270',
'fa-ambulance' => '\f0f9',
'fa-american-sign-language-interpreting' => '\f2a3',
'fa-anchor' => '\f13d',
'fa-android' => '\f17b',
'fa-angellist' => '\f209',
'fa-angle-double-down' => '\f103',
'fa-angle-double-left' => '\f100',
'fa-angle-double-right' => '\f101',
'fa-angle-double-up' => '\f102',
'fa-angle-down' => '\f107',
'fa-angle-left' => '\f104',
'fa-angle-right' => '\f105',
'fa-angle-up' => '\f106',
'fa-apple' => '\f179',
'fa-archive' => '\f187',
'fa-area-chart' => '\f1fe',
'fa-arrow-circle-down' => '\f0ab',
'fa-arrow-circle-left' => '\f0a8',
'fa-arrow-circle-o-down' => '\f01a',
'fa-arrow-circle-o-left' => '\f190',
'fa-arrow-circle-o-right' => '\f18e',
'fa-arrow-circle-o-up' => '\f01b',
'fa-arrow-circle-right' => '\f0a9',
'fa-arrow-circle-up' => '\f0aa',
'fa-arrow-down' => '\f063',
'fa-arrow-left' => '\f060',
'fa-arrow-right' => '\f061',
'fa-arrow-up' => '\f062',
'fa-arrows' => '\f047',
'fa-arrows-alt' => '\f0b2',
'fa-arrows-h' => '\f07e',
'fa-arrows-v' => '\f07d',
'fa-assistive-listening-systems' => '\f2a2',
'fa-asterisk' => '\f069',
'fa-at' => '\f1fa',
'fa-audio-description' => '\f29e',
'fa-backward' => '\f04a',
'fa-balance-scale' => '\f24e',
'fa-ban' => '\f05e',
'fa-bandcamp' => '\f2d5',
'fa-bar-chart' => '\f080',
'fa-barcode' => '\f02a',
'fa-bars' => '\f0c9',
'fa-bath' => '\f2cd',
'fa-battery-empty' => '\f244',
'fa-battery-full' => '\f240',
'fa-battery-half' => '\f242',
'fa-battery-quarter' => '\f243',
'fa-battery-three-quarters' => '\f241',
'fa-bed' => '\f236',
'fa-beer' => '\f0fc',
'fa-behance' => '\f1b4',
'fa-behance-square' => '\f1b5',
'fa-bell' => '\f0f3',
'fa-bell-o' => '\f0a2',
'fa-bell-slash' => '\f1f6',
'fa-bell-slash-o' => '\f1f7',
'fa-bicycle' => '\f206',
'fa-binoculars' => '\f1e5',
'fa-birthday-cake' => '\f1fd',
'fa-bitbucket' => '\f171',
'fa-bitbucket-square' => '\f172',
'fa-black-tie' => '\f27e',
'fa-blind' => '\f29d',
'fa-bluetooth' => '\f293',
'fa-bluetooth-b' => '\f294',
'fa-bold' => '\f032',
'fa-bolt' => '\f0e7',
'fa-bomb' => '\f1e2',
'fa-book' => '\f02d',
'fa-bookmark' => '\f02e',
'fa-bookmark-o' => '\f097',
'fa-braille' => '\f2a1',
'fa-briefcase' => '\f0b1',
'fa-btc' => '\f15a',
'fa-bug' => '\f188',
'fa-building' => '\f1ad',
'fa-building-o' => '\f0f7',
'fa-bullhorn' => '\f0a1',
'fa-bullseye' => '\f140',
'fa-bus' => '\f207',
'fa-buysellads' => '\f20d',
'fa-calculator' => '\f1ec',
'fa-calendar' => '\f073',
'fa-calendar-check-o' => '\f274',
'fa-calendar-minus-o' => '\f272',
'fa-calendar-o' => '\f133',
'fa-calendar-plus-o' => '\f271',
'fa-calendar-times-o' => '\f273',
'fa-camera' => '\f030',
'fa-camera-retro' => '\f083',
'fa-car' => '\f1b9',
'fa-caret-down' => '\f0d7',
'fa-caret-left' => '\f0d9',
'fa-caret-right' => '\f0da',
'fa-caret-square-o-down' => '\f150',
'fa-caret-square-o-left' => '\f191',
'fa-caret-square-o-right' => '\f152',
'fa-caret-square-o-up' => '\f151',
'fa-caret-up' => '\f0d8',
'fa-cart-arrow-down' => '\f218',
'fa-cart-plus' => '\f217',
'fa-cc' => '\f20a',
'fa-cc-amex' => '\f1f3',
'fa-cc-diners-club' => '\f24c',
'fa-cc-discover' => '\f1f2',
'fa-cc-jcb' => '\f24b',
'fa-cc-mastercard' => '\f1f1',
'fa-cc-paypal' => '\f1f4',
'fa-cc-stripe' => '\f1f5',
'fa-cc-visa' => '\f1f0',
'fa-certificate' => '\f0a3',
'fa-chain-broken' => '\f127',
'fa-check' => '\f00c',
'fa-check-circle' => '\f058',
'fa-check-circle-o' => '\f05d',
'fa-check-square' => '\f14a',
'fa-check-square-o' => '\f046',
'fa-chevron-circle-down' => '\f13a',
'fa-chevron-circle-left' => '\f137',
'fa-chevron-circle-right' => '\f138',
'fa-chevron-circle-up' => '\f139',
'fa-chevron-down' => '\f078',
'fa-chevron-left' => '\f053',
'fa-chevron-right' => '\f054',
'fa-chevron-up' => '\f077',
'fa-child' => '\f1ae',
'fa-chrome' => '\f268',
'fa-circle' => '\f111',
'fa-circle-o' => '\f10c',
'fa-circle-o-notch' => '\f1ce',
'fa-circle-thin' => '\f1db',
'fa-clipboard' => '\f0ea',
'fa-clock-o' => '\f017',
'fa-clone' => '\f24d',
'fa-cloud' => '\f0c2',
'fa-cloud-download' => '\f0ed',
'fa-cloud-upload' => '\f0ee',
'fa-code' => '\f121',
'fa-code-fork' => '\f126',
'fa-codepen' => '\f1cb',
'fa-codiepie' => '\f284',
'fa-coffee' => '\f0f4',
'fa-cog' => '\f013',
'fa-cogs' => '\f085',
'fa-columns' => '\f0db',
'fa-comment' => '\f075',
'fa-comment-o' => '\f0e5',
'fa-commenting' => '\f27a',
'fa-commenting-o' => '\f27b',
'fa-comments' => '\f086',
'fa-comments-o' => '\f0e6',
'fa-compass' => '\f14e',
'fa-compress' => '\f066',
'fa-connectdevelop' => '\f20e',
'fa-contao' => '\f26d',
'fa-copyright' => '\f1f9',
'fa-creative-commons' => '\f25e',
'fa-credit-card' => '\f09d',
'fa-credit-card-alt' => '\f283',
'fa-crop' => '\f125',
'fa-crosshairs' => '\f05b',
'fa-css3' => '\f13c',
'fa-cube' => '\f1b2',
'fa-cubes' => '\f1b3',
'fa-cutlery' => '\f0f5',
'fa-dashcube' => '\f210',
'fa-database' => '\f1c0',
'fa-deaf' => '\f2a4',
'fa-delicious' => '\f1a5',
'fa-desktop' => '\f108',
'fa-deviantart' => '\f1bd',
'fa-diamond' => '\f219',
'fa-digg' => '\f1a6',
'fa-dot-circle-o' => '\f192',
'fa-download' => '\f019',
'fa-dribbble' => '\f17d',
'fa-dropbox' => '\f16b',
'fa-drupal' => '\f1a9',
'fa-edge' => '\f282',
'fa-eercast' => '\f2da',
'fa-eject' => '\f052',
'fa-ellipsis-h' => '\f141',
'fa-ellipsis-v' => '\f142',
'fa-empire' => '\f1d1',
'fa-envelope' => '\f0e0',
'fa-envelope-o' => '\f003',
'fa-envelope-open' => '\f2b6',
'fa-envelope-open-o' => '\f2b7',
'fa-envelope-square' => '\f199',
'fa-envira' => '\f299',
'fa-eraser' => '\f12d',
'fa-etsy' => '\f2d7',
'fa-eur' => '\f153',
'fa-exchange' => '\f0ec',
'fa-exclamation' => '\f12a',
'fa-exclamation-circle' => '\f06a',
'fa-exclamation-triangle' => '\f071',
'fa-expand' => '\f065',
'fa-expeditedssl' => '\f23e',
'fa-external-link' => '\f08e',
'fa-external-link-square' => '\f14c',
'fa-eye' => '\f06e',
'fa-eye-slash' => '\f070',
'fa-eyedropper' => '\f1fb',
'fa-facebook' => '\f09a',
'fa-facebook-official' => '\f230',
'fa-facebook-square' => '\f082',
'fa-fast-backward' => '\f049',
'fa-fast-forward' => '\f050',
'fa-fax' => '\f1ac',
'fa-female' => '\f182',
'fa-fighter-jet' => '\f0fb',
'fa-file' => '\f15b',
'fa-file-archive-o' => '\f1c6',
'fa-file-audio-o' => '\f1c7',
'fa-file-code-o' => '\f1c9',
'fa-file-excel-o' => '\f1c3',
'fa-file-image-o' => '\f1c5',
'fa-file-o' => '\f016',
'fa-file-pdf-o' => '\f1c1',
'fa-file-powerpoint-o' => '\f1c4',
'fa-file-text' => '\f15c',
'fa-file-text-o' => '\f0f6',
'fa-file-video-o' => '\f1c8',
'fa-file-word-o' => '\f1c2',
'fa-files-o' => '\f0c5',
'fa-film' => '\f008',
'fa-filter' => '\f0b0',
'fa-fire' => '\f06d',
'fa-fire-extinguisher' => '\f134',
'fa-firefox' => '\f269',
'fa-first-order' => '\f2b0',
'fa-flag' => '\f024',
'fa-flag-checkered' => '\f11e',
'fa-flag-o' => '\f11d',
'fa-flask' => '\f0c3',
'fa-flickr' => '\f16e',
'fa-floppy-o' => '\f0c7',
'fa-folder' => '\f07b',
'fa-folder-o' => '\f114',
'fa-folder-open' => '\f07c',
'fa-folder-open-o' => '\f115',
'fa-font' => '\f031',
'fa-font-awesome' => '\f2b4',
'fa-fonticons' => '\f280',
'fa-fort-awesome' => '\f286',
'fa-forumbee' => '\f211',
'fa-forward' => '\f04e',
'fa-foursquare' => '\f180',
'fa-free-code-camp' => '\f2c5',
'fa-frown-o' => '\f119',
'fa-futbol-o' => '\f1e3',
'fa-gamepad' => '\f11b',
'fa-gavel' => '\f0e3',
'fa-gbp' => '\f154',
'fa-genderless' => '\f22d',
'fa-get-pocket' => '\f265',
'fa-gg' => '\f260',
'fa-gg-circle' => '\f261',
'fa-gift' => '\f06b',
'fa-git' => '\f1d3',
'fa-git-square' => '\f1d2',
'fa-github' => '\f09b',
'fa-github-alt' => '\f113',
'fa-github-square' => '\f092',
'fa-gitlab' => '\f296',
'fa-glass' => '\f000',
'fa-glide' => '\f2a5',
'fa-glide-g' => '\f2a6',
'fa-globe' => '\f0ac',
'fa-google' => '\f1a0',
'fa-google-plus' => '\f0d5',
'fa-google-plus-official' => '\f2b3',
'fa-google-plus-square' => '\f0d4',
'fa-google-wallet' => '\f1ee',
'fa-graduation-cap' => '\f19d',
'fa-gratipay' => '\f184',
'fa-grav' => '\f2d6',
'fa-h-square' => '\f0fd',
'fa-hacker-news' => '\f1d4',
'fa-hand-lizard-o' => '\f258',
'fa-hand-o-down' => '\f0a7',
'fa-hand-o-left' => '\f0a5',
'fa-hand-o-right' => '\f0a4',
'fa-hand-o-up' => '\f0a6',
'fa-hand-paper-o' => '\f256',
'fa-hand-peace-o' => '\f25b',
'fa-hand-pointer-o' => '\f25a',
'fa-hand-rock-o' => '\f255',
'fa-hand-scissors-o' => '\f257',
'fa-hand-spock-o' => '\f259',
'fa-handshake-o' => '\f2b5',
'fa-hashtag' => '\f292',
'fa-hdd-o' => '\f0a0',
'fa-header' => '\f1dc',
'fa-headphones' => '\f025',
'fa-heart' => '\f004',
'fa-heart-o' => '\f08a',
'fa-heartbeat' => '\f21e',
'fa-history' => '\f1da',
'fa-home' => '\f015',
'fa-hospital-o' => '\f0f8',
'fa-hourglass' => '\f254',
'fa-hourglass-end' => '\f253',
'fa-hourglass-half' => '\f252',
'fa-hourglass-o' => '\f250',
'fa-hourglass-start' => '\f251',
'fa-houzz' => '\f27c',
'fa-html5' => '\f13b',
'fa-i-cursor' => '\f246',
'fa-id-badge' => '\f2c1',
'fa-id-card' => '\f2c2',
'fa-id-card-o' => '\f2c3',
'fa-ils' => '\f20b',
'fa-imdb' => '\f2d8',
'fa-inbox' => '\f01c',
'fa-indent' => '\f03c',
'fa-industry' => '\f275',
'fa-info' => '\f129',
'fa-info-circle' => '\f05a',
'fa-inr' => '\f156',
'fa-instagram' => '\f16d',
'fa-internet-explorer' => '\f26b',
'fa-ioxhost' => '\f208',
'fa-italic' => '\f033',
'fa-joomla' => '\f1aa',
'fa-jpy' => '\f157',
'fa-jsfiddle' => '\f1cc',
'fa-key' => '\f084',
'fa-keyboard-o' => '\f11c',
'fa-krw' => '\f159',
'fa-language' => '\f1ab',
'fa-laptop' => '\f109',
'fa-lastfm' => '\f202',
'fa-lastfm-square' => '\f203',
'fa-leaf' => '\f06c',
'fa-leanpub' => '\f212',
'fa-lemon-o' => '\f094',
'fa-level-down' => '\f149',
'fa-level-up' => '\f148',
'fa-life-ring' => '\f1cd',
'fa-lightbulb-o' => '\f0eb',
'fa-line-chart' => '\f201',
'fa-link' => '\f0c1',
'fa-linkedin' => '\f0e1',
'fa-linkedin-square' => '\f08c',
'fa-linode' => '\f2b8',
'fa-linux' => '\f17c',
'fa-list' => '\f03a',
'fa-list-alt' => '\f022',
'fa-list-ol' => '\f0cb',
'fa-list-ul' => '\f0ca',
'fa-location-arrow' => '\f124',
'fa-lock' => '\f023',
'fa-long-arrow-down' => '\f175',
'fa-long-arrow-left' => '\f177',
'fa-long-arrow-right' => '\f178',
'fa-long-arrow-up' => '\f176',
'fa-low-vision' => '\f2a8',
'fa-magic' => '\f0d0',
'fa-magnet' => '\f076',
'fa-male' => '\f183',
'fa-map' => '\f279',
'fa-map-marker' => '\f041',
'fa-map-o' => '\f278',
'fa-map-pin' => '\f276',
'fa-map-signs' => '\f277',
'fa-mars' => '\f222',
'fa-mars-double' => '\f227',
'fa-mars-stroke' => '\f229',
'fa-mars-stroke-h' => '\f22b',
'fa-mars-stroke-v' => '\f22a',
'fa-maxcdn' => '\f136',
'fa-meanpath' => '\f20c',
'fa-medium' => '\f23a',
'fa-medkit' => '\f0fa',
'fa-meetup' => '\f2e0',
'fa-meh-o' => '\f11a',
'fa-mercury' => '\f223',
'fa-microchip' => '\f2db',
'fa-microphone' => '\f130',
'fa-microphone-slash' => '\f131',
'fa-minus' => '\f068',
'fa-minus-circle' => '\f056',
'fa-minus-square' => '\f146',
'fa-minus-square-o' => '\f147',
'fa-mixcloud' => '\f289',
'fa-mobile' => '\f10b',
'fa-modx' => '\f285',
'fa-money' => '\f0d6',
'fa-moon-o' => '\f186',
'fa-motorcycle' => '\f21c',
'fa-mouse-pointer' => '\f245',
'fa-music' => '\f001',
'fa-neuter' => '\f22c',
'fa-newspaper-o' => '\f1ea',
'fa-object-group' => '\f247',
'fa-object-ungroup' => '\f248',
'fa-odnoklassniki' => '\f263',
'fa-odnoklassniki-square' => '\f264',
'fa-opencart' => '\f23d',
'fa-openid' => '\f19b',
'fa-opera' => '\f26a',
'fa-optin-monster' => '\f23c',
'fa-outdent' => '\f03b',
'fa-pagelines' => '\f18c',
'fa-paint-brush' => '\f1fc',
'fa-paper-plane' => '\f1d8',
'fa-paper-plane-o' => '\f1d9',
'fa-paperclip' => '\f0c6',
'fa-paragraph' => '\f1dd',
'fa-pause' => '\f04c',
'fa-pause-circle' => '\f28b',
'fa-pause-circle-o' => '\f28c',
'fa-paw' => '\f1b0',
'fa-paypal' => '\f1ed',
'fa-pencil' => '\f040',
'fa-pencil-square' => '\f14b',
'fa-pencil-square-o' => '\f044',
'fa-percent' => '\f295',
'fa-phone' => '\f095',
'fa-phone-square' => '\f098',
'fa-picture-o' => '\f03e',
'fa-pie-chart' => '\f200',
'fa-pied-piper' => '\f2ae',
'fa-pied-piper-alt' => '\f1a8',
'fa-pied-piper-pp' => '\f1a7',
'fa-pinterest' => '\f0d2',
'fa-pinterest-p' => '\f231',
'fa-pinterest-square' => '\f0d3',
'fa-plane' => '\f072',
'fa-play' => '\f04b',
'fa-play-circle' => '\f144',
'fa-play-circle-o' => '\f01d',
'fa-plug' => '\f1e6',
'fa-plus' => '\f067',
'fa-plus-circle' => '\f055',
'fa-plus-square' => '\f0fe',
'fa-plus-square-o' => '\f196',
'fa-podcast' => '\f2ce',
'fa-power-off' => '\f011',
'fa-print' => '\f02f',
'fa-product-hunt' => '\f288',
'fa-puzzle-piece' => '\f12e',
'fa-qq' => '\f1d6',
'fa-qrcode' => '\f029',
'fa-question' => '\f128',
'fa-question-circle' => '\f059',
'fa-question-circle-o' => '\f29c',
'fa-quora' => '\f2c4',
'fa-quote-left' => '\f10d',
'fa-quote-right' => '\f10e',
'fa-random' => '\f074',
'fa-ravelry' => '\f2d9',
'fa-rebel' => '\f1d0',
'fa-recycle' => '\f1b8',
'fa-reddit' => '\f1a1',
'fa-reddit-alien' => '\f281',
'fa-reddit-square' => '\f1a2',
'fa-refresh' => '\f021',
'fa-registered' => '\f25d',
'fa-renren' => '\f18b',
'fa-repeat' => '\f01e',
'fa-reply' => '\f112',
'fa-reply-all' => '\f122',
'fa-retweet' => '\f079',
'fa-road' => '\f018',
'fa-rocket' => '\f135',
'fa-rss' => '\f09e',
'fa-rss-square' => '\f143',
'fa-rub' => '\f158',
'fa-safari' => '\f267',
'fa-scissors' => '\f0c4',
'fa-scribd' => '\f28a',
'fa-search' => '\f002',
'fa-search-minus' => '\f010',
'fa-search-plus' => '\f00e',
'fa-sellsy' => '\f213',
'fa-server' => '\f233',
'fa-share' => '\f064',
'fa-share-alt' => '\f1e0',
'fa-share-alt-square' => '\f1e1',
'fa-share-square' => '\f14d',
'fa-share-square-o' => '\f045',
'fa-shield' => '\f132',
'fa-ship' => '\f21a',
'fa-shirtsinbulk' => '\f214',
'fa-shopping-bag' => '\f290',
'fa-shopping-basket' => '\f291',
'fa-shopping-cart' => '\f07a',
'fa-shower' => '\f2cc',
'fa-sign-in' => '\f090',
'fa-sign-language' => '\f2a7',
'fa-sign-out' => '\f08b',
'fa-signal' => '\f012',
'fa-simplybuilt' => '\f215',
'fa-sitemap' => '\f0e8',
'fa-skyatlas' => '\f216',
'fa-skype' => '\f17e',
'fa-slack' => '\f198',
'fa-sliders' => '\f1de',
'fa-slideshare' => '\f1e7',
'fa-smile-o' => '\f118',
'fa-snapchat' => '\f2ab',
'fa-snapchat-ghost' => '\f2ac',
'fa-snapchat-square' => '\f2ad',
'fa-snowflake-o' => '\f2dc',
'fa-sort' => '\f0dc',
'fa-sort-alpha-asc' => '\f15d',
'fa-sort-alpha-desc' => '\f15e',
'fa-sort-amount-asc' => '\f160',
'fa-sort-amount-desc' => '\f161',
'fa-sort-asc' => '\f0de',
'fa-sort-desc' => '\f0dd',
'fa-sort-numeric-asc' => '\f162',
'fa-sort-numeric-desc' => '\f163',
'fa-soundcloud' => '\f1be',
'fa-space-shuttle' => '\f197',
'fa-spinner' => '\f110',
'fa-spoon' => '\f1b1',
'fa-spotify' => '\f1bc',
'fa-square' => '\f0c8',
'fa-square-o' => '\f096',
'fa-stack-exchange' => '\f18d',
'fa-stack-overflow' => '\f16c',
'fa-star' => '\f005',
'fa-star-half' => '\f089',
'fa-star-half-o' => '\f123',
'fa-star-o' => '\f006',
'fa-steam' => '\f1b6',
'fa-steam-square' => '\f1b7',
'fa-step-backward' => '\f048',
'fa-step-forward' => '\f051',
'fa-stethoscope' => '\f0f1',
'fa-sticky-note' => '\f249',
'fa-sticky-note-o' => '\f24a',
'fa-stop' => '\f04d',
'fa-stop-circle' => '\f28d',
'fa-stop-circle-o' => '\f28e',
'fa-street-view' => '\f21d',
'fa-strikethrough' => '\f0cc',
'fa-stumbleupon' => '\f1a4',
'fa-stumbleupon-circle' => '\f1a3',
'fa-subscript' => '\f12c',
'fa-subway' => '\f239',
'fa-suitcase' => '\f0f2',
'fa-sun-o' => '\f185',
'fa-superpowers' => '\f2dd',
'fa-superscript' => '\f12b',
'fa-table' => '\f0ce',
'fa-tablet' => '\f10a',
'fa-tachometer' => '\f0e4',
'fa-tag' => '\f02b',
'fa-tags' => '\f02c',
'fa-tasks' => '\f0ae',
'fa-taxi' => '\f1ba',
'fa-telegram' => '\f2c6',
'fa-television' => '\f26c',
'fa-tencent-weibo' => '\f1d5',
'fa-terminal' => '\f120',
'fa-text-height' => '\f034',
'fa-text-width' => '\f035',
'fa-th' => '\f00a',
'fa-th-large' => '\f009',
'fa-th-list' => '\f00b',
'fa-themeisle' => '\f2b2',
'fa-thermometer-empty' => '\f2cb',
'fa-thermometer-full' => '\f2c7',
'fa-thermometer-half' => '\f2c9',
'fa-thermometer-quarter' => '\f2ca',
'fa-thermometer-three-quarters' => '\f2c8',
'fa-thumb-tack' => '\f08d',
'fa-thumbs-down' => '\f165',
'fa-thumbs-o-down' => '\f088',
'fa-thumbs-o-up' => '\f087',
'fa-thumbs-up' => '\f164',
'fa-ticket' => '\f145',
'fa-times' => '\f00d',
'fa-times-circle' => '\f057',
'fa-times-circle-o' => '\f05c',
'fa-tint' => '\f043',
'fa-toggle-off' => '\f204',
'fa-toggle-on' => '\f205',
'fa-trademark' => '\f25c',
'fa-train' => '\f238',
'fa-transgender' => '\f224',
'fa-transgender-alt' => '\f225',
'fa-trash' => '\f1f8',
'fa-trash-o' => '\f014',
'fa-tree' => '\f1bb',
'fa-trello' => '\f181',
'fa-tripadvisor' => '\f262',
'fa-trophy' => '\f091',
'fa-truck' => '\f0d1',
'fa-try' => '\f195',
'fa-tty' => '\f1e4',
'fa-tumblr' => '\f173',
'fa-tumblr-square' => '\f174',
'fa-twitch' => '\f1e8',
'fa-twitter' => '\f099',
'fa-twitter-square' => '\f081',
'fa-umbrella' => '\f0e9',
'fa-underline' => '\f0cd',
'fa-undo' => '\f0e2',
'fa-universal-access' => '\f29a',
'fa-university' => '\f19c',
'fa-unlock' => '\f09c',
'fa-unlock-alt' => '\f13e',
'fa-upload' => '\f093',
'fa-usb' => '\f287',
'fa-usd' => '\f155',
'fa-user' => '\f007',
'fa-user-circle' => '\f2bd',
'fa-user-circle-o' => '\f2be',
'fa-user-md' => '\f0f0',
'fa-user-o' => '\f2c0',
'fa-user-plus' => '\f234',
'fa-user-secret' => '\f21b',
'fa-user-times' => '\f235',
'fa-users' => '\f0c0',
'fa-venus' => '\f221',
'fa-venus-double' => '\f226',
'fa-venus-mars' => '\f228',
'fa-viacoin' => '\f237',
'fa-viadeo' => '\f2a9',
'fa-viadeo-square' => '\f2aa',
'fa-video-camera' => '\f03d',
'fa-vimeo' => '\f27d',
'fa-vimeo-square' => '\f194',
'fa-vine' => '\f1ca',
'fa-vk' => '\f189',
'fa-volume-control-phone' => '\f2a0',
'fa-volume-down' => '\f027',
'fa-volume-off' => '\f026',
'fa-volume-up' => '\f028',
'fa-weibo' => '\f18a',
'fa-weixin' => '\f1d7',
'fa-whatsapp' => '\f232',
'fa-wheelchair' => '\f193',
'fa-wheelchair-alt' => '\f29b',
'fa-wifi' => '\f1eb',
'fa-wikipedia-w' => '\f266',
'fa-window-close' => '\f2d3',
'fa-window-close-o' => '\f2d4',
'fa-window-maximize' => '\f2d0',
'fa-window-minimize' => '\f2d1',
'fa-window-restore' => '\f2d2',
'fa-windows' => '\f17a',
'fa-wordpress' => '\f19a',
'fa-wpbeginner' => '\f297',
'fa-wpexplorer' => '\f2de',
'fa-wpforms' => '\f298',
'fa-wrench' => '\f0ad',
'fa-xing' => '\f168',
'fa-xing-square' => '\f169',
'fa-y-combinator' => '\f23b',
'fa-yahoo' => '\f19e',
'fa-yelp' => '\f1e9',
'fa-yoast' => '\f2b1',
'fa-youtube' => '\f167',
'fa-youtube-play' => '\f16a',
'fa-youtube-square' => '\f166'
);
$fa_icons = array();
$fa_icons[""] = "";
foreach ($this->icons as $key => $value) {
$fa_icons[$key] = $key;
}
$this->icons = $fa_icons;
}
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons() {
return true;
}
public function setSocialIconsArray() {
$this->socialIcons = array(
"" => "",
"fa-500px" => "500px",
"fa-adn" => "ADN",
"fa-amazon" => "Amazon",
"fa-android" => "Android",
"fa-apple" => "Apple",
"fa-behance" => "Behance",
"fa-behance-square" => "Behance Square",
"fa-bitbucket" => "Bitbucket",
"fa-bitcoin" => "Bitcoin",
"fa-btc" => "BTC",
"fa-css3" => "CSS3",
"fa-dribbble" => "Dribbble",
"fa-dropbox" => "Dropbox",
"fa-facebook" => "Facebook",
"fa-flickr" => "Flickr",
"fa-foursquare" => "Foursquare",
"fa-github" => "GitHub",
"fa-github-alt" => "GitHub-Alt",
"fa-gittip" => "Gittip",
"fa-google-plus" => "Google Plus",
"fa-html5" => "HTML5",
"fa-instagram" => "Instagram",
"fa-linkedin" => "LinkedIn",
"fa-linux" => "Linux",
"fa-envelope" => "Mail",
"fa-envelope-o" => "Mail Alt",
"fa-envelope-square" => "Mail Square",
"fa-maxcdn" => "MaxCDN",
"fa-paypal" => "Paypal",
"fa-pinterest" => "Pinterest",
"fa-renren" => "Renren",
"fa-skype" => "Skype",
"fa-stack-exchange" => "StackExchange",
"fa-tripadvisor" => "Trip Advisor",
"fa-trello" => "Trello",
"fa-tumblr" => "Tumblr",
"fa-twitter" => "Twitter",
"fa-vimeo" => "Vimeo",
"fa-vimeo-square" => "Vimeo Square",
"fa-vine" => "Vine",
"fa-vk" => "VK",
"fa-weibo" => "Weibo",
"fa-wikipedia-w" => "Wikipedia",
"fa-windows" => "Windows",
"fa-wordpress" => "WordPress",
"fa-xing" => "Xing",
"fa-youtube" => "YouTube",
"fa-youtube-square" => "YouTube Square",
"fa-youtube-play" => "YouTube Play",
);
}
public function getIconsArray() {
return $this->icons;
}
public function getSocialIconsArray() {
return $this->socialIcons;
}
public function getSocialIconsArrayVC() {
return array_flip($this->getSocialIconsArray());
}
public function render($icon, $params = array()) {
$html = '';
extract($params);
$iconAttributesString = '';
$iconClass = '';
if (isset($icon_attributes) && count($icon_attributes)) {
foreach ($icon_attributes as $icon_attr_name => $icon_attr_val) {
if ($icon_attr_name === 'class') {
$iconClass = $icon_attr_val;
unset($icon_attributes[$icon_attr_name]);
} else {
$iconAttributesString .= $icon_attr_name . '="' . $icon_attr_val . '" ';
}
}
}
if (isset($before_icon) && $before_icon !== '') {
$beforeIconAttrString = '';
if (isset($before_icon_attributes) && count($before_icon_attributes)) {
foreach ($before_icon_attributes as $before_icon_attr_name => $before_icon_attr_val) {
$beforeIconAttrString .= $before_icon_attr_name . '="' . $before_icon_attr_val . '" ';
}
}
$html .= '<' . $before_icon . ' ' . $beforeIconAttrString . '>';
}
$html .= '<i class="eltdf-icon-font-awesome fa ' . $icon . ' ' . $iconClass . '" ' . $iconAttributesString . '></i>';
if (isset($before_icon) && $before_icon !== '') {
$html .= '</' . $before_icon . '>';
}
return $html;
}
public function getSearchIcon() {
return $this->render('fa-search');
}
public function getSearchClose() {
return $this->render('fa-times');
}
public function getDropdownCartIcon() {
return $this->render('fa-shopping-cart');
}
public function getMenuIcon() {
return $this->render('fa-bars');
}
public function getMenuCloseIcon() {
return $this->render('fa-times');
}
public function getBackToTopIcon() {
return $this->render('fa-angle-up');
}
public function getMobileMenuIcon() {
return $this->render('fa-bars');
}
public function getQuoteIcon() {
return $this->render('fa-quote-left');
}
public function getFacebookIcon() {
return 'fa-facebook';
}
public function getTwitterIcon() {
return 'fa-twitter';
}
public function getGooglePlusIcon() {
return 'fa-google-plus';
}
public function getLinkedInIcon() {
return 'fa-linkedin';
}
public function getTumblrIcon() {
return 'fa-tumblr';
}
public function getPinterestIcon() {
return 'fa-pinterest';
}
public function getVKIcon() {
return 'fa-vk';
}
}

View File

@@ -0,0 +1,594 @@
<?php
class CallaElatedIconsFontElegant implements iCallaElatedIconCollection {
public $icons;
public $title;
public $param;
public $styleUrl;
function __construct($title_label = "", $param = "") {
$this->icons = array();
$this->socialIcons = array();
$this->title = $title_label;
$this->param = $param;
$this->setIconsArray();
$this->setSocialIconsArray();
$this->styleUrl = ELATED_ASSETS_ROOT . "/css/elegant-icons/style.min.css";
}
private function setIconsArray() {
$this->icons = array(
'' => '',
'arrow_back' => 'arrow_back',
'arrow_carrot-2down' => 'arrow_carrot-2down',
'arrow_carrot-2down_alt2' => 'arrow_carrot-2down_alt2',
'arrow_carrot-2dwnn_alt' => 'arrow_carrot-2dwnn_alt',
'arrow_carrot-2left' => 'arrow_carrot-2left',
'arrow_carrot-2left_alt' => 'arrow_carrot-2left_alt',
'arrow_carrot-2left_alt2' => 'arrow_carrot-2left_alt2',
'arrow_carrot-2right' => 'arrow_carrot-2right',
'arrow_carrot-2right_alt' => 'arrow_carrot-2right_alt',
'arrow_carrot-2right_alt2' => 'arrow_carrot-2right_alt2',
'arrow_carrot-2up' => 'arrow_carrot-2up',
'arrow_carrot-2up_alt' => 'arrow_carrot-2up_alt',
'arrow_carrot-2up_alt2' => 'arrow_carrot-2up_alt2',
'arrow_carrot-down' => 'arrow_carrot-down',
'arrow_carrot-down_alt' => 'arrow_carrot-down_alt',
'arrow_carrot-down_alt2' => 'arrow_carrot-down_alt2',
'arrow_carrot-left' => 'arrow_carrot-left',
'arrow_carrot-left_alt' => 'arrow_carrot-left_alt',
'arrow_carrot-left_alt2' => 'arrow_carrot-left_alt2',
'arrow_carrot-right' => 'arrow_carrot-right',
'arrow_carrot-right_alt' => 'arrow_carrot-right_alt',
'arrow_carrot-right_alt2' => 'arrow_carrot-right_alt2',
'arrow_carrot-up' => 'arrow_carrot-up',
'arrow_carrot-up_alt2' => 'arrow_carrot-up_alt2',
'arrow_carrot_up_alt' => 'arrow_carrot_up_alt',
'arrow_condense' => 'arrow_condense',
'arrow_condense_alt' => 'arrow_condense_alt',
'arrow_down' => 'arrow_down',
'arrow_down_alt' => 'arrow_down_alt',
'arrow_expand' => 'arrow_expand',
'arrow_expand_alt' => 'arrow_expand_alt',
'arrow_expand_alt2' => 'arrow_expand_alt2',
'arrow_expand_alt3' => 'arrow_expand_alt3',
'arrow_left' => 'arrow_left',
'arrow_left-down' => 'arrow_left-down',
'arrow_left-down_alt' => 'arrow_left-down_alt',
'arrow_left-right' => 'arrow_left-right',
'arrow_left-right_alt' => 'arrow_left-right_alt',
'arrow_left-up' => 'arrow_left-up',
'arrow_left-up_alt' => 'arrow_left-up_alt',
'arrow_left_alt' => 'arrow_left_alt',
'arrow_move' => 'arrow_move',
'arrow_right' => 'arrow_right',
'arrow_right-down' => 'arrow_right-down',
'arrow_right-down_alt' => 'arrow_right-down_alt',
'arrow_right-up' => 'arrow_right-up',
'arrow_right-up_alt' => 'arrow_right-up_alt',
'arrow_right_alt' => 'arrow_right_alt',
'arrow_triangle-down' => 'arrow_triangle-down',
'arrow_triangle-down_alt' => 'arrow_triangle-down_alt',
'arrow_triangle-down_alt2' => 'arrow_triangle-down_alt2',
'arrow_triangle-left' => 'arrow_triangle-left',
'arrow_triangle-left_alt' => 'arrow_triangle-left_alt',
'arrow_triangle-left_alt2' => 'arrow_triangle-left_alt2',
'arrow_triangle-right' => 'arrow_triangle-right',
'arrow_triangle-right_alt' => 'arrow_triangle-right_alt',
'arrow_triangle-right_alt2' => 'arrow_triangle-right_alt2',
'arrow_triangle-up' => 'arrow_triangle-up',
'arrow_triangle-up_alt' => 'arrow_triangle-up_alt',
'arrow_triangle-up_alt2' => 'arrow_triangle-up_alt2',
'arrow_up' => 'arrow_up',
'arrow_up-down' => 'arrow-up-down',
'arrow_up-down_alt' => 'arrow_up-down_alt',
'arrow_up_alt' => 'arrow_up_alt',
'icon_adjust-horiz' => 'icon_adjust-horiz',
'icon_adjust-vert' => 'icon_adjust-vert',
'icon_archive' => 'icon_archive',
'icon_archive_alt' => 'icon_archive_alt',
'icon_bag' => 'icon_bag',
'icon_bag_alt' => 'icon_bag_alt',
'icon_balance' => 'icon_balance',
'icon_blocked' => 'icon_blocked',
'icon_book' => 'icon_book',
'icon_book_alt' => 'icon_book_alt',
'icon_box-checked' => 'icon_box-checked',
'icon_box-empty' => 'icon_box-empty',
'icon_box-selected' => 'icon_box-selected',
'icon_briefcase' => 'icon_briefcase',
'icon_briefcase_alt' => 'icon_briefcase_alt',
'icon_building' => 'icon_building',
'icon_building_alt' => 'icon_building_alt',
'icon_calculator_alt' => 'icon_calculator_alt',
'icon_calendar' => 'icon_calendar',
'icon_calulator' => 'icon_calulator',
'icon_camera' => 'icon_camera',
'icon_camera_alt' => 'icon_camera_alt',
'icon_cart' => 'icon_cart',
'icon_cart_alt' => 'icon_cart_alt',
'icon_chat' => 'icon_chat',
'icon_chat_alt' => 'icon_chat_alt',
'icon_check' => 'icon_check',
'icon_check_alt' => 'icon_check_alt',
'icon_check_alt2' => 'icon_check_alt2',
'icon_circle-empty' => 'icon_circle-empty',
'icon_circle-slelected' => 'icon_circle-slelected',
'icon_clipboard' => 'icon_clipboard',
'icon_clock' => 'icon_clock',
'icon_clock_alt' => 'icon_clock_alt',
'icon_close' => 'icon_close',
'icon_close_alt' => 'icon_close_alt',
'icon_close_alt2' => 'icon_close_alt2',
'icon_cloud' => 'icon_cloud',
'icon_cloud-download' => 'icon_cloud-download',
'icon_cloud-download_alt' => 'icon_cloud-download_alt',
'icon_cloud-upload' => 'icon_cloud-upload',
'icon_cloud-upload_alt' => 'icon_cloud-upload_alt',
'icon_cloud_alt' => 'icon_cloud_alt',
'icon_cog' => 'icon_cog',
'icon_cogs' => 'icon_cogs',
'icon_comment' => 'icon_comment',
'icon_comment_alt' => 'icon_comment_alt',
'icon_compass' => 'icon_compass',
'icon_compass_alt' => 'icon_compass_alt',
'icon_cone' => 'icon_cone',
'icon_cone_alt' => 'icon_cone_alt',
'icon_contacts' => 'icon_contacts',
'icon_contacts_alt' => 'icon_contacts_alt',
'icon_creditcard' => 'icon_creditcard',
'icon_currency' => 'icon_currency',
'icon_currency_alt' => 'icon_currency_alt',
'icon_cursor' => 'icon_cursor',
'icon_cursor_alt' => 'icon_cursor_alt',
'icon_datareport' => 'icon_datareport',
'icon_datareport_alt' => 'icon_datareport_alt',
'icon_desktop' => 'icon_desktop',
'icon_dislike' => 'icon_dislike',
'icon_dislike_alt' => 'icon_dislike_alt',
'icon_document' => 'icon_document',
'icon_document_alt' => 'icon_document_alt',
'icon_documents' => 'icon_documents',
'icon_documents_alt' => 'icon_documents_alt',
'icon_download' => 'icon_download',
'icon_drawer' => 'icon_drawer',
'icon_drawer_alt' => 'icon_drawer_alt',
'icon_drive' => 'icon_drive',
'icon_drive_alt' => 'icon_drive_alt',
'icon_easel' => 'icon_easel',
'icon_easel_alt' => 'icon_easel_alt',
'icon_error-circle' => 'icon_error-circle',
'icon_error-circle_alt' => 'icon_error-circle_alt',
'icon_error-oct' => 'icon_error-oct',
'icon_error-oct_alt' => 'icon_error-oct_alt',
'icon_error-triangle' => 'icon_error-triangle',
'icon_error-triangle_alt' => 'icon_error-triangle_alt',
'icon_film' => 'icon_film',
'icon_floppy' => 'icon_floppy',
'icon_floppy_alt' => 'icon_floppy_alt',
'icon_flowchart' => 'icon_flowchart',
'icon_flowchart_alt' => 'icon_flowchart_alt',
'icon_folder' => 'icon_folder',
'icon_folder-add' => 'icon_folder-add',
'icon_folder-add_alt' => 'icon_folder-add_alt',
'icon_folder-alt' => 'icon_folder-alt',
'icon_folder-open' => 'icon_folder-open',
'icon_folder-open_alt' => 'icon_folder-open_alt',
'icon_folder_download' => 'icon_folder_download',
'icon_folder_upload' => 'icon_folder_upload',
'icon_genius' => 'icon_genius',
'icon_gift' => 'icon_gift',
'icon_gift_alt' => 'icon_gift_alt',
'icon_globe' => 'icon_globe',
'icon_globe-2' => 'icon_globe-2',
'icon_globe_alt' => 'icon_globe_alt',
'icon_grid-2x2' => 'icon_grid-2x2',
'icon_grid-3x3' => 'icon_grid-3x3',
'icon_group' => 'icon_group',
'icon_headphones' => 'icon_headphones',
'icon_heart' => 'icon_heart',
'icon_heart_alt' => 'icon_heart_alt',
'icon_hourglass' => 'icon_hourglass',
'icon_house' => 'icon_house',
'icon_house_alt' => 'icon_house_alt',
'icon_id' => 'icon_id',
'icon_id-2' => 'icon_id-2',
'icon_id-2_alt' => 'icon_id-2_alt',
'icon_id_alt' => 'icon_id_alt',
'icon_image' => 'icon_image',
'icon_images' => 'icon_images',
'icon_info' => 'icon_info',
'icon_info_alt' => 'icon_info_alt',
'icon_key' => 'icon_key',
'icon_key_alt' => 'icon_key_alt',
'icon_laptop' => 'icon_laptop',
'icon_lifesaver' => 'icon_lifesaver',
'icon_lightbulb' => 'icon_lightbulb',
'icon_lightbulb_alt' => 'icon_lightbulb_alt',
'icon_like' => 'icon_like',
'icon_like_alt' => 'icon_like_alt',
'icon_link' => 'icon_link',
'icon_link_alt' => 'icon_link_alt',
'icon_loading' => 'icon_loading',
'icon_lock' => 'icon_lock',
'icon_lock-open' => 'icon_lock-open',
'icon_lock-open_alt' => 'icon_lock-open_alt',
'icon_lock_alt' => 'icon_lock_alt',
'icon_mail' => 'icon_mail',
'icon_mail_alt' => 'icon_mail_alt',
'icon_map' => 'icon_map',
'icon_map_alt' => 'icon_map_alt',
'icon_menu' => 'icon_menu',
'icon_menu-circle_alt' => 'icon_menu-circle_alt',
'icon_menu-circle_alt2' => 'icon_menu-circle_alt2',
'icon_menu-square_alt' => 'icon_menu-square_alt',
'icon_menu-square_alt2' => 'icon_menu-square_alt2',
'icon_mic' => 'icon_mic',
'icon_mic_alt' => 'icon_mic_alt',
'icon_minus-06' => 'icon_minus-06',
'icon_minus-box' => 'icon_minus-box',
'icon_minus_alt' => 'icon_minus_alt',
'icon_minus_alt2' => 'icon_minus_alt2',
'icon_mobile' => 'icon_mobile',
'icon_mug' => 'icon_mug',
'icon_mug_alt' => 'icon_mug_alt',
'icon_music' => 'icon_music',
'icon_ol' => 'icon_ol',
'icon_paperclip' => 'icon_paperclip',
'icon_pause' => 'icon_pause',
'icon_pause_alt' => 'icon_pause_alt',
'icon_pause_alt2' => 'icon_pause_alt2',
'icon_pencil' => 'icon_pencil',
'icon_pencil-edit' => 'icon_pencil-edit',
'icon_pencil-edit_alt' => 'icon_pencil-edit_alt',
'icon_pencil_alt' => 'icon_pencil_alt',
'icon_pens' => 'icon_pens',
'icon_pens_alt' => 'icon_pens_alt',
'icon_percent' => 'icon_percent',
'icon_percent_alt' => 'icon_percent_alt',
'icon_phone' => 'icon_phone',
'icon_piechart' => 'icon_piechart',
'icon_pin' => 'icon_pin',
'icon_pin_alt' => 'icon_pin_alt',
'icon_plus' => 'icon_plus',
'icon_plus-box' => 'icon_plus-box',
'icon_plus_alt' => 'icon_plus_alt',
'icon_plus_alt2' => 'icon_plus_alt2',
'icon_printer' => 'icon_printer',
'icon_printer-alt' => 'icon_printer-alt',
'icon_profile' => 'icon_profile',
'icon_pushpin' => 'icon_pushpin',
'icon_pushpin_alt' => 'icon_pushpin_alt',
'icon_puzzle' => 'icon_puzzle',
'icon_puzzle_alt' => 'icon_puzzle_alt',
'icon_question' => 'icon_question',
'icon_question_alt' => 'icon_question_alt',
'icon_question_alt2' => 'icon_question_alt2',
'icon_quotations' => 'icon_quotations',
'icon_quotations_alt' => 'icon_quotations_alt',
'icon_quotations_alt2' => 'icon_quotations_alt2',
'icon_refresh' => 'icon_refresh',
'icon_ribbon' => 'icon_ribbon',
'icon_ribbon_alt' => 'icon_ribbon_alt',
'icon_rook' => 'icon_rook',
'icon_search' => 'icon_search',
'icon_search-2' => 'icon_search-2',
'icon_search_alt' => 'icon_search_alt',
'icon_shield' => 'icon_shield',
'icon_shield_alt' => 'icon_shield_alt',
'icon_star' => 'icon_star',
'icon_star-half' => 'icon_star-half',
'icon_star-half_alt' => 'icon_star-half_alt',
'icon_star_alt' => 'icon_star_alt',
'icon_stop' => 'icon_stop',
'icon_stop_alt' => 'icon_stop_alt',
'icon_stop_alt2' => 'icon_stop_alt2',
'icon_table' => 'icon_table',
'icon_tablet' => 'icon_tablet',
'icon_tag' => 'icon_tag',
'icon_tag_alt' => 'icon_tag_alt',
'icon_tags' => 'icon_tags',
'icon_tags_alt' => 'icon_tags_alt',
'icon_target' => 'icon_target',
'icon_tool' => 'icon_tool',
'icon_toolbox' => 'icon_toolbox',
'icon_toolbox_alt' => 'icon_toolbox_alt',
'icon_tools' => 'icon_tools',
'icon_trash' => 'icon_trash',
'icon_trash_alt' => 'icon_trash_alt',
'icon_ul' => 'icon_ul',
'icon_upload' => 'icon_upload',
'icon_vol-mute' => 'icon_vol-mute',
'icon_vol-mute_alt' => 'icon_vol-mute_alt',
'icon_volume-high' => 'icon_volume-high',
'icon_volume-high_alt' => 'icon_volume-high_alt',
'icon_volume-low' => 'icon_volume-low',
'icon_volume-low_alt' => 'icon_volume-low_alt',
'icon_wallet' => 'icon_wallet',
'icon_wallet_alt' => 'icon_wallet_alt',
'icon_zoom-in' => 'icon_zoom-in',
'icon_zoom-in_alt' => 'icon_zoom-in_alt',
'icon_zoom-out' => 'icon_zoom-out',
'icon_zoom-out_alt' => 'icon_zoom-out_alt',
'social_blogger' => 'social_blogger',
'social_blogger_circle' => 'social_blogger_circle',
'social_blogger_square' => 'social_blogger_square',
'social_delicious' => 'social_delicious',
'social_delicious_circle' => 'social_delicious_circle',
'social_delicious_square' => 'social_delicious_square',
'social_deviantart' => 'social_deviantart',
'social_deviantart_circle' => 'social_deviantart_circle',
'social_deviantart_square' => 'social_deviantart_square',
'social_dribbble' => 'social_dribbble',
'social_dribbble_circle' => 'social_dribbble_circle',
'social_dribbble_square' => 'social_dribbble_square',
'social_facebook' => 'social_facebook',
'social_facebook_circle' => 'social_facebook_circle',
'social_facebook_square' => 'social_facebook_square',
'social_flickr' => 'social_flickr',
'social_flickr_circle' => 'social_flickr_circle',
'social_flickr_square' => 'social_flickr_square',
'social_googledrive' => 'social_googledrive',
'social_googledrive_alt2' => 'social_googledrive_alt2',
'social_googledrive_square' => 'social_googledrive_square',
'social_googleplus' => 'social_googleplus',
'social_googleplus_circle' => 'social_googleplus_circle',
'social_googleplus_square' => 'social_googleplus_square',
'social_instagram' => 'social_instagram',
'social_instagram_circle' => 'social_instagram_circle',
'social_instagram_square' => 'social_instagram_square',
'social_linkedin' => 'social_linkedin',
'social_linkedin_circle' => 'social_linkedin_circle',
'social_linkedin_square' => 'social_linkedin_square',
'social_myspace' => 'social_myspace',
'social_myspace_circle' => 'social_myspace_circle',
'social_myspace_square' => 'social_myspace_square',
'social_picassa' => 'social_picassa',
'social_picassa_circle' => 'social_picassa_circle',
'social_picassa_square' => 'social_picassa_square',
'social_pinterest' => 'social_pinterest',
'social_pinterest_circle' => 'social_pinterest_circle',
'social_pinterest_square' => 'social_pinterest_square',
'social_rss' => 'social_rss',
'social_rss_circle' => 'social_rss_circle',
'social_rss_square' => 'social_rss_square',
'social_share' => 'social_share',
'social_share_circle' => 'social_share_circle',
'social_share_square' => 'social_share_square',
'social_skype' => 'social_skype',
'social_skype_circle' => 'social_skype_circle',
'social_skype_square' => 'social_skype_square',
'social_spotify' => 'social_spotify',
'social_spotify_circle' => 'social_spotify_circle',
'social_spotify_square' => 'social_spotify_square',
'social_stumbleupon_circle' => 'social_stumbleupon_circle',
'social_stumbleupon_square' => 'social_stumbleupon_square',
'social_tumbleupon' => 'social_tumbleupon',
'social_tumblr' => 'social_tumblr',
'social_tumblr_circle' => 'social_tumblr_circle',
'social_tumblr_square' => 'social_tumblr_square',
'social_twitter' => 'social_twitter',
'social_twitter_circle' => 'social_twitter_circle',
'social_twitter_square' => 'social_twitter_square',
'social_vimeo' => 'social_vimeo',
'social_vimeo_circle' => 'social_vimeo_circle',
'social_vimeo_square' => 'social_vimeo_square',
'social_wordpress' => 'social_wordpress',
'social_wordpress_circle' => 'social_wordpress_circle',
'social_wordpress_square' => 'social_wordpress_square',
'social_youtube' => 'social_youtube',
'social_youtube_circle' => 'social_youtube_circle',
'social_youtube_square' => 'social_youtube_square'
);
}
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons() {
return true;
}
private function setSocialIconsArray() {
$this->socialIcons = array(
"" => "",
"social_blogger" => "Blogger",
"social_blogger_circle" => "Blogger circle",
"social_blogger_square" => "Blogger square",
"social_delicious" => "Delicious",
"social_delicious_circle" => "Delicious circle",
"social_delicious_square" => "Delicious square",
"social_deviantart" => "Deviantart",
"social_deviantart_circle" => "Deviantart circle",
"social_deviantart_square" => "Deviantart square",
"social_dribbble" => "Dribbble",
"social_dribbble_circle" => "Dribbble circle",
"social_dribbble_square" => "Dribbble square",
"social_facebook" => "Facebook",
"social_facebook_circle" => "Facebook circle",
"social_facebook_square" => "Facebook square",
"social_flickr" => "Flickr",
"social_flickr_circle" => "Flickr circle",
"social_flickr_square" => "Flickr square",
"social_googledrive" => "Googledrive",
"social_googledrive_alt2" => "Googledrive alt2",
"social_googledrive_square" => "Googledrive square",
"social_googleplus" => "Googleplus",
"social_googleplus_circle" => "Googleplus circle",
"social_googleplus_square" => "Googleplus square",
"social_instagram" => "Instagram",
"social_instagram_circle" => "Instagram circle",
"social_instagram_square" => "Instagram square",
"social_linkedin" => "Linkedin",
"social_linkedin_circle" => "Linkedin circle",
"social_linkedin_square" => "Linkedin square",
"social_myspace" => "Myspace",
"social_myspace_circle" => "myspace circle",
"social_myspace_square" => "myspace square",
"social_picassa" => "Picassa",
"social_picassa_circle" => "Picassa circle",
"social_picassa_square" => "Picassa square",
"social_pinterest" => "Pinterest",
"social_pinterest_circle" => "Pinterest circle",
"social_pinterest_square" => "Pinterest square",
"social_rss" => "Rss",
"social_rss_circle" => "Rss circle",
"social_rss_square" => "Rss square",
"social_share" => "Share",
"social_share_circle" => "Share circle",
"social_share_square" => "Share square",
"social_skype" => "Skype",
"social_skype_circle" => "Skype circle",
"social_skype_square" => "Skype square",
"social_spotify" => "Spotify",
"social_spotify_circle" => "Spotify circle",
"social_spotify_square" => "Spotify square",
"social_stumbleupon_circle" => "Stumbleupon circle",
"social_stumbleupon_square" => "Stumbleupon square",
"social_tumbleupon" => "Stumbleupon",
"social_tumblr" => "Tumblr",
"social_tumblr_circle" => "Tumblr circle",
"social_tumblr_square" => "Tumblr square",
"social_twitter" => "Twitter",
"social_twitter_circle" => "Twitter circle",
"social_twitter_square" => "Twitter square",
"social_vimeo" => "Vimeo",
"social_vimeo_circle" => "Vimeo circle",
"social_vimeo_square" => "Vimeo square",
"social_wordpress" => "WordPress",
"social_wordpress_circle" => "WordPress circle",
"social_wordpress_square" => "WordPress square",
"social_youtube" => "YouTube",
"social_youtube_circle" => "YouTube circle",
"social_youtube_square" => "YouTube square"
);
}
public function getIconsArray() {
return $this->icons;
}
public function getSocialIconsArray() {
return $this->socialIcons;
}
public function getSocialIconsArrayVC() {
return array_flip($this->getSocialIconsArray());
}
public function render($icon, $params = array()) {
$html = '';
extract($params);
$iconAttributesString = '';
$iconClass = '';
if (isset($icon_attributes) && count($icon_attributes)) {
foreach ($icon_attributes as $icon_attr_name => $icon_attr_val) {
if ($icon_attr_name === 'class') {
$iconClass = $icon_attr_val;
unset($icon_attributes[$icon_attr_name]);
} else {
$iconAttributesString .= $icon_attr_name . '="' . $icon_attr_val . '" ';
}
}
}
if (isset($before_icon) && $before_icon !== '') {
$beforeIconAttrString = '';
if (isset($before_icon_attributes) && count($before_icon_attributes)) {
foreach ($before_icon_attributes as $before_icon_attr_name => $before_icon_attr_val) {
$beforeIconAttrString .= $before_icon_attr_name . '="' . $before_icon_attr_val . '" ';
}
}
$html .= '<' . $before_icon . ' ' . $beforeIconAttrString . '>';
}
$html .= '<span aria-hidden="true" class="eltdf-icon-font-elegant ' . $icon . ' ' . $iconClass . '" ' . $iconAttributesString . '></span>';
if (isset($before_icon) && $before_icon !== '') {
$html .= '</' . $before_icon . '>';
}
return $html;
}
public function getSearchIcon() {
return $this->render('icon_search');
}
public function getSearchClose() {
return $this->render('icon_close');
}
public function getDropdownCartIcon() {
return $this->render('icon_cart_alt');
}
public function getMenuIcon() {
return $this->render('icon_menu');
}
public function getMenuCloseIcon() {
return $this->render('icon_close');
}
public function getBackToTopIcon() {
return $this->render('arrow_carrot-up ');
}
public function getMobileMenuIcon() {
return $this->render('icon_menu');
}
public function getQuoteIcon() {
return $this->render('icon_quotations');
}
public function getFacebookIcon() {
return 'social_facebook';
}
public function getTwitterIcon() {
return 'social_twitter';
}
public function getGooglePlusIcon() {
return 'social_googleplus';
}
public function getLinkedInIcon() {
return 'social_linkedin';
}
public function getTumblrIcon() {
return 'social_tumblr ';
}
public function getPinterestIcon() {
return 'social_pinterest';
}
public function getVKIcon() {
return '';
}
}

View File

@@ -0,0 +1,34 @@
<?php
if(!defined('ABSPATH')) exit;
/**
* Interface iCallaElatedIconCollection
*/
interface iCallaElatedIconCollection {
/**
* @param string $title title of icon collection
* @param string $param param that will be used in shortcodes
*/
public function __construct($title_label = "", $param = "");
/**
* Method that returns $icons property
* @return mixed
*/
public function getIconsArray();
/**
* Generates HTML for provided icon and parameters
* @param $icon string
* @param array $params
* @return mixed
*/
public function render($icon, $params = array());
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons();
}

View File

@@ -0,0 +1,753 @@
<?php
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.iconcollection.interface.php";
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.fontawesome.php";
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.fontelegant.php";
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.ionicons.php";
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.lineaicons.php";
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.linearicons.php";
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.simplelineicons.php";
include ELATED_FRAMEWORK_ROOT_DIR . "/lib/eltdf.icons/eltdf.dripicons.php";
/*
Class: CallaElatedIconCollections
A class that initializes Elated Icon Collections
*/
class CallaElatedIconCollections
{
private static $instance;
public $iconCollections;
public $VCParamsArray;
public $iconPackParamName;
private function __construct() {
$this->iconPackParamName = 'icon_pack';
$this->initIconCollections();
}
public static function get_instance() {
if (null == self::$instance) {
self::$instance = new self;
}
return self::$instance;
}
/**
* Method that adds individual collections to set of collections
*/
private function initIconCollections() {
$this->addIconCollection('font_awesome', new CallaElatedIconsFontAwesome("Font Awesome", "fa_icon"));
$this->addIconCollection('font_elegant', new CallaElatedIconsFontElegant("Font Elegant", "fe_icon"));
$this->addIconCollection('ion_icons', new CallaElatedIonIcons("Ion Icons", "ion_icon"));
$this->addIconCollection('linea_icons', new CallaElatedLineaIcons('Linea Icons', 'linea_icon'));
$this->addIconCollection('linear_icons', new CallaElatedLinearIcons('Linear Icons', 'linear_icon'));
$this->addIconCollection('simple_line_icons', new CallaElatedSimpleLineIcons('Simple Line Icons', 'simple_line_icon'));
$this->addIconCollection('dripicons', new CallaElatedDripicons('Dripicons', 'dripicon'));
}
public function getIconsMetaBoxOrOption($attributes) {
$scope = '';
$label = '';
$parent = '';
$name = '';
$defaul_icon_pack = '';
$default_icon = '';
$type = '';
$field_type = '';
extract($attributes);
$icon_collections = $this->getCollectionsWithSocialIcons();
$options = array(
'font_awesome' => esc_html__('Font Awesome', 'calla'),
'font_elegant' => esc_html__('Font Elegant', 'calla'),
'ion_icons' => esc_html__('Ion Icons', 'calla'),
'simple_line_icons' => esc_html__('Simple Line Icons', 'calla')
);
if ($scope == 'regular') {
$options = array(
'font_awesome' => esc_html__('Font Awesome', 'calla'),
'font_elegant' => esc_html__('Font Elegant', 'calla'),
'ion_icons' => esc_html__('Ion Icons', 'calla'),
'linea_icons' => esc_html__('Linea Icons', 'calla'),
'linear_icons' => esc_html__('Linear Icons', 'calla'),
'simple_line_icons' => esc_html__('Simple Line Icons', 'calla'),
'dripicons' => esc_html__('Dripicons', 'calla')
);
}
if ($type == 'meta-box') {
calla_elated_create_meta_box_field(
array(
'parent' => $parent,
'type' => 'select' . $field_type,
'name' => $name,
'default_value' => $defaul_icon_pack,
'label' => $label,
'options' => $options
)
);
} else if ($type == 'option') {
calla_elated_add_admin_field(
array(
'parent' => $parent,
'type' => 'select' . $field_type,
'name' => $name,
'default_value' => $defaul_icon_pack,
'label' => $label,
'options' => $options
)
);
}
foreach ($icon_collections as $collection_key => $collection_object) {
if ($scope == 'regular') {
$icons_array = $collection_object->getIconsArray();
} else {
$icons_array = $collection_object->getSocialIconsArray();
}
$icon_collections_keys = array_keys($icon_collections);
unset($icon_collections_keys[array_search($collection_key, $icon_collections_keys)]);
$eltd_icon_hide_values = $icon_collections_keys;
array_push ($eltd_icon_hide_values,''); //add empty value for icon switcher
$eltd_icon_pack_container = calla_elated_add_admin_container(
array(
'parent' => $parent,
'name' => $name . '_' . $collection_object->param . '_container',
'simple' => $field_type == 'simple' ? true : false,
'dependency' => array(
'hide' => array(
$name => $eltd_icon_hide_values
)
)
)
);
if ($type == 'meta-box') {
calla_elated_create_meta_box_field(
array(
'parent' => $eltd_icon_pack_container,
'type' => 'select' . $field_type,
'name' => $name . '_' . $collection_object->param,
'default_value' => $default_icon,
'label' => $collection_object->title,
'options' => $icons_array
)
);
} else if ($type == 'option') {
calla_elated_add_admin_field(
array(
'parent' => $eltd_icon_pack_container,
'type' => 'select' . $field_type,
'name' => $name . '_' . $collection_object->param,
'default_value' => $default_icon,
'label' => $collection_object->title,
'options' => $icons_array
)
);
}
}
}
public function getVCParamsArray($iconPackDependency = array(), $iconCollectionPrefix = "", $emptyIconPack = false) {
if ($emptyIconPack) {
$iconCollectionsVC = $this->getIconCollectionsVCEmpty();
} else {
$iconCollectionsVC = $this->getIconCollectionsVC();
}
$iconPackParams = array(
'type' => 'dropdown',
'heading' => esc_html__('Icon Pack', 'calla'),
'param_name' => $this->iconPackParamName,
'value' => $iconCollectionsVC,
'save_always' => true
);
if ($iconPackDependency !== "") {
$iconPackParams["dependency"] = $iconPackDependency;
}
$iconPackParams = array($iconPackParams);
$iconSetParams = array();
if (is_array($this->iconCollections) && count($this->iconCollections)) {
foreach ($this->iconCollections as $key => $collection) {
$iconSetParams[] = array(
'type' => 'dropdown',
'heading' => esc_html__('Icon', 'calla'),
'param_name' => $iconCollectionPrefix . $collection->param,
'value' => $collection->getIconsArray(),
'dependency' => array('element' => $this->iconPackParamName, 'value' => array($key)),
'save_always' => true
);
}
}
return array_merge($iconPackParams, $iconSetParams);
}
public function getSocialVCParamsArray($iconPackDependency = array(), $iconCollectionPrefix = "", $emptyIconPack = false, $exclude = '') {
if ($emptyIconPack) {
$iconCollectionsVC = $this->getIconCollectionsVCEmptyExclude($exclude);
} else {
$iconCollectionsVC = $this->getIconCollectionsVCExclude($exclude);
}
$iconPackParams = array(
'type' => 'dropdown',
'heading' => esc_html__('Icon Pack', 'calla'),
'param_name' => $this->iconPackParamName,
'value' => $iconCollectionsVC,
'save_always' => true
);
if ($iconPackDependency !== "") {
$iconPackParams["dependency"] = $iconPackDependency;
}
$iconPackParams = array($iconPackParams);
$iconCollections = $this->iconCollections;
if (is_array($exclude) && count($exclude)) {
foreach ($exclude as $exclude_key) {
if (array_key_exists($exclude_key, $this->iconCollections)) {
unset($iconCollections[$exclude_key]);
}
}
} else {
if (array_key_exists($exclude, $this->iconCollections)) {
unset($iconCollections[$exclude]);
}
}
$iconSetParams = array();
if (is_array($iconCollections) && count($iconCollections)) {
foreach ($iconCollections as $key => $collection) {
$iconSetParams[] = array(
'type' => 'dropdown',
'class' => '',
'heading' => esc_html__('Icon', 'calla'),
'param_name' => $iconCollectionPrefix . $collection->param,
'value' => $collection->getSocialIconsArrayVC(),
'dependency' => array('element' => $this->iconPackParamName, 'value' => array($key)),
'save_always' => true
);
}
}
return array_merge($iconPackParams, $iconSetParams);
}
public function getIconWidgetParamsArray() {
$iconPackParams[] = array(
'type' => 'dropdown',
'name' => 'icon_pack',
'title' => esc_html__('Icon Pack', 'calla'),
'options' => array(
'font_awesome' => esc_html__('Font Awesome', 'calla'),
'font_elegant' => esc_html__('Font Elegant', 'calla'),
'ion_icons' => esc_html__('Ion Icons', 'calla'),
'linea_icons' => esc_html__('Linea Icons', 'calla'),
'linear_icons' => esc_html__('Linear Icons', 'calla'),
'simple_line_icons' => esc_html__('Simple Line Icons', 'calla'),
'dripicons' => esc_html__('Dripicons', 'calla')
)
);
$iconSetParams = array();
if (is_array($this->iconCollections) && count($this->iconCollections)) {
foreach ($this->iconCollections as $key => $collection) {
$iconSetParams[] = array(
'type' => 'dropdown',
'title' => $collection->title . ' Icon',
'name' => $collection->param,
'options' => array_flip($collection->getIconsArray())
);
}
}
return array_merge($iconPackParams, $iconSetParams);
}
public function getSocialIconWidgetMultipleParamsArray($count) {
$iconOps = array();
$iconCollectionsVC = $this->getCollectionsWithSocialIcons();
$iconPackParams[] = array(
'type' => 'dropdown',
'name' => 'icon_pack',
'title' => esc_html__('Icon Pack', 'calla'),
'options' => array(
'font_awesome' => esc_html__('Font Awesome', 'calla'),
'font_elegant' => esc_html__('Font Elegant', 'calla'),
'ion_icons' => esc_html__('Ion Icons', 'calla'),
'simple_line_icons' => esc_html__('Simple Line Icons', 'calla'),
)
);
for ( $n = 1; $n <= $count; $n++ ) {
if ( is_array( $iconCollectionsVC ) && count( $iconCollectionsVC ) ) {
foreach ( $iconCollectionsVC as $key => $collection ) {
$iconOps[] = array(
'type' => 'dropdown',
'name' => $collection->param . '_' . $n,
'title' => sprintf( esc_html__( 'Icon %s %s Icon', 'calla' ), $n, $collection->title ),
'options' => array_flip( $collection->getSocialIconsArrayVC() )
);
}
}
$iconOps[] = array(
'type' => 'textfield',
'name' => 'link_'.$n,
'title' => sprintf( esc_html__( 'Link %s', 'calla' ), $n )
);
$iconOps[] = array(
'type' => 'dropdown',
'name' => 'target_'.$n,
'title' => sprintf( esc_html__( 'Link Target %s', 'calla' ), $n ),
'options' => calla_elated_get_link_target_array()
);
}
return array_merge($iconPackParams, $iconOps);
}
public function getSocialIconWidgetParamsArray() {
$iconCollectionsVC = $this->getCollectionsWithSocialIcons();
$iconPackParams[] = array(
'type' => 'dropdown',
'title' => esc_html__('Icon Pack', 'calla'),
'name' => 'icon_pack',
'options' => array(
'font_awesome' => esc_html__('Font Awesome', 'calla'),
'font_elegant' => esc_html__('Font Elegant', 'calla'),
'ion_icons' => esc_html__('Ion Icons', 'calla'),
'simple_line_icons' => esc_html__('Simple Line Icons', 'calla')
)
);
$iconSetParams = array();
if (is_array($iconCollectionsVC) && count($iconCollectionsVC)) {
foreach ($iconCollectionsVC as $key => $collection) {
$iconSetParams[] = array(
'type' => 'dropdown',
'title' => $collection->title . ' Icon',
'name' => $collection->param,
'options' => array_flip($collection->getSocialIconsArrayVC())
);
}
}
return array_merge($iconPackParams, $iconSetParams);
}
public function getCollectionsWithIcons() {
$collectionsWithIcons = array();
foreach ($this->iconCollections as $key => $collection) {
$collectionsWithIcons[$key] = $collection;
}
return $collectionsWithIcons;
}
public function getCollectionsWithSocialIcons() {
$collectionsWithSocial = array();
foreach ($this->iconCollections as $key => $collection) {
if ($collection->hasSocialIcons()) {
$collectionsWithSocial[$key] = $collection;
}
}
return $collectionsWithSocial;
}
public function getIconSizesArray() {
return array(
"Tiny" => "fa-lg",
"Small" => "fa-2x",
"Medium" => "fa-3x",
"Large" => "fa-4x",
"Very Large" => "fa-5x"
);
}
public function getIconSizeClass($iconSize) {
switch ($iconSize) {
case "fa-lg":
$iconSize = "eltdf-tiny-icon";
break;
case "fa-2x":
$iconSize = "eltdf-small-icon";
break;
case "fa-3x":
$iconSize = "eltdf-medium-icon";
break;
case "fa-4x":
$iconSize = "eltdf-large-icon";
break;
case "fa-5x":
$iconSize = "eltdf-huge-icon";
break;
default:
$iconSize = "eltdf-small-icon";
}
return $iconSize;
}
/**
* @param $key
*
* @return bool
*/
public function getIconCollectionParamNameByKey($key) {
$collection = $this->getIconCollection($key);
if ($collection) {
return $collection->param;
}
return false;
}
public function getShortcodeParams($iconCollectionPrefix = "") {
$iconCollectionsParam = array();
foreach ($this->iconCollections as $key => $collection) {
$iconCollectionsParam[$iconCollectionPrefix . $collection->param] = '';
}
return array_merge(array($this->iconPackParamName => '',), $iconCollectionsParam);
}
public function addIconCollection($key, $value) {
$this->iconCollections[$key] = $value;
}
public function getIconCollection($key) {
if (array_key_exists($key, $this->iconCollections)) {
return $this->iconCollections[$key];
}
return false;
}
public function getIconCollectionIcons(iCallaElatedIconCollection $collection) {
return $collection->getIconsArray();
}
public function getIconCollectionsVC() {
$vc_array = array();
foreach ($this->iconCollections as $key => $collection) {
$vc_array[$collection->title] = $key;
}
return $vc_array;
}
public function getIconCollectionsVCExclude($exclude) {
$array = $this->getIconCollectionsVC();
if (is_array($exclude) && count($exclude)) {
foreach ($exclude as $key) {
if (($x = array_search($key, $array)) !== false) {
unset($array[$x]);
}
}
} else {
if (($x = array_search($exclude, $array)) !== false) {
unset($array[$x]);
}
}
return $array;
}
public function getIconCollectionsKeys() {
return array_keys($this->iconCollections);
}
/**
* Method that returns an array of 'param' attribute of each icon collection
* @return array array of param attributes
*/
public function getIconCollectionsParams() {
$paramArray = array();
if (is_array($this->iconCollections) && count($this->iconCollections)) {
foreach ($this->iconCollections as $key => $obj) {
$paramArray[] = $obj->param;
}
}
return $paramArray;
}
/**
* Method that returns an array of 'param' attribute of each icon collection with social icons
* @return array array of param attributes
*/
public function getSocialIconCollectionsParams() {
$paramArray = array();
if (is_array($this->getCollectionsWithSocialIcons()) && count($this->getCollectionsWithSocialIcons())) {
foreach ($this->getCollectionsWithSocialIcons() as $key => $obj) {
$paramArray[] = $obj->param;
}
}
return $paramArray;
}
public function getIconCollections() {
$array = array();
foreach ($this->iconCollections as $key => $collection) {
$array[$key] = $collection->title;
}
return $array;
}
public function getIconCollectionsEmpty($no_empty_key = "") {
$array = array();
$array[$no_empty_key] = esc_html__( 'No Icon', 'calla');
foreach ($this->iconCollections as $key => $collection) {
$array[$key] = $collection->title;
}
return $array;
}
public function getIconCollectionsVCEmpty() {
$vc_array = array();
$vc_array[ esc_html__( 'No Icon', 'calla' ) ] = '';
foreach ($this->iconCollections as $key => $collection) {
$vc_array[$collection->title] = $key;
}
return $vc_array;
}
public function getIconCollectionsVCEmptyExclude($key) {
$array = $this->getIconCollectionsVCEmpty();
if (($x = array_search($key, $array)) !== false) {
unset($array[$x]);
}
return $array;
}
public function getIconCollectionsExclude($exclude) {
$array = $this->getIconCollections();
if (is_array($exclude) && count($exclude)) {
foreach ($exclude as $exclude_key) {
if (array_key_exists($exclude_key, $array)) {
unset($array[$exclude_key]);
}
}
} else {
if (array_key_exists($exclude, $array)) {
unset($array[$exclude]);
}
}
return $array;
}
public function hasIconCollection($key) {
return array_key_exists($key, $this->iconCollections);
}
/**
* Method that renders icon for given icon pack
*
* @param $icon string to render
* @param $iconPack string to render icon from
* @param $params array for icon
*
* @return mixed
*/
public function renderIcon($icon, $iconPack, $params = array()) {
if ($this->hasIconCollection($iconPack)) {
$iconObject = $this->getIconCollection($iconPack);
return $iconObject->render($icon, $params);
}
}
public function enqueueStyles() {
if (is_array($this->iconCollections) && count($this->iconCollections)) {
foreach ($this->iconCollections as $collection_key => $collection_obj) {
wp_enqueue_style('eltdf-' . $collection_key, $collection_obj->styleUrl);
}
}
}
# HEADER AND SIDE MENU ICONS
public function getSearchIcon($iconPack, $return) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getSearchIcon();
if ($return) {
return $iconHTML;
} else {
echo wp_kses_post($iconHTML);
}
}
}
public function getSearchClose($iconPack, $return) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getSearchClose();
if ($return) {
return $iconHTML;
} else {
echo wp_kses_post($iconHTML);
}
}
}
public function getDropdownCartIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getDropdownCartIcon();
echo wp_kses_post($iconHTML);
}
}
public function getMenuIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getMenuIcon();
echo wp_kses_post($iconHTML);
}
}
public function getMenuCloseIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getMenuCloseIcon();
echo wp_kses_post($iconHTML);
}
}
public function getBackToTopIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getBackToTopIcon();
echo wp_kses_post($iconHTML);
}
}
public function getMobileMenuIcon($iconPack, $return = false) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getMobileMenuIcon();
if ($return) {
return $iconHTML;
} else {
echo wp_kses_post($iconHTML);
}
}
}
public function getQuoteIcon($iconPack, $return = false) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
$iconHTML = $iconsObject->getQuoteIcon();
if ($return) {
return $iconHTML;
} else {
echo wp_kses_post($iconHTML);
}
}
}
# SOCIAL SIDEBAR ICONS
public function getFacebookIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
return $iconsObject->getFacebookIcon();
}
}
public function getTwitterIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
return $iconsObject->getTwitterIcon();
}
}
public function getGooglePlusIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
return $iconsObject->getGooglePlusIcon();
}
}
public function getLinkedInIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
return $iconsObject->getLinkedInIcon();
}
}
public function getTumblrIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
return $iconsObject->getTumblrIcon();
}
}
public function getPinterestIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
return $iconsObject->getPinterestIcon();
}
}
public function getVKIcon($iconPack) {
if ($this->hasIconCollection($iconPack)) {
$iconsObject = $this->getIconCollection($iconPack);
return $iconsObject->getVKIcon();
}
}
}
if (!function_exists('calla_elated_activate_theme_icons')) {
function calla_elated_activate_theme_icons() {
global $calla_elated_IconCollections;
$calla_elated_IconCollections = CallaElatedIconCollections::get_instance();
}
add_action('after_setup_theme', 'calla_elated_activate_theme_icons');
}

View File

@@ -0,0 +1,982 @@
<?php
class CallaElatedIonIcons implements iCallaElatedIconCollection {
public $icons;
public $socialIcons;
public $title;
public $param;
public $styleUrl;
function __construct($title_label = "", $param = "") {
$this->icons = array();
$this->socialIcons = array();
$this->title = $title_label;
$this->param = $param;
$this->setIconsArray();
$this->setSocialIconsArray();
$this->styleUrl = ELATED_ASSETS_ROOT . "/css/ion-icons/css/ionicons.min.css";
}
public function setIconsArray() {
$this->icons = array(
'' => '',
'ion-alert' => 'ion-alert',
'ion-alert-circled' => 'ion-alert-circled',
'ion-android-add' => 'ion-android-add',
'ion-android-add-circle' => 'ion-android-add-circle',
'ion-android-alarm-clock' => 'ion-android-alarm-clock',
'ion-android-alert' => 'ion-android-alert',
'ion-android-apps' => 'ion-android-apps',
'ion-android-archive' => 'ion-android-archive',
'ion-android-arrow-back' => 'ion-android-arrow-back',
'ion-android-arrow-down' => 'ion-android-arrow-down',
'ion-android-arrow-dropdown' => 'ion-android-arrow-dropdown',
'ion-android-arrow-dropdown-circle' => 'ion-android-arrow-dropdown-circle',
'ion-android-arrow-dropleft' => 'ion-android-arrow-dropleft',
'ion-android-arrow-dropleft-circle' => 'ion-android-arrow-dropleft-circle',
'ion-android-arrow-dropright' => 'ion-android-arrow-dropright',
'ion-android-arrow-dropright-circle' => 'ion-android-arrow-dropright-circle',
'ion-android-arrow-dropup' => 'ion-android-arrow-dropup',
'ion-android-arrow-dropup-circle' => 'ion-android-arrow-dropup-circle',
'ion-android-arrow-forward' => 'ion-android-arrow-forward',
'ion-android-arrow-up' => 'ion-android-arrow-up',
'ion-android-attach' => 'ion-android-attach',
'ion-android-bar' => 'ion-android-bar',
'ion-android-bicycle' => 'ion-android-bicycle',
'ion-android-boat' => 'ion-android-boat',
'ion-android-bookmark' => 'ion-android-bookmark',
'ion-android-bulb' => 'ion-android-bulb',
'ion-android-bus' => 'ion-android-bus',
'ion-android-calendar' => 'ion-android-calendar',
'ion-android-call' => 'ion-android-call',
'ion-android-camera' => 'ion-android-camera',
'ion-android-cancel' => 'ion-android-cancel',
'ion-android-car' => 'ion-android-car',
'ion-android-cart' => 'ion-android-cart',
'ion-android-chat' => 'ion-android-chat',
'ion-android-checkbox' => 'ion-android-checkbox',
'ion-android-checkbox-blank' => 'ion-android-checkbox-blank',
'ion-android-checkbox-outline' => 'ion-android-checkbox-outline',
'ion-android-checkbox-outline-blank' => 'ion-android-checkbox-outline-blank',
'ion-android-checkmark-circle' => 'ion-android-checkmark-circle',
'ion-android-clipboard' => 'ion-android-clipboard',
'ion-android-close' => 'ion-android-close',
'ion-android-cloud' => 'ion-android-cloud',
'ion-android-cloud-circle' => 'ion-android-cloud-circle',
'ion-android-cloud-done' => 'ion-android-cloud-done',
'ion-android-cloud-outline' => 'ion-android-cloud-outline',
'ion-android-color-palette' => 'ion-android-color-palette',
'ion-android-compass' => 'ion-android-compass',
'ion-android-contact' => 'ion-android-contact',
'ion-android-contacts' => 'ion-android-contacts',
'ion-android-contract' => 'ion-android-contract',
'ion-android-create' => 'ion-android-create',
'ion-android-delete' => 'ion-android-delete',
'ion-android-desktop' => 'ion-android-desktop',
'ion-android-document' => 'ion-android-document',
'ion-android-done' => 'ion-android-done',
'ion-android-done-all' => 'ion-android-done-all',
'ion-android-download' => 'ion-android-download',
'ion-android-drafts' => 'ion-android-drafts',
'ion-android-exit' => 'ion-android-exit',
'ion-android-expand' => 'ion-android-expand',
'ion-android-favorite' => 'ion-android-favorite',
'ion-android-favorite-outline' => 'ion-android-favorite-outline',
'ion-android-film' => 'ion-android-film',
'ion-android-folder' => 'ion-android-folder',
'ion-android-folder-open' => 'ion-android-folder-open',
'ion-android-funnel' => 'ion-android-funnel',
'ion-android-globe' => 'ion-android-globe',
'ion-android-hand' => 'ion-android-hand',
'ion-android-hangout' => 'ion-android-hangout',
'ion-android-happy' => 'ion-android-happy',
'ion-android-home' => 'ion-android-home',
'ion-android-image' => 'ion-android-image',
'ion-android-laptop' => 'ion-android-laptop',
'ion-android-list' => 'ion-android-list',
'ion-android-locate' => 'ion-android-locate',
'ion-android-lock' => 'ion-android-lock',
'ion-android-mail' => 'ion-android-mail',
'ion-android-map' => 'ion-android-map',
'ion-android-menu' => 'ion-android-menu',
'ion-android-microphone' => 'ion-android-microphone',
'ion-android-microphone-off' => 'ion-android-microphone-off',
'ion-android-more-horizontal' => 'ion-android-more-horizontal',
'ion-android-more-vertical' => 'ion-android-more-vertical',
'ion-android-navigate' => 'ion-android-navigate',
'ion-android-notifications' => 'ion-android-notifications',
'ion-android-notifications-none' => 'ion-android-notifications-none',
'ion-android-notifications-off' => 'ion-android-notifications-off',
'ion-android-open' => 'ion-android-open',
'ion-android-options' => 'ion-android-options',
'ion-android-people' => 'ion-android-people',
'ion-android-person' => 'ion-android-person',
'ion-android-person-add' => 'ion-android-person-add',
'ion-android-phone-landscape' => 'ion-android-phone-landscape',
'ion-android-phone-portrait' => 'ion-android-phone-portrait',
'ion-android-pin' => 'ion-android-pin',
'ion-android-plane' => 'ion-android-plane',
'ion-android-playstore' => 'ion-android-playstore',
'ion-android-print' => 'ion-android-print',
'ion-android-radio-button-off' => 'ion-android-radio-button-off',
'ion-android-radio-button-on' => 'ion-android-radio-button-on',
'ion-android-refresh' => 'ion-android-refresh',
'ion-android-remove' => 'ion-android-remove',
'ion-android-remove-circle' => 'ion-android-remove-circle',
'ion-android-restaurant' => 'ion-android-restaurant',
'ion-android-sad' => 'ion-android-sad',
'ion-android-search' => 'ion-android-search',
'ion-android-send' => 'ion-android-send',
'ion-android-settings' => 'ion-android-settings',
'ion-android-share' => 'ion-android-share',
'ion-android-share-alt' => 'ion-android-share-alt',
'ion-android-star' => 'ion-android-star',
'ion-android-star-half' => 'ion-android-star-half',
'ion-android-star-outline' => 'ion-android-star-outline',
'ion-android-stopwatch' => 'ion-android-stopwatch',
'ion-android-subway' => 'ion-android-subway',
'ion-android-sunny' => 'ion-android-sunny',
'ion-android-sync' => 'ion-android-sync',
'ion-android-textsms' => 'ion-android-textsms',
'ion-android-time' => 'ion-android-time',
'ion-android-train' => 'ion-android-train',
'ion-android-unlock' => 'ion-android-unlock',
'ion-android-upload' => 'ion-android-upload',
'ion-android-volume-down' => 'ion-android-volume-down',
'ion-android-volume-mute' => 'ion-android-volume-mute',
'ion-android-volume-off' => 'ion-android-volume-off',
'ion-android-volume-up' => 'ion-android-volume-up',
'ion-android-walk' => 'ion-android-walk',
'ion-android-warning' => 'ion-android-warning',
'ion-android-watch' => 'ion-android-watch',
'ion-android-wifi' => 'ion-android-wifi',
'ion-aperture' => 'ion-aperture',
'ion-archive' => 'ion-archive',
'ion-arrow-down-a' => 'ion-arrow-down-a',
'ion-arrow-down-b' => 'ion-arrow-down-b',
'ion-arrow-down-c' => 'ion-arrow-down-c',
'ion-arrow-expand' => 'ion-arrow-expand',
'ion-arrow-graph-down-left' => 'ion-arrow-graph-down-left',
'ion-arrow-graph-down-right' => 'ion-arrow-graph-down-right',
'ion-arrow-graph-up-left' => 'ion-arrow-graph-up-left',
'ion-arrow-graph-up-right' => 'ion-arrow-graph-up-right',
'ion-arrow-left-a' => 'ion-arrow-left-a',
'ion-arrow-left-b' => 'ion-arrow-left-b',
'ion-arrow-left-c' => 'ion-arrow-left-c',
'ion-arrow-move' => 'ion-arrow-move',
'ion-arrow-resize' => 'ion-arrow-resize',
'ion-arrow-return-left' => 'ion-arrow-return-left',
'ion-arrow-return-right' => 'ion-arrow-return-right',
'ion-arrow-right-a' => 'ion-arrow-right-a',
'ion-arrow-right-b' => 'ion-arrow-right-b',
'ion-arrow-right-c' => 'ion-arrow-right-c',
'ion-arrow-shrink' => 'ion-arrow-shrink',
'ion-arrow-swap' => 'ion-arrow-swap',
'ion-arrow-up-a' => 'ion-arrow-up-a',
'ion-arrow-up-b' => 'ion-arrow-up-b',
'ion-arrow-up-c' => 'ion-arrow-up-c',
'ion-asterisk' => 'ion-asterisk',
'ion-at' => 'ion-at',
'ion-backspace' => 'ion-backspace',
'ion-backspace-outline' => 'ion-backspace-outline',
'ion-bag' => 'ion-bag',
'ion-battery-charging' => 'ion-battery-charging',
'ion-battery-empty' => 'ion-battery-empty',
'ion-battery-full' => 'ion-battery-full',
'ion-battery-half' => 'ion-battery-half',
'ion-battery-low' => 'ion-battery-low',
'ion-beaker' => 'ion-beaker',
'ion-beer' => 'ion-beer',
'ion-bluetooth' => 'ion-bluetooth',
'ion-bonfire' => 'ion-bonfire',
'ion-bookmark' => 'ion-bookmark',
'ion-bowtie' => 'ion-bowtie',
'ion-briefcase' => 'ion-briefcase',
'ion-bug' => 'ion-bug',
'ion-calculator' => 'ion-calculator',
'ion-calendar' => 'ion-calendar',
'ion-camera' => 'ion-camera',
'ion-card' => 'ion-card',
'ion-cash' => 'ion-cash',
'ion-chatbox' => 'ion-chatbox',
'ion-chatbox-working' => 'ion-chatbox-working',
'ion-chatboxes' => 'ion-chatboxes',
'ion-chatbubble' => 'ion-chatbubble',
'ion-chatbubble-working' => 'ion-chatbubble-working',
'ion-chatbubbles' => 'ion-chatbubbles',
'ion-checkmark' => 'ion-checkmark',
'ion-checkmark-circled' => 'ion-checkmark-circled',
'ion-checkmark-round' => 'ion-checkmark-round',
'ion-chevron-down' => 'ion-chevron-down',
'ion-chevron-left' => 'ion-chevron-left',
'ion-chevron-right' => 'ion-chevron-right',
'ion-chevron-up' => 'ion-chevron-up',
'ion-clipboard' => 'ion-clipboard',
'ion-clock' => 'ion-clock',
'ion-close' => 'ion-close',
'ion-close-circled' => 'ion-close-circled',
'ion-close-round' => 'ion-close-round',
'ion-closed-captioning' => 'ion-closed-captioning',
'ion-cloud' => 'ion-cloud',
'ion-code' => 'ion-code',
'ion-code-download' => 'ion-code-download',
'ion-code-working' => 'ion-code-working',
'ion-coffee' => 'ion-coffee',
'ion-compass' => 'ion-compass',
'ion-compose' => 'ion-compose',
'ion-connection-bars' => 'ion-connection-bars',
'ion-contrast' => 'ion-contrast',
'ion-crop' => 'ion-crop',
'ion-cube' => 'ion-cube',
'ion-disc' => 'ion-disc',
'ion-document' => 'ion-document',
'ion-document-text' => 'ion-document-text',
'ion-drag' => 'ion-drag',
'ion-earth' => 'ion-earth',
'ion-easel' => 'ion-easel',
'ion-edit' => 'ion-edit',
'ion-egg' => 'ion-egg',
'ion-eject' => 'ion-eject',
'ion-email' => 'ion-email',
'ion-email-unread' => 'ion-email-unread',
'ion-erlenmeyer-flask' => 'ion-erlenmeyer-flask',
'ion-erlenmeyer-flask-bubbles' => 'ion-erlenmeyer-flask-bubbles',
'ion-eye' => 'ion-eye',
'ion-eye-disabled' => 'ion-eye-disabled',
'ion-female' => 'ion-female',
'ion-filing' => 'ion-filing',
'ion-film-marker' => 'ion-film-marker',
'ion-fireball' => 'ion-fireball',
'ion-flag' => 'ion-flag',
'ion-flame' => 'ion-flame',
'ion-flash' => 'ion-flash',
'ion-flash-off' => 'ion-flash-off',
'ion-folder' => 'ion-folder',
'ion-fork' => 'ion-fork',
'ion-fork-repo' => 'ion-fork-repo',
'ion-forward' => 'ion-forward',
'ion-funnel' => 'ion-funnel',
'ion-gear-a' => 'ion-gear-a',
'ion-gear-b' => 'ion-gear-b',
'ion-grid' => 'ion-grid',
'ion-hammer' => 'ion-hammer',
'ion-happy' => 'ion-happy',
'ion-happy-outline' => 'ion-happy-outline',
'ion-headphone' => 'ion-headphone',
'ion-heart' => 'ion-heart',
'ion-heart-broken' => 'ion-heart-broken',
'ion-help' => 'ion-help',
'ion-help-buoy' => 'ion-help-buoy',
'ion-help-circled' => 'ion-help-circled',
'ion-home' => 'ion-home',
'ion-icecream' => 'ion-icecream',
'ion-image' => 'ion-image',
'ion-images' => 'ion-images',
'ion-information' => 'ion-information',
'ion-information-circled' => 'ion-information-circled',
'ion-ionic' => 'ion-ionic',
'ion-ios-alarm' => 'ion-ios-alarm',
'ion-ios-alarm-outline' => 'ion-ios-alarm-outline',
'ion-ios-albums' => 'ion-ios-albums',
'ion-ios-albums-outline' => 'ion-ios-albums-outline',
'ion-ios-americanfootball' => 'ion-ios-americanfootball',
'ion-ios-americanfootball-outline' => 'ion-ios-americanfootball-outline',
'ion-ios-analytics' => 'ion-ios-analytics',
'ion-ios-analytics-outline' => 'ion-ios-analytics-outline',
'ion-ios-arrow-back' => 'ion-ios-arrow-back',
'ion-ios-arrow-down' => 'ion-ios-arrow-down',
'ion-ios-arrow-forward' => 'ion-ios-arrow-forward',
'ion-ios-arrow-left' => 'ion-ios-arrow-left',
'ion-ios-arrow-right' => 'ion-ios-arrow-right',
'ion-ios-arrow-thin-down' => 'ion-ios-arrow-thin-down',
'ion-ios-arrow-thin-left' => 'ion-ios-arrow-thin-left',
'ion-ios-arrow-thin-right' => 'ion-ios-arrow-thin-right',
'ion-ios-arrow-thin-up' => 'ion-ios-arrow-thin-up',
'ion-ios-arrow-up' => 'ion-ios-arrow-up',
'ion-ios-at' => 'ion-ios-at',
'ion-ios-at-outline' => 'ion-ios-at-outline',
'ion-ios-barcode' => 'ion-ios-barcode',
'ion-ios-barcode-outline' => 'ion-ios-barcode-outline',
'ion-ios-baseball' => 'ion-ios-baseball',
'ion-ios-baseball-outline' => 'ion-ios-baseball-outline',
'ion-ios-basketball' => 'ion-ios-basketball',
'ion-ios-basketball-outline' => 'ion-ios-basketball-outline',
'ion-ios-bell' => 'ion-ios-bell',
'ion-ios-bell-outline' => 'ion-ios-bell-outline',
'ion-ios-body' => 'ion-ios-body',
'ion-ios-body-outline' => 'ion-ios-body-outline',
'ion-ios-bolt' => 'ion-ios-bolt',
'ion-ios-bolt-outline' => 'ion-ios-bolt-outline',
'ion-ios-book' => 'ion-ios-book',
'ion-ios-book-outline' => 'ion-ios-book-outline',
'ion-ios-bookmarks' => 'ion-ios-bookmarks',
'ion-ios-bookmarks-outline' => 'ion-ios-bookmarks-outline',
'ion-ios-box' => 'ion-ios-box',
'ion-ios-box-outline' => 'ion-ios-box-outline',
'ion-ios-briefcase' => 'ion-ios-briefcase',
'ion-ios-briefcase-outline' => 'ion-ios-briefcase-outline',
'ion-ios-browsers' => 'ion-ios-browsers',
'ion-ios-browsers-outline' => 'ion-ios-browsers-outline',
'ion-ios-calculator' => 'ion-ios-calculator',
'ion-ios-calculator-outline' => 'ion-ios-calculator-outline',
'ion-ios-calendar' => 'ion-ios-calendar',
'ion-ios-calendar-outline' => 'ion-ios-calendar-outline',
'ion-ios-camera' => 'ion-ios-camera',
'ion-ios-camera-outline' => 'ion-ios-camera-outline',
'ion-ios-cart' => 'ion-ios-cart',
'ion-ios-cart-outline' => 'ion-ios-cart-outline',
'ion-ios-chatboxes' => 'ion-ios-chatboxes',
'ion-ios-chatboxes-outline' => 'ion-ios-chatboxes-outline',
'ion-ios-chatbubble' => 'ion-ios-chatbubble',
'ion-ios-chatbubble-outline' => 'ion-ios-chatbubble-outline',
'ion-ios-checkmark' => 'ion-ios-checkmark',
'ion-ios-checkmark-empty' => 'ion-ios-checkmark-empty',
'ion-ios-checkmark-outline' => 'ion-ios-checkmark-outline',
'ion-ios-circle-filled' => 'ion-ios-circle-filled',
'ion-ios-circle-outline' => 'ion-ios-circle-outline',
'ion-ios-clock' => 'ion-ios-clock',
'ion-ios-clock-outline' => 'ion-ios-clock-outline',
'ion-ios-close' => 'ion-ios-close',
'ion-ios-close-empty' => 'ion-ios-close-empty',
'ion-ios-close-outline' => 'ion-ios-close-outline',
'ion-ios-cloud' => 'ion-ios-cloud',
'ion-ios-cloud-download' => 'ion-ios-cloud-download',
'ion-ios-cloud-download-outline' => 'ion-ios-cloud-download-outline',
'ion-ios-cloud-outline' => 'ion-ios-cloud-outline',
'ion-ios-cloud-upload' => 'ion-ios-cloud-upload',
'ion-ios-cloud-upload-outline' => 'ion-ios-cloud-upload-outline',
'ion-ios-cloudy' => 'ion-ios-cloudy',
'ion-ios-cloudy-night' => 'ion-ios-cloudy-night',
'ion-ios-cloudy-night-outline' => 'ion-ios-cloudy-night-outline',
'ion-ios-cloudy-outline' => 'ion-ios-cloudy-outline',
'ion-ios-cog' => 'ion-ios-cog',
'ion-ios-cog-outline' => 'ion-ios-cog-outline',
'ion-ios-color-filter' => 'ion-ios-color-filter',
'ion-ios-color-filter-outline' => 'ion-ios-color-filter-outline',
'ion-ios-color-wand' => 'ion-ios-color-wand',
'ion-ios-color-wand-outline' => 'ion-ios-color-wand-outline',
'ion-ios-compose' => 'ion-ios-compose',
'ion-ios-compose-outline' => 'ion-ios-compose-outline',
'ion-ios-contact' => 'ion-ios-contact',
'ion-ios-contact-outline' => 'ion-ios-contact-outline',
'ion-ios-copy' => 'ion-ios-copy',
'ion-ios-copy-outline' => 'ion-ios-copy-outline',
'ion-ios-crop' => 'ion-ios-crop',
'ion-ios-crop-strong' => 'ion-ios-crop-strong',
'ion-ios-download' => 'ion-ios-download',
'ion-ios-download-outline' => 'ion-ios-download-outline',
'ion-ios-drag' => 'ion-ios-drag',
'ion-ios-email' => 'ion-ios-email',
'ion-ios-email-outline' => 'ion-ios-email-outline',
'ion-ios-eye' => 'ion-ios-eye',
'ion-ios-eye-outline' => 'ion-ios-eye-outline',
'ion-ios-fastforward' => 'ion-ios-fastforward',
'ion-ios-fastforward-outline' => 'ion-ios-fastforward-outline',
'ion-ios-filing' => 'ion-ios-filing',
'ion-ios-filing-outline' => 'ion-ios-filing-outline',
'ion-ios-film' => 'ion-ios-film',
'ion-ios-film-outline' => 'ion-ios-film-outline',
'ion-ios-flag' => 'ion-ios-flag',
'ion-ios-flag-outline' => 'ion-ios-flag-outline',
'ion-ios-flame' => 'ion-ios-flame',
'ion-ios-flame-outline' => 'ion-ios-flame-outline',
'ion-ios-flask' => 'ion-ios-flask',
'ion-ios-flask-outline' => 'ion-ios-flask-outline',
'ion-ios-flower' => 'ion-ios-flower',
'ion-ios-flower-outline' => 'ion-ios-flower-outline',
'ion-ios-folder' => 'ion-ios-folder',
'ion-ios-folder-outline' => 'ion-ios-folder-outline',
'ion-ios-football' => 'ion-ios-football',
'ion-ios-football-outline' => 'ion-ios-football-outline',
'ion-ios-game-controller-a' => 'ion-ios-game-controller-a',
'ion-ios-game-controller-a-outline' => 'ion-ios-game-controller-a-outline',
'ion-ios-game-controller-b' => 'ion-ios-game-controller-b',
'ion-ios-game-controller-b-outline' => 'ion-ios-game-controller-b-outline',
'ion-ios-gear' => 'ion-ios-gear',
'ion-ios-gear-outline' => 'ion-ios-gear-outline',
'ion-ios-glasses' => 'ion-ios-glasses',
'ion-ios-glasses-outline' => 'ion-ios-glasses-outline',
'ion-ios-grid-view' => 'ion-ios-grid-view',
'ion-ios-grid-view-outline' => 'ion-ios-grid-view-outline',
'ion-ios-heart' => 'ion-ios-heart',
'ion-ios-heart-outline' => 'ion-ios-heart-outline',
'ion-ios-help' => 'ion-ios-help',
'ion-ios-help-empty' => 'ion-ios-help-empty',
'ion-ios-help-outline' => 'ion-ios-help-outline',
'ion-ios-home' => 'ion-ios-home',
'ion-ios-home-outline' => 'ion-ios-home-outline',
'ion-ios-infinite' => 'ion-ios-infinite',
'ion-ios-infinite-outline' => 'ion-ios-infinite-outline',
'ion-ios-information' => 'ion-ios-information',
'ion-ios-information-empty' => 'ion-ios-information-empty',
'ion-ios-information-outline' => 'ion-ios-information-outline',
'ion-ios-ionic-outline' => 'ion-ios-ionic-outline',
'ion-ios-keypad' => 'ion-ios-keypad',
'ion-ios-keypad-outline' => 'ion-ios-keypad-outline',
'ion-ios-lightbulb' => 'ion-ios-lightbulb',
'ion-ios-lightbulb-outline' => 'ion-ios-lightbulb-outline',
'ion-ios-list' => 'ion-ios-list',
'ion-ios-list-outline' => 'ion-ios-list-outline',
'ion-ios-location' => 'ion-ios-location',
'ion-ios-location-outline' => 'ion-ios-location-outline',
'ion-ios-locked' => 'ion-ios-locked',
'ion-ios-locked-outline' => 'ion-ios-locked-outline',
'ion-ios-loop' => 'ion-ios-loop',
'ion-ios-loop-strong' => 'ion-ios-loop-strong',
'ion-ios-medical' => 'ion-ios-medical',
'ion-ios-medical-outline' => 'ion-ios-medical-outline',
'ion-ios-medkit' => 'ion-ios-medkit',
'ion-ios-medkit-outline' => 'ion-ios-medkit-outline',
'ion-ios-mic' => 'ion-ios-mic',
'ion-ios-mic-off' => 'ion-ios-mic-off',
'ion-ios-mic-outline' => 'ion-ios-mic-outline',
'ion-ios-minus' => 'ion-ios-minus',
'ion-ios-minus-empty' => 'ion-ios-minus-empty',
'ion-ios-minus-outline' => 'ion-ios-minus-outline',
'ion-ios-monitor' => 'ion-ios-monitor',
'ion-ios-monitor-outline' => 'ion-ios-monitor-outline',
'ion-ios-moon' => 'ion-ios-moon',
'ion-ios-moon-outline' => 'ion-ios-moon-outline',
'ion-ios-more' => 'ion-ios-more',
'ion-ios-more-outline' => 'ion-ios-more-outline',
'ion-ios-musical-note' => 'ion-ios-musical-note',
'ion-ios-musical-notes' => 'ion-ios-musical-notes',
'ion-ios-navigate' => 'ion-ios-navigate',
'ion-ios-navigate-outline' => 'ion-ios-navigate-outline',
'ion-ios-nutrition' => 'ion-ios-nutrition',
'ion-ios-nutrition-outline' => 'ion-ios-nutrition-outline',
'ion-ios-paper' => 'ion-ios-paper',
'ion-ios-paper-outline' => 'ion-ios-paper-outline',
'ion-ios-paperplane' => 'ion-ios-paperplane',
'ion-ios-paperplane-outline' => 'ion-ios-paperplane-outline',
'ion-ios-partlysunny' => 'ion-ios-partlysunny',
'ion-ios-partlysunny-outline' => 'ion-ios-partlysunny-outline',
'ion-ios-pause' => 'ion-ios-pause',
'ion-ios-pause-outline' => 'ion-ios-pause-outline',
'ion-ios-paw' => 'ion-ios-paw',
'ion-ios-paw-outline' => 'ion-ios-paw-outline',
'ion-ios-people' => 'ion-ios-people',
'ion-ios-people-outline' => 'ion-ios-people-outline',
'ion-ios-person' => 'ion-ios-person',
'ion-ios-person-outline' => 'ion-ios-person-outline',
'ion-ios-personadd' => 'ion-ios-personadd',
'ion-ios-personadd-outline' => 'ion-ios-personadd-outline',
'ion-ios-photos' => 'ion-ios-photos',
'ion-ios-photos-outline' => 'ion-ios-photos-outline',
'ion-ios-pie' => 'ion-ios-pie',
'ion-ios-pie-outline' => 'ion-ios-pie-outline',
'ion-ios-pint' => 'ion-ios-pint',
'ion-ios-pint-outline' => 'ion-ios-pint-outline',
'ion-ios-play' => 'ion-ios-play',
'ion-ios-play-outline' => 'ion-ios-play-outline',
'ion-ios-plus' => 'ion-ios-plus',
'ion-ios-plus-empty' => 'ion-ios-plus-empty',
'ion-ios-plus-outline' => 'ion-ios-plus-outline',
'ion-ios-pricetag' => 'ion-ios-pricetag',
'ion-ios-pricetag-outline' => 'ion-ios-pricetag-outline',
'ion-ios-pricetags' => 'ion-ios-pricetags',
'ion-ios-pricetags-outline' => 'ion-ios-pricetags-outline',
'ion-ios-printer' => 'ion-ios-printer',
'ion-ios-printer-outline' => 'ion-ios-printer-outline',
'ion-ios-pulse' => 'ion-ios-pulse',
'ion-ios-pulse-strong' => 'ion-ios-pulse-strong',
'ion-ios-rainy' => 'ion-ios-rainy',
'ion-ios-rainy-outline' => 'ion-ios-rainy-outline',
'ion-ios-recording' => 'ion-ios-recording',
'ion-ios-recording-outline' => 'ion-ios-recording-outline',
'ion-ios-redo' => 'ion-ios-redo',
'ion-ios-redo-outline' => 'ion-ios-redo-outline',
'ion-ios-refresh' => 'ion-ios-refresh',
'ion-ios-refresh-empty' => 'ion-ios-refresh-empty',
'ion-ios-refresh-outline' => 'ion-ios-refresh-outline',
'ion-ios-reload' => 'ion-ios-reload',
'ion-ios-reverse-camera' => 'ion-ios-reverse-camera',
'ion-ios-reverse-camera-outline' => 'ion-ios-reverse-camera-outline',
'ion-ios-rewind' => 'ion-ios-rewind',
'ion-ios-rewind-outline' => 'ion-ios-rewind-outline',
'ion-ios-rose' => 'ion-ios-rose',
'ion-ios-rose-outline' => 'ion-ios-rose-outline',
'ion-ios-search' => 'ion-ios-search',
'ion-ios-search-strong' => 'ion-ios-search-strong',
'ion-ios-settings' => 'ion-ios-settings',
'ion-ios-settings-strong' => 'ion-ios-settings-strong',
'ion-ios-shuffle' => 'ion-ios-shuffle',
'ion-ios-shuffle-strong' => 'ion-ios-shuffle-strong',
'ion-ios-skipbackward' => 'ion-ios-skipbackward',
'ion-ios-skipbackward-outline' => 'ion-ios-skipbackward-outline',
'ion-ios-skipforward' => 'ion-ios-skipforward',
'ion-ios-skipforward-outline' => 'ion-ios-skipforward-outline',
'ion-ios-snowy' => 'ion-ios-snowy',
'ion-ios-speedometer' => 'ion-ios-speedometer',
'ion-ios-speedometer-outline' => 'ion-ios-speedometer-outline',
'ion-ios-star' => 'ion-ios-star',
'ion-ios-star-half' => 'ion-ios-star-half',
'ion-ios-star-outline' => 'ion-ios-star-outline',
'ion-ios-stopwatch' => 'ion-ios-stopwatch',
'ion-ios-stopwatch-outline' => 'ion-ios-stopwatch-outline',
'ion-ios-sunny' => 'ion-ios-sunny',
'ion-ios-sunny-outline' => 'ion-ios-sunny-outline',
'ion-ios-telephone' => 'ion-ios-telephone',
'ion-ios-telephone-outline' => 'ion-ios-telephone-outline',
'ion-ios-tennisball' => 'ion-ios-tennisball',
'ion-ios-tennisball-outline' => 'ion-ios-tennisball-outline',
'ion-ios-thunderstorm' => 'ion-ios-thunderstorm',
'ion-ios-thunderstorm-outline' => 'ion-ios-thunderstorm-outline',
'ion-ios-time' => 'ion-ios-time',
'ion-ios-time-outline' => 'ion-ios-time-outline',
'ion-ios-timer' => 'ion-ios-timer',
'ion-ios-timer-outline' => 'ion-ios-timer-outline',
'ion-ios-toggle' => 'ion-ios-toggle',
'ion-ios-toggle-outline' => 'ion-ios-toggle-outline',
'ion-ios-trash' => 'ion-ios-trash',
'ion-ios-trash-outline' => 'ion-ios-trash-outline',
'ion-ios-undo' => 'ion-ios-undo',
'ion-ios-undo-outline' => 'ion-ios-undo-outline',
'ion-ios-unlocked' => 'ion-ios-unlocked',
'ion-ios-unlocked-outline' => 'ion-ios-unlocked-outline',
'ion-ios-upload' => 'ion-ios-upload',
'ion-ios-upload-outline' => 'ion-ios-upload-outline',
'ion-ios-videocam' => 'ion-ios-videocam',
'ion-ios-videocam-outline' => 'ion-ios-videocam-outline',
'ion-ios-volume-high' => 'ion-ios-volume-high',
'ion-ios-volume-low' => 'ion-ios-volume-low',
'ion-ios-wineglass' => 'ion-ios-wineglass',
'ion-ios-wineglass-outline' => 'ion-ios-wineglass-outline',
'ion-ios-world' => 'ion-ios-world',
'ion-ios-world-outline' => 'ion-ios-world-outline',
'ion-ipad' => 'ion-ipad',
'ion-iphone' => 'ion-iphone',
'ion-ipod' => 'ion-ipod',
'ion-jet' => 'ion-jet',
'ion-key' => 'ion-key',
'ion-knife' => 'ion-knife',
'ion-laptop' => 'ion-laptop',
'ion-leaf' => 'ion-leaf',
'ion-levels' => 'ion-levels',
'ion-lightbulb' => 'ion-lightbulb',
'ion-link' => 'ion-link',
'ion-load-a' => 'ion-load-a',
'ion-load-b' => 'ion-load-b',
'ion-load-c' => 'ion-load-c',
'ion-load-d' => 'ion-load-d',
'ion-location' => 'ion-location',
'ion-lock-combination' => 'ion-lock-combination',
'ion-locked' => 'ion-locked',
'ion-log-in' => 'ion-log-in',
'ion-log-out' => 'ion-log-out',
'ion-loop' => 'ion-loop',
'ion-magnet' => 'ion-magnet',
'ion-male' => 'ion-male',
'ion-man' => 'ion-man',
'ion-map' => 'ion-map',
'ion-medkit' => 'ion-medkit',
'ion-merge' => 'ion-merge',
'ion-mic-a' => 'ion-mic-a',
'ion-mic-b' => 'ion-mic-b',
'ion-mic-c' => 'ion-mic-c',
'ion-minus' => 'ion-minus',
'ion-minus-circled' => 'ion-minus-circled',
'ion-minus-round' => 'ion-minus-round',
'ion-model-s' => 'ion-model-s',
'ion-monitor' => 'ion-monitor',
'ion-more' => 'ion-more',
'ion-mouse' => 'ion-mouse',
'ion-music-note' => 'ion-music-note',
'ion-navicon' => 'ion-navicon',
'ion-navicon-round' => 'ion-navicon-round',
'ion-navigate' => 'ion-navigate',
'ion-network' => 'ion-network',
'ion-no-smoking' => 'ion-no-smoking',
'ion-nuclear' => 'ion-nuclear',
'ion-outlet' => 'ion-outlet',
'ion-paintbrush' => 'ion-paintbrush',
'ion-paintbucket' => 'ion-paintbucket',
'ion-paper-airplane' => 'ion-paper-airplane',
'ion-paperclip' => 'ion-paperclip',
'ion-pause' => 'ion-pause',
'ion-person' => 'ion-person',
'ion-person-add' => 'ion-person-add',
'ion-person-stalker' => 'ion-person-stalker',
'ion-pie-graph' => 'ion-pie-graph',
'ion-pin' => 'ion-pin',
'ion-pinpoint' => 'ion-pinpoint',
'ion-pizza' => 'ion-pizza',
'ion-plane' => 'ion-plane',
'ion-planet' => 'ion-planet',
'ion-play' => 'ion-play',
'ion-playstation' => 'ion-playstation',
'ion-plus' => 'ion-plus',
'ion-plus-circled' => 'ion-plus-circled',
'ion-plus-round' => 'ion-plus-round',
'ion-podium' => 'ion-podium',
'ion-pound' => 'ion-pound',
'ion-power' => 'ion-power',
'ion-pricetag' => 'ion-pricetag',
'ion-pricetags' => 'ion-pricetags',
'ion-printer' => 'ion-printer',
'ion-pull-request' => 'ion-pull-request',
'ion-qr-scanner' => 'ion-qr-scanner',
'ion-quote' => 'ion-quote',
'ion-radio-waves' => 'ion-radio-waves',
'ion-record' => 'ion-record',
'ion-refresh' => 'ion-refresh',
'ion-reply' => 'ion-reply',
'ion-reply-all' => 'ion-reply-all',
'ion-ribbon-a' => 'ion-ribbon-a',
'ion-ribbon-b' => 'ion-ribbon-b',
'ion-sad' => 'ion-sad',
'ion-sad-outline' => 'ion-sad-outline',
'ion-scissors' => 'ion-scissors',
'ion-search' => 'ion-search',
'ion-settings' => 'ion-settings',
'ion-share' => 'ion-share',
'ion-shuffle' => 'ion-shuffle',
'ion-skip-backward' => 'ion-skip-backward',
'ion-skip-forward' => 'ion-skip-forward',
'ion-social-android' => 'ion-social-android',
'ion-social-android-outline' => 'ion-social-android-outline',
'ion-social-angular' => 'ion-social-angular',
'ion-social-angular-outline' => 'ion-social-angular-outline',
'ion-social-apple' => 'ion-social-apple',
'ion-social-apple-outline' => 'ion-social-apple-outline',
'ion-social-bitcoin' => 'ion-social-bitcoin',
'ion-social-bitcoin-outline' => 'ion-social-bitcoin-outline',
'ion-social-buffer' => 'ion-social-buffer',
'ion-social-buffer-outline' => 'ion-social-buffer-outline',
'ion-social-chrome' => 'ion-social-chrome',
'ion-social-chrome-outline' => 'ion-social-chrome-outline',
'ion-social-codepen' => 'ion-social-codepen',
'ion-social-codepen-outline' => 'ion-social-codepen-outline',
'ion-social-css3' => 'ion-social-css3',
'ion-social-css3-outline' => 'ion-social-css3-outline',
'ion-social-designernews' => 'ion-social-designernews',
'ion-social-designernews-outline' => 'ion-social-designernews-outline',
'ion-social-dribbble' => 'ion-social-dribbble',
'ion-social-dribbble-outline' => 'ion-social-dribbble-outline',
'ion-social-dropbox' => 'ion-social-dropbox',
'ion-social-dropbox-outline' => 'ion-social-dropbox-outline',
'ion-social-euro' => 'ion-social-euro',
'ion-social-euro-outline' => 'ion-social-euro-outline',
'ion-social-facebook' => 'ion-social-facebook',
'ion-social-facebook-outline' => 'ion-social-facebook-outline',
'ion-social-foursquare' => 'ion-social-foursquare',
'ion-social-foursquare-outline' => 'ion-social-foursquare-outline',
'ion-social-freebsd-devil' => 'ion-social-freebsd-devil',
'ion-social-github' => 'ion-social-github',
'ion-social-github-outline' => 'ion-social-github-outline',
'ion-social-google' => 'ion-social-google',
'ion-social-google-outline' => 'ion-social-google-outline',
'ion-social-googleplus' => 'ion-social-googleplus',
'ion-social-googleplus-outline' => 'ion-social-googleplus-outline',
'ion-social-hackernews' => 'ion-social-hackernews',
'ion-social-hackernews-outline' => 'ion-social-hackernews-outline',
'ion-social-html5' => 'ion-social-html5',
'ion-social-html5-outline' => 'ion-social-html5-outline',
'ion-social-instagram' => 'ion-social-instagram',
'ion-social-instagram-outline' => 'ion-social-instagram-outline',
'ion-social-javascript' => 'ion-social-javascript',
'ion-social-javascript-outline' => 'ion-social-javascript-outline',
'ion-social-linkedin' => 'ion-social-linkedin',
'ion-social-linkedin-outline' => 'ion-social-linkedin-outline',
'ion-social-markdown' => 'ion-social-markdown',
'ion-social-nodejs' => 'ion-social-nodejs',
'ion-social-octocat' => 'ion-social-octocat',
'ion-social-pinterest' => 'ion-social-pinterest',
'ion-social-pinterest-outline' => 'ion-social-pinterest-outline',
'ion-social-python' => 'ion-social-python',
'ion-social-reddit' => 'ion-social-reddit',
'ion-social-reddit-outline' => 'ion-social-reddit-outline',
'ion-social-rss' => 'ion-social-rss',
'ion-social-rss-outline' => 'ion-social-rss-outline',
'ion-social-sass' => 'ion-social-sass',
'ion-social-skype' => 'ion-social-skype',
'ion-social-skype-outline' => 'ion-social-skype-outline',
'ion-social-snapchat' => 'ion-social-snapchat',
'ion-social-snapchat-outline' => 'ion-social-snapchat-outline',
'ion-social-tumblr' => 'ion-social-tumblr',
'ion-social-tumblr-outline' => 'ion-social-tumblr-outline',
'ion-social-tux' => 'ion-social-tux',
'ion-social-twitch' => 'ion-social-twitch',
'ion-social-twitch-outline' => 'ion-social-twitch-outline',
'ion-social-twitter' => 'ion-social-twitter',
'ion-social-twitter-outline' => 'ion-social-twitter-outline',
'ion-social-usd' => 'ion-social-usd',
'ion-social-usd-outline' => 'ion-social-usd-outline',
'ion-social-vimeo' => 'ion-social-vimeo',
'ion-social-vimeo-outline' => 'ion-social-vimeo-outline',
'ion-social-whatsapp' => 'ion-social-whatsapp',
'ion-social-whatsapp-outline' => 'ion-social-whatsapp-outline',
'ion-social-windows' => 'ion-social-windows',
'ion-social-windows-outline' => 'ion-social-windows-outline',
'ion-social-wordpress' => 'ion-social-wordpress',
'ion-social-wordpress-outline' => 'ion-social-wordpress-outline',
'ion-social-yahoo' => 'ion-social-yahoo',
'ion-social-yahoo-outline' => 'ion-social-yahoo-outline',
'ion-social-yen' => 'ion-social-yen',
'ion-social-yen-outline' => 'ion-social-yen-outline',
'ion-social-youtube' => 'ion-social-youtube',
'ion-social-youtube-outline' => 'ion-social-youtube-outline',
'ion-soup-can' => 'ion-soup-can',
'ion-soup-can-outline' => 'ion-soup-can-outline',
'ion-speakerphone' => 'ion-speakerphone',
'ion-speedometer' => 'ion-speedometer',
'ion-spoon' => 'ion-spoon',
'ion-star' => 'ion-star',
'ion-stats-bars' => 'ion-stats-bars',
'ion-steam' => 'ion-steam',
'ion-stop' => 'ion-stop',
'ion-thermometer' => 'ion-thermometer',
'ion-thumbsdown' => 'ion-thumbsdown',
'ion-thumbsup' => 'ion-thumbsup',
'ion-toggle' => 'ion-toggle',
'ion-toggle-filled' => 'ion-toggle-filled',
'ion-transgender' => 'ion-transgender',
'ion-trash-a' => 'ion-trash-a',
'ion-trash-b' => 'ion-trash-b',
'ion-trophy' => 'ion-trophy',
'ion-tshirt' => 'ion-tshirt',
'ion-tshirt-outline' => 'ion-tshirt-outline',
'ion-umbrella' => 'ion-umbrella',
'ion-university' => 'ion-university',
'ion-unlocked' => 'ion-unlocked',
'ion-upload' => 'ion-upload',
'ion-usb' => 'ion-usb',
'ion-videocamera' => 'ion-videocamera',
'ion-volume-high' => 'ion-volume-high',
'ion-volume-low' => 'ion-volume-low',
'ion-volume-medium' => 'ion-volume-medium',
'ion-volume-mute' => 'ion-volume-mute',
'ion-wand' => 'ion-wand',
'ion-waterdrop' => 'ion-waterdrop',
'ion-wifi' => 'ion-wifi',
'ion-wineglass' => 'ion-wineglass',
'ion-woman' => 'ion-woman',
'ion-wrench' => 'ion-wrench',
'ion-xbox' => 'ion-xbox'
);
}
private function setSocialIconsArray() {
$this->socialIcons = array(
'' => '',
'ion-social-android' => 'Android',
'ion-social-android-outline' => 'Android outline',
'ion-social-angular' => 'Angular',
'ion-social-angular-outline' => 'Angular outline',
'ion-social-apple' => 'Apple',
'ion-social-apple-outline' => 'Apple outline',
'ion-social-bitcoin' => 'Bitcoin',
'ion-social-bitcoin-outline' => 'Bitcoin outline',
'ion-social-buffer' => 'Buffer',
'ion-social-buffer-outline' => 'Buffer outline',
'ion-social-chrome' => 'Chrome',
'ion-social-chrome-outline' => 'Chrome outline',
'ion-social-codepen' => 'Codepen',
'ion-social-codepen-outline' => 'Codepen outline',
'ion-social-css3' => 'CSS3',
'ion-social-css3-outline' => 'CSS3 outline',
'ion-social-designernews' => 'Designernews',
'ion-social-designernews-outline' => 'Designernews outline',
'ion-social-dribbble' => 'Dribbble',
'ion-social-dribbble-outline' => 'Dribbble outline',
'ion-social-dropbox' => 'Dropbox',
'ion-social-dropbox-outline' => 'Dropbox outline',
'ion-social-euro' => 'Euro',
'ion-social-euro-outline' => 'Euro outline',
'ion-social-facebook' => 'Facebook',
'ion-social-facebook-outline' => 'Facebook outline',
'ion-social-foursquare' => 'Foursquare',
'ion-social-foursquare-outline' => 'Foursquare outline',
'ion-social-freebsd-devil' => 'Freebsd devil',
'ion-social-github' => 'Github',
'ion-social-github-outline' => 'Github outline',
'ion-social-google' => 'Google',
'ion-social-google-outline' => 'Google outline',
'ion-social-googleplus' => 'Google plus',
'ion-social-googleplus-outline' => 'Google plus outline',
'ion-social-hackernews' => 'Hackernews',
'ion-social-hackernews-outline' => 'Hackernews outline',
'ion-social-html5' => 'HTML5',
'ion-social-html5-outline' => 'HTML5 outline',
'ion-social-instagram' => 'Instagram',
'ion-social-instagram-outline' => 'Instagram outline',
'ion-social-javascript' => 'Java Script',
'ion-social-javascript-outline' => 'Java Script outline',
'ion-social-linkedin' => 'Linkedin',
'ion-social-linkedin-outline' => 'Linkedin outline',
'ion-social-markdown' => 'Markdown',
'ion-social-nodejs' => 'Node.js',
'ion-social-octocat' => 'Octocat',
'ion-social-pinterest' => 'Pinterest',
'ion-social-pinterest-outline' => 'Pinterest outline',
'ion-social-python' => 'Python',
'ion-social-reddit' => 'Reddit',
'ion-social-reddit-outline' => 'Reddit outline',
'ion-social-rss' => 'RSS',
'ion-social-rss-outline' => 'RSS outline',
'ion-social-sass' => 'sass',
'ion-social-skype' => 'Skype',
'ion-social-skype-outline' => 'Skype outline',
'ion-social-snapchat' => 'Snapchat',
'ion-social-snapchat-outline' => 'Snapchat outline',
'ion-social-tumblr' => 'Tumblr',
'ion-social-tumblr-outline' => 'Tumblr outline',
'ion-social-tux' => 'Tux',
'ion-social-twitch' => 'Twitch',
'ion-social-twitch-outline' => 'Twitch outline',
'ion-social-twitter' => 'Twitter',
'ion-social-twitter-outline' => 'Twitter outline',
'ion-social-usd' => 'USD',
'ion-social-usd-outline' => 'USD outline',
'ion-social-vimeo' => 'Vimeo',
'ion-social-vimeo-outline' => 'Vimeo outline',
'ion-social-whatsapp' => 'Whatsapp',
'ion-social-whatsapp-outline' => 'Whatsapp outline',
'ion-social-windows' => 'Windows',
'ion-social-windows-outline' => 'Windows outline',
'ion-social-wordpress' => 'WordPress',
'ion-social-wordpress-outline' => 'WordPress outline',
'ion-social-yahoo' => 'Yahoo',
'ion-social-yahoo-outline' => 'Yahoo outline',
'ion-social-yen' => 'Yen',
'ion-social-yen-outline' => 'Yen outline',
'ion-social-youtube' => 'YouTube',
'ion-social-youtube-outline' => 'YouTube outline'
);
}
public function getIconsArray() {
return $this->icons;
}
public function getSocialIconsArray() {
return $this->socialIcons;
}
public function getSocialIconsArrayVC() {
return array_flip($this->getSocialIconsArray());
}
public function render($icon, $params = array()) {
$html = '';
extract($params);
$iconAttributesString = '';
$iconClass = '';
if (isset($icon_attributes) && count($icon_attributes)) {
foreach ($icon_attributes as $icon_attr_name => $icon_attr_val) {
if ($icon_attr_name === 'class') {
$iconClass = $icon_attr_val;
unset($icon_attributes[$icon_attr_name]);
} else {
$iconAttributesString .= $icon_attr_name . '="' . $icon_attr_val . '" ';
}
}
}
if (isset($before_icon) && $before_icon !== '') {
$beforeIconAttrString = '';
if (isset($before_icon_attributes) && count($before_icon_attributes)) {
foreach ($before_icon_attributes as $before_icon_attr_name => $before_icon_attr_val) {
$beforeIconAttrString .= $before_icon_attr_name . '="' . $before_icon_attr_val . '" ';
}
}
$html .= '<' . $before_icon . ' ' . $beforeIconAttrString . '>';
}
$html .= '<i class="eltdf-icon-ion-icon ' . $icon . ' ' . $iconClass . '" ' . $iconAttributesString . '></i>';
if (isset($before_icon) && $before_icon !== '') {
$html .= '</' . $before_icon . '>';
}
return $html;
}
public function getSearchIcon() {
return $this->render('ion-ios-search');
}
public function getSearchClose() {
return $this->render('ion-close');
}
public function getDropdownCartIcon() {
return $this->render('ion-android-cart');
}
public function getMenuIcon() {
return $this->render('ion-navicon');
}
public function getMenuCloseIcon() {
return $this->render('ion-close');
}
public function getBackToTopIcon() {
return $this->render('ion-chevron-up');
}
public function getMobileMenuIcon() {
return $this->render('ion-navicon');
}
public function getQuoteIcon() {
return $this->render('ion-quote');
}
public function getFacebookIcon() {
return 'ion-social-facebook';
}
public function getTwitterIcon() {
return 'ion-social-twitter';
}
public function getGooglePlusIcon() {
return 'ion-social-googleplus';
}
public function getLinkedInIcon() {
return 'ion-social-linkedin';
}
public function getTumblrIcon() {
return 'ion-social-tumblr';
}
public function getPinterestIcon() {
return 'ion-social-pinterest';
}
public function getVKIcon() {
return '';
}
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons() {
return true;
}
}

View File

@@ -0,0 +1,796 @@
<?php
class CallaElatedLineaIcons implements iCallaElatedIconCollection {
public $icons;
public $title;
public $param;
public $styleUrl;
public function __construct($title_label = "", $param = "") {
$this->icons = array();
$this->title = $title_label;
$this->param = $param;
$this->setIconsArray();
$this->styleUrl = ELATED_ASSETS_ROOT . "/css/linea-icons/style.css";
}
public function setIconsArray() {
$this->icons = array(
'icon-arrows-anticlockwise' => '\e000',
'icon-arrows-anticlockwise-dashed' => '\e001',
'icon-arrows-button-down' => '\e002',
'icon-arrows-button-off' => '\e003',
'icon-arrows-button-on' => '\e004',
'icon-arrows-button-up' => '\e005',
'icon-arrows-check' => '\e006',
'icon-arrows-circle-check' => '\e007',
'icon-arrows-circle-down' => '\e008',
'icon-arrows-circle-downleft' => '\e009',
'icon-arrows-circle-downright' => '\e00a',
'icon-arrows-circle-left' => '\e00b',
'icon-arrows-circle-minus' => '\e00c',
'icon-arrows-circle-plus' => '\e00d',
'icon-arrows-circle-remove' => '\e00e',
'icon-arrows-circle-right' => '\e00f',
'icon-arrows-circle-up' => '\e010',
'icon-arrows-circle-upleft' => '\e011',
'icon-arrows-circle-upright' => '\e012',
'icon-arrows-clockwise' => '\e013',
'icon-arrows-clockwise-dashed' => '\e014',
'icon-arrows-compress' => '\e015',
'icon-arrows-deny' => '\e016',
'icon-arrows-diagonal' => '\e017',
'icon-arrows-diagonal2' => '\e018',
'icon-arrows-down' => '\e019',
'icon-arrows-down-double' => '\e01a',
'icon-arrows-downleft' => '\e01b',
'icon-arrows-downright' => '\e01c',
'icon-arrows-drag-down' => '\e01d',
'icon-arrows-drag-down-dashed' => '\e01e',
'icon-arrows-drag-horiz' => '\e01f',
'icon-arrows-drag-left' => '\e020',
'icon-arrows-drag-left-dashed' => '\e021',
'icon-arrows-drag-right' => '\e022',
'icon-arrows-drag-right-dashed' => '\e023',
'icon-arrows-drag-up' => '\e024',
'icon-arrows-drag-up-dashed' => '\e025',
'icon-arrows-drag-vert' => '\e026',
'icon-arrows-exclamation' => '\e027',
'icon-arrows-expand' => '\e028',
'icon-arrows-expand-diagonal1' => '\e029',
'icon-arrows-expand-horizontal1' => '\e02a',
'icon-arrows-expand-vertical1' => '\e02b',
'icon-arrows-fit-horizontal' => '\e02c',
'icon-arrows-fit-vertical' => '\e02d',
'icon-arrows-glide' => '\e02e',
'icon-arrows-glide-horizontal' => '\e02f',
'icon-arrows-glide-vertical' => '\e030',
'icon-arrows-hamburger-2' => '\e032',
'icon-arrows-hamburger1' => '\e031',
'icon-arrows-horizontal' => '\e033',
'icon-arrows-info' => '\e034',
'icon-arrows-keyboard-alt' => '\e035',
'icon-arrows-keyboard-cmd' => '\e036',
'icon-arrows-keyboard-delete' => '\e037',
'icon-arrows-keyboard-down' => '\e038',
'icon-arrows-keyboard-left' => '\e039',
'icon-arrows-keyboard-return' => '\e03a',
'icon-arrows-keyboard-right' => '\e03b',
'icon-arrows-keyboard-shift' => '\e03c',
'icon-arrows-keyboard-tab' => '\e03d',
'icon-arrows-keyboard-up' => '\e03e',
'icon-arrows-left' => '\e03f',
'icon-arrows-left-double-32' => '\e040',
'icon-arrows-minus' => '\e041',
'icon-arrows-move' => '\e042',
'icon-arrows-move-bottom' => '\e044',
'icon-arrows-move-left' => '\e045',
'icon-arrows-move-right' => '\e046',
'icon-arrows-move-top' => '\e047',
'icon-arrows-move2' => '\e043',
'icon-arrows-plus' => '\e048',
'icon-arrows-question' => '\e049',
'icon-arrows-remove' => '\e04a',
'icon-arrows-right' => '\e04b',
'icon-arrows-right-double' => '\e04c',
'icon-arrows-rotate' => '\e04d',
'icon-arrows-rotate-anti' => '\e04e',
'icon-arrows-rotate-anti-dashed' => '\e04f',
'icon-arrows-rotate-dashed' => '\e050',
'icon-arrows-shrink' => '\e051',
'icon-arrows-shrink-diagonal1' => '\e052',
'icon-arrows-shrink-diagonal2' => '\e053',
'icon-arrows-shrink-horizonal2' => '\e054',
'icon-arrows-shrink-horizontal1' => '\e055',
'icon-arrows-shrink-vertical1' => '\e056',
'icon-arrows-shrink-vertical2' => '\e057',
'icon-arrows-sign-down' => '\e058',
'icon-arrows-sign-left' => '\e059',
'icon-arrows-sign-right' => '\e05a',
'icon-arrows-sign-up' => '\e05b',
'icon-arrows-slide-down1' => '\e05c',
'icon-arrows-slide-down2' => '\e05d',
'icon-arrows-slide-left1' => '\e05e',
'icon-arrows-slide-left2' => '\e05f',
'icon-arrows-slide-right1' => '\e060',
'icon-arrows-slide-right2' => '\e061',
'icon-arrows-slide-up1' => '\e062',
'icon-arrows-slide-up2' => '\e063',
'icon-arrows-slim-down' => '\e064',
'icon-arrows-slim-down-dashed' => '\e065',
'icon-arrows-slim-left' => '\e066',
'icon-arrows-slim-left-dashed' => '\e067',
'icon-arrows-slim-right' => '\e068',
'icon-arrows-slim-right-dashed' => '\e069',
'icon-arrows-slim-up' => '\e06a',
'icon-arrows-slim-up-dashed' => '\e06b',
'icon-arrows-square-check' => '\e06c',
'icon-arrows-square-down' => '\e06d',
'icon-arrows-square-downleft' => '\e06e',
'icon-arrows-square-downright' => '\e06f',
'icon-arrows-square-left' => '\e070',
'icon-arrows-square-minus' => '\e071',
'icon-arrows-square-plus' => '\e072',
'icon-arrows-square-remove' => '\e073',
'icon-arrows-square-right' => '\e074',
'icon-arrows-square-up' => '\e075',
'icon-arrows-square-upleft' => '\e076',
'icon-arrows-square-upright' => '\e077',
'icon-arrows-squares' => '\e078',
'icon-arrows-stretch-diagonal1' => '\e079',
'icon-arrows-stretch-diagonal2' => '\e07a',
'icon-arrows-stretch-diagonal3' => '\e07b',
'icon-arrows-stretch-diagonal4' => '\e07c',
'icon-arrows-stretch-horizontal1' => '\e07d',
'icon-arrows-stretch-horizontal2' => '\e07e',
'icon-arrows-stretch-vertical1' => '\e07f',
'icon-arrows-stretch-vertical2' => '\e080',
'icon-arrows-switch-horizontal' => '\e081',
'icon-arrows-switch-vertical' => '\e082',
'icon-arrows-up' => '\e083',
'icon-arrows-up-double-33' => '\e084',
'icon-arrows-upleft' => '\e085',
'icon-arrows-upright' => '\e086',
'icon-arrows-vertical' => '\e087',
'icon-basic-accelerator' => 'a',
'icon-basic-alarm' => 'b',
'icon-basic-anchor' => 'c',
'icon-basic-anticlockwise' => 'd',
'icon-basic-archive' => 'e',
'icon-basic-archive-full' => 'f',
'icon-basic-ban' => 'g',
'icon-basic-battery-charge' => 'h',
'icon-basic-battery-empty' => 'i',
'icon-basic-battery-full' => 'j',
'icon-basic-battery-half' => 'k',
'icon-basic-bolt' => 'l',
'icon-basic-book' => 'm',
'icon-basic-book-pen' => 'n',
'icon-basic-book-pencil' => 'o',
'icon-basic-bookmark' => 'p',
'icon-basic-calculator' => 'q',
'icon-basic-calendar' => 'r',
'icon-basic-cards-diamonds' => 's',
'icon-basic-cards-hearts' => 't',
'icon-basic-case' => 'u',
'icon-basic-chronometer' => 'v',
'icon-basic-clessidre' => 'w',
'icon-basic-clock' => 'x',
'icon-basic-clockwise' => 'y',
'icon-basic-cloud' => 'z',
'icon-basic-clubs' => 'A',
'icon-basic-compass' => 'B',
'icon-basic-cup' => 'C',
'icon-basic-diamonds' => 'D',
'icon-basic-display' => 'E',
'icon-basic-download' => 'F',
'icon-basic-elaboration-bookmark-checck' => 'a',
'icon-basic-elaboration-bookmark-minus' => 'b',
'icon-basic-elaboration-bookmark-plus' => 'c',
'icon-basic-elaboration-bookmark-remove' => 'd',
'icon-basic-elaboration-briefcase-check' => 'e',
'icon-basic-elaboration-briefcase-download' => 'f',
'icon-basic-elaboration-briefcase-flagged' => 'g',
'icon-basic-elaboration-briefcase-minus' => 'h',
'icon-basic-elaboration-briefcase-plus' => 'i',
'icon-basic-elaboration-briefcase-refresh' => 'j',
'icon-basic-elaboration-briefcase-remove' => 'k',
'icon-basic-elaboration-briefcase-search' => 'l',
'icon-basic-elaboration-briefcase-star' => 'm',
'icon-basic-elaboration-briefcase-upload' => 'n',
'icon-basic-elaboration-browser-check' => 'o',
'icon-basic-elaboration-browser-download' => 'p',
'icon-basic-elaboration-browser-minus' => 'q',
'icon-basic-elaboration-browser-plus' => 'r',
'icon-basic-elaboration-browser-refresh' => 's',
'icon-basic-elaboration-browser-remove' => 't',
'icon-basic-elaboration-browser-search' => 'u',
'icon-basic-elaboration-browser-star' => 'v',
'icon-basic-elaboration-browser-upload' => 'w',
'icon-basic-elaboration-calendar-check' => 'x',
'icon-basic-elaboration-calendar-cloud' => 'y',
'icon-basic-elaboration-calendar-download' => 'z',
'icon-basic-elaboration-calendar-empty' => 'A',
'icon-basic-elaboration-calendar-flagged' => 'B',
'icon-basic-elaboration-calendar-heart' => 'C',
'icon-basic-elaboration-calendar-minus' => 'D',
'icon-basic-elaboration-calendar-next' => 'E',
'icon-basic-elaboration-calendar-noaccess' => 'F',
'icon-basic-elaboration-calendar-pencil' => 'G',
'icon-basic-elaboration-calendar-plus' => 'H',
'icon-basic-elaboration-calendar-previous' => 'I',
'icon-basic-elaboration-calendar-refresh' => 'J',
'icon-basic-elaboration-calendar-remove' => 'K',
'icon-basic-elaboration-calendar-search' => 'L',
'icon-basic-elaboration-calendar-star' => 'M',
'icon-basic-elaboration-calendar-upload' => 'N',
'icon-basic-elaboration-cloud-check' => 'O',
'icon-basic-elaboration-cloud-download' => 'P',
'icon-basic-elaboration-cloud-minus' => 'Q',
'icon-basic-elaboration-cloud-noaccess' => 'R',
'icon-basic-elaboration-cloud-plus' => 'S',
'icon-basic-elaboration-cloud-refresh' => 'T',
'icon-basic-elaboration-cloud-remove' => 'U',
'icon-basic-elaboration-cloud-search' => 'V',
'icon-basic-elaboration-cloud-upload' => 'W',
'icon-basic-elaboration-document-check' => 'X',
'icon-basic-elaboration-document-cloud' => 'Y',
'icon-basic-elaboration-document-download' => 'Z',
'icon-basic-elaboration-document-flagged' => '0',
'icon-basic-elaboration-document-graph' => '1',
'icon-basic-elaboration-document-heart' => '2',
'icon-basic-elaboration-document-minus' => '3',
'icon-basic-elaboration-document-next' => '4',
'icon-basic-elaboration-document-noaccess' => '5',
'icon-basic-elaboration-document-note' => '6',
'icon-basic-elaboration-document-pencil' => '7',
'icon-basic-elaboration-document-picture' => '8',
'icon-basic-elaboration-document-plus' => '9',
'icon-basic-elaboration-document-previous' => '!',
'icon-basic-elaboration-document-refresh' => '\"',
'icon-basic-elaboration-document-remove' => '#',
'icon-basic-elaboration-document-search' => '$',
'icon-basic-elaboration-document-star' => '%',
'icon-basic-elaboration-document-upload' => '&',
'icon-basic-elaboration-folder-cloud' => '(',
'icon-basic-elaboration-folder-document' => ')',
'icon-basic-elaboration-folder-download' => '*',
'icon-basic-elaboration-folder-flagged' => '+',
'icon-basic-elaboration-folder-graph' => ',',
'icon-basic-elaboration-folder-heart' => '-',
'icon-basic-elaboration-folder-minus' => '.',
'icon-basic-elaboration-folder-next' => '/',
'icon-basic-elaboration-folder-noaccess' => ':',
'icon-basic-elaboration-folder-note' => ';',
'icon-basic-elaboration-folder-pencil' => '<',
'icon-basic-elaboration-folder-picture' => '=',
'icon-basic-elaboration-folder-plus' => '>',
'icon-basic-elaboration-folder-previous' => '?',
'icon-basic-elaboration-folder-refresh' => '@',
'icon-basic-elaboration-folder-remove' => '[',
'icon-basic-elaboration-folder-search' => ']',
'icon-basic-elaboration-folder-star' => '^',
'icon-basic-elaboration-folder-upload' => '_',
'icon-basic-elaboration-mail-check' => '`',
'icon-basic-elaboration-mail-cloud' => '{',
'icon-basic-elaboration-mail-document' => '|',
'icon-basic-elaboration-mail-download' => '}',
'icon-basic-elaboration-mail-flagged' => '~',
'icon-basic-elaboration-mail-heart' => '\\',
'icon-basic-elaboration-mail-next' => '\e000',
'icon-basic-elaboration-mail-noaccess' => '\e001',
'icon-basic-elaboration-mail-note' => '\e002',
'icon-basic-elaboration-mail-pencil' => '\e003',
'icon-basic-elaboration-mail-picture' => '\e004',
'icon-basic-elaboration-mail-previous' => '\e005',
'icon-basic-elaboration-mail-refresh' => '\e006',
'icon-basic-elaboration-mail-remove' => '\e007',
'icon-basic-elaboration-mail-search' => '\e008',
'icon-basic-elaboration-mail-star' => '\e009',
'icon-basic-elaboration-mail-upload' => '\e00a',
'icon-basic-elaboration-message-check' => '\e00b',
'icon-basic-elaboration-message-dots' => '\e00c',
'icon-basic-elaboration-message-happy' => '\e00d',
'icon-basic-elaboration-message-heart' => '\e00e',
'icon-basic-elaboration-message-minus' => '\e00f',
'icon-basic-elaboration-message-note' => '\e010',
'icon-basic-elaboration-message-plus' => '\e011',
'icon-basic-elaboration-message-refresh' => '\e012',
'icon-basic-elaboration-message-remove' => '\e013',
'icon-basic-elaboration-message-sad' => '\e014',
'icon-basic-elaboration-smartphone-cloud' => '\e015',
'icon-basic-elaboration-smartphone-heart' => '\e016',
'icon-basic-elaboration-smartphone-noaccess' => '\e017',
'icon-basic-elaboration-smartphone-note' => '\e018',
'icon-basic-elaboration-smartphone-pencil' => '\e019',
'icon-basic-elaboration-smartphone-picture' => '\e01a',
'icon-basic-elaboration-smartphone-refresh' => '\e01b',
'icon-basic-elaboration-smartphone-search' => '\e01c',
'icon-basic-elaboration-tablet-cloud' => '\e01d',
'icon-basic-elaboration-tablet-heart' => '\e01e',
'icon-basic-elaboration-tablet-noaccess' => '\e01f',
'icon-basic-elaboration-tablet-note' => '\e020',
'icon-basic-elaboration-tablet-pencil' => '\e021',
'icon-basic-elaboration-tablet-picture' => '\e022',
'icon-basic-elaboration-tablet-refresh' => '\e023',
'icon-basic-elaboration-tablet-search' => '\e024',
'icon-basic-elaboration-todolist-2' => '\e025',
'icon-basic-elaboration-todolist-check' => '\e026',
'icon-basic-elaboration-todolist-cloud' => '\e027',
'icon-basic-elaboration-todolist-download' => '\e028',
'icon-basic-elaboration-todolist-flagged' => '\e029',
'icon-basic-elaboration-todolist-minus' => '\e02a',
'icon-basic-elaboration-todolist-noaccess' => '\e02b',
'icon-basic-elaboration-todolist-pencil' => '\e02c',
'icon-basic-elaboration-todolist-plus' => '\e02d',
'icon-basic-elaboration-todolist-refresh' => '\e02e',
'icon-basic-elaboration-todolist-remove' => '\e02f',
'icon-basic-elaboration-todolist-search' => '\e030',
'icon-basic-elaboration-todolist-star' => '\e031',
'icon-basic-elaboration-todolist-upload' => '\e032',
'icon-basic-exclamation' => 'G',
'icon-basic-eye' => 'H',
'icon-basic-eye-closed' => 'I',
'icon-basic-female' => 'J',
'icon-basic-flag1' => 'K',
'icon-basic-flag2' => 'L',
'icon-basic-floppydisk' => 'M',
'icon-basic-folder' => 'N',
'icon-basic-folder-multiple' => 'O',
'icon-basic-gear' => 'P',
'icon-basic-geolocalize-01' => 'Q',
'icon-basic-geolocalize-05' => 'R',
'icon-basic-globe' => 'S',
'icon-basic-gunsight' => 'T',
'icon-basic-hammer' => 'U',
'icon-basic-headset' => 'V',
'icon-basic-heart' => 'W',
'icon-basic-heart-broken' => 'X',
'icon-basic-helm' => 'Y',
'icon-basic-home' => 'Z',
'icon-basic-info' => '0',
'icon-basic-ipod' => '1',
'icon-basic-joypad' => '2',
'icon-basic-key' => '3',
'icon-basic-keyboard' => '4',
'icon-basic-laptop' => '5',
'icon-basic-life-buoy' => '6',
'icon-basic-lightbulb' => '7',
'icon-basic-link' => '8',
'icon-basic-lock' => '9',
'icon-basic-lock-open' => '!',
'icon-basic-magic-mouse' => '\"',
'icon-basic-magnifier' => '#',
'icon-basic-magnifier-minus' => '$',
'icon-basic-magnifier-plus' => '%',
'icon-basic-mail' => '&',
'icon-basic-mail-open' => '(',
'icon-basic-mail-open-text' => ')',
'icon-basic-male' => '*',
'icon-basic-map' => '+',
'icon-basic-message' => ',',
'icon-basic-message-multiple' => '-',
'icon-basic-message-txt' => '.',
'icon-basic-mixer2' => '/',
'icon-basic-mouse' => ':',
'icon-basic-notebook' => ';',
'icon-basic-notebook-pen' => '<',
'icon-basic-notebook-pencil' => '=',
'icon-basic-paperplane' => '>',
'icon-basic-pencil-ruler' => '?',
'icon-basic-pencil-ruler-pen' => '@',
'icon-basic-photo' => '[',
'icon-basic-picture' => ']',
'icon-basic-picture-multiple' => '^',
'icon-basic-pin1' => '_',
'icon-basic-pin2' => '`',
'icon-basic-postcard' => '{',
'icon-basic-postcard-multiple' => '|',
'icon-basic-printer' => '}',
'icon-basic-question' => '~',
'icon-basic-rss' => '\\',
'icon-basic-server' => '\e000',
'icon-basic-server-cloud' => '\e002',
'icon-basic-server-download' => '\e003',
'icon-basic-server-upload' => '\e004',
'icon-basic-server2' => '\e001',
'icon-basic-settings' => '\e005',
'icon-basic-share' => '\e006',
'icon-basic-sheet' => '\e007',
'icon-basic-sheet-multiple' => '\e008',
'icon-basic-sheet-pen' => '\e009',
'icon-basic-sheet-pencil' => '\e00a',
'icon-basic-sheet-txt' => '\e00b',
'icon-basic-signs' => '\e00c',
'icon-basic-smartphone' => '\e00d',
'icon-basic-spades' => '\e00e',
'icon-basic-spread' => '\e00f',
'icon-basic-spread-bookmark' => '\e010',
'icon-basic-spread-text' => '\e011',
'icon-basic-spread-text-bookmark' => '\e012',
'icon-basic-star' => '\e013',
'icon-basic-tablet' => '\e014',
'icon-basic-target' => '\e015',
'icon-basic-todo' => '\e016',
'icon-basic-todo-pen' => '\e017',
'icon-basic-todo-pencil' => '\e018',
'icon-basic-todo-txt' => '\e019',
'icon-basic-todolist-pen' => '\e01a',
'icon-basic-todolist-pencil' => '\e01b',
'icon-basic-trashcan' => '\e01c',
'icon-basic-trashcan-full' => '\e01d',
'icon-basic-trashcan-refresh' => '\e01e',
'icon-basic-trashcan-remove' => '\e01f',
'icon-basic-upload' => '\e020',
'icon-basic-usb' => '\e021',
'icon-basic-video' => '\e022',
'icon-basic-watch' => '\e023',
'icon-basic-webpage' => '\e024',
'icon-basic-webpage-img-txt' => '\e025',
'icon-basic-webpage-multiple' => '\e026',
'icon-basic-webpage-txt' => '\e027',
'icon-basic-world' => '\e028',
'icon-ecommerce-bag' => 'a',
'icon-ecommerce-bag-check' => 'b',
'icon-ecommerce-bag-cloud' => 'c',
'icon-ecommerce-bag-download' => 'd',
'icon-ecommerce-bag-minus' => 'e',
'icon-ecommerce-bag-plus' => 'f',
'icon-ecommerce-bag-refresh' => 'g',
'icon-ecommerce-bag-remove' => 'h',
'icon-ecommerce-bag-search' => 'i',
'icon-ecommerce-bag-upload' => 'j',
'icon-ecommerce-banknote' => 'k',
'icon-ecommerce-banknotes' => 'l',
'icon-ecommerce-basket' => 'm',
'icon-ecommerce-basket-check' => 'n',
'icon-ecommerce-basket-cloud' => 'o',
'icon-ecommerce-basket-download' => 'p',
'icon-ecommerce-basket-minus' => 'q',
'icon-ecommerce-basket-plus' => 'r',
'icon-ecommerce-basket-refresh' => 's',
'icon-ecommerce-basket-remove' => 't',
'icon-ecommerce-basket-search' => 'u',
'icon-ecommerce-basket-upload' => 'v',
'icon-ecommerce-bath' => 'w',
'icon-ecommerce-cart' => 'x',
'icon-ecommerce-cart-check' => 'y',
'icon-ecommerce-cart-cloud' => 'z',
'icon-ecommerce-cart-content' => 'A',
'icon-ecommerce-cart-download' => 'B',
'icon-ecommerce-cart-minus' => 'C',
'icon-ecommerce-cart-plus' => 'D',
'icon-ecommerce-cart-refresh' => 'E',
'icon-ecommerce-cart-remove' => 'F',
'icon-ecommerce-cart-search' => 'G',
'icon-ecommerce-cart-upload' => 'H',
'icon-ecommerce-cent' => 'I',
'icon-ecommerce-colon' => 'J',
'icon-ecommerce-creditcard' => 'K',
'icon-ecommerce-diamond' => 'L',
'icon-ecommerce-dollar' => 'M',
'icon-ecommerce-euro' => 'N',
'icon-ecommerce-franc' => 'O',
'icon-ecommerce-gift' => 'P',
'icon-ecommerce-graph-decrease' => 'T',
'icon-ecommerce-graph-increase' => 'U',
'icon-ecommerce-graph1' => 'Q',
'icon-ecommerce-graph2' => 'R',
'icon-ecommerce-graph3' => 'S',
'icon-ecommerce-guarani' => 'V',
'icon-ecommerce-kips' => 'W',
'icon-ecommerce-lira' => 'X',
'icon-ecommerce-megaphone' => 'Y',
'icon-ecommerce-money' => 'Z',
'icon-ecommerce-naira' => '0',
'icon-ecommerce-pesos' => '1',
'icon-ecommerce-pound' => '2',
'icon-ecommerce-receipt' => '3',
'icon-ecommerce-receipt-bath' => '4',
'icon-ecommerce-receipt-cent' => '5',
'icon-ecommerce-receipt-dollar' => '6',
'icon-ecommerce-receipt-euro' => '7',
'icon-ecommerce-receipt-franc' => '8',
'icon-ecommerce-receipt-guarani' => '9',
'icon-ecommerce-receipt-kips' => '!',
'icon-ecommerce-receipt-lira' => '\"',
'icon-ecommerce-receipt-naira' => '#',
'icon-ecommerce-receipt-pesos' => '$',
'icon-ecommerce-receipt-pound' => '%',
'icon-ecommerce-receipt-rublo' => '&',
'icon-ecommerce-receipt-tugrik' => '(',
'icon-ecommerce-receipt-won' => ')',
'icon-ecommerce-receipt-yen' => '*',
'icon-ecommerce-receipt-yen2' => '+',
'icon-ecommerce-recept-colon' => ',',
'icon-ecommerce-rublo' => '-',
'icon-ecommerce-rupee' => '.',
'icon-ecommerce-safe' => '/',
'icon-ecommerce-sale' => ':',
'icon-ecommerce-sales' => ';',
'icon-ecommerce-ticket' => '<',
'icon-ecommerce-tugriks' => '=',
'icon-ecommerce-wallet' => '>',
'icon-ecommerce-won' => '?',
'icon-ecommerce-yen' => '@',
'icon-ecommerce-yen2' => '[',
'icon-music-beginning-button' => 'a',
'icon-music-bell' => 'b',
'icon-music-cd' => 'c',
'icon-music-diapason' => 'd',
'icon-music-eject-button' => 'e',
'icon-music-end-button' => 'f',
'con-music-fastforward-button' => 'g',
'icon-music-headphones' => 'h',
'icon-music-ipod' => 'i',
'icon-music-loudspeaker' => 'j',
'icon-music-microphone' => 'k',
'icon-music-microphone-old' => 'l',
'icon-music-mixer' => 'm',
'icon-music-mute' => 'n',
'icon-music-note-multiple' => 'o',
'icon-music-note-single' => 'p',
'icon-music-pause-button' => 'q',
'icon-music-play-button' => 'r',
'icon-music-playlist' => 's',
'icon-music-radio-ghettoblaster' => 't',
'icon-music-radio-portable' => 'u',
'icon-music-record' => 'v',
'icon-music-recordplayer' => 'w',
'icon-music-repeat-button' => 'x',
'icon-music-rewind-button' => 'y',
'icon-music-shuffle-button' => 'z',
'icon-music-stop-button' => 'A',
'icon-music-tape' => 'B',
'icon-music-volume-down' => 'C',
'icon-music-volume-up' => 'D',
'icon-software-add-vectorpoint' => 'a',
'icon-software-box-oval' => 'b',
'icon-software-box-polygon' => 'c',
'icon-software-box-rectangle' => 'd',
'icon-software-box-roundedrectangle' => 'e',
'icon-software-character' => 'f',
'icon-software-crop' => 'g',
'icon-software-eyedropper' => 'h',
'icon-software-font-allcaps' => 'i',
'icon-software-font-baseline-shift' => 'j',
'icon-software-font-horizontal-scale' => 'k',
'icon-software-font-kerning' => 'l',
'icon-software-font-leading' => 'm',
'icon-software-font-size' => 'n',
'icon-software-font-smallcapital' => 'o',
'icon-software-font-smallcaps' => 'p',
'icon-software-font-strikethrough' => 'q',
'icon-software-font-tracking' => 'r',
'icon-software-font-underline' => 's',
'icon-software-font-vertical-scale' => 't',
'icon-software-horizontal-align-center' => 'u',
'icon-software-horizontal-align-left' => 'v',
'icon-software-horizontal-align-right' => 'w',
'icon-software-horizontal-distribute-center' => 'x',
'icon-software-horizontal-distribute-left' => 'y',
'icon-software-horizontal-distribute-right' => 'z',
'icon-software-indent-firstline' => 'A',
'icon-software-indent-left' => 'B',
'icon-software-indent-right' => 'C',
'icon-software-lasso' => 'D',
'icon-software-layers1' => 'E',
'icon-software-layers2' => 'F',
'icon-software-layout' => 'G',
'icon-software-layout-2columns' => 'H',
'icon-software-layout-3columns' => 'I',
'icon-software-layout-4boxes' => 'J',
'icon-software-layout-4columns' => 'K',
'icon-software-layout-4lines' => 'L',
'icon-software-layout-8boxes' => 'M',
'icon-software-layout-header' => 'N',
'icon-software-layout-header-2columns' => 'O',
'icon-software-layout-header-3columns' => 'P',
'icon-software-layout-header-4boxes' => 'Q',
'icon-software-layout-header-4columns' => 'R',
'icon-software-layout-header-complex' => 'S',
'icon-software-layout-header-complex2' => 'T',
'icon-software-layout-header-complex3' => 'U',
'icon-software-layout-header-complex4' => 'V',
'icon-software-layout-header-sideleft' => 'W',
'icon-software-layout-header-sideright' => 'X',
'icon-software-layout-sidebar-left' => 'Y',
'icon-software-layout-sidebar-right' => 'Z',
'icon-software-magnete' => '0',
'icon-software-pages' => '1',
'icon-software-paintbrush' => '2',
'icon-software-paintbucket' => '3',
'icon-software-paintroller' => '4',
'con-software-paragraph' => '5',
'icon-software-paragraph-align-left' => '6',
'icon-software-paragraph-align-right' => '7',
'icon-software-paragraph-center' => '8',
'icon-software-paragraph-justify-all' => '9',
'icon-software-paragraph-justify-center' => '!',
'icon-software-paragraph-justify-left' => '\"',
'icon-software-paragraph-justify-right' => '#',
'icon-software-paragraph-space-after' => '$',
'icon-software-paragraph-space-before' => '%',
'icon-software-pathfinder-exclude' => '&',
'icon-software-pathfinder-subtract' => '(',
'icon-software-pathfinder-unite' => ')',
'icon-software-pen' => '*',
'icon-software-pen-add' => '+',
'icon-software-pen-remove' => ',',
'icon-software-pencil' => '-',
'icon-software-polygonallasso' => '.',
'icon-software-reflect-horizontal' => '/',
'icon-software-reflect-vertical' => ':',
'icon-software-remove-vectorpoint' => ';',
'icon-software-scale-expand' => '<',
'icon-software-scale-reduce' => '=',
'icon-software-selection-oval' => '>',
'icon-software-selection-polygon' => '?',
'icon-software-selection-rectangle' => '@',
'icon-software-selection-roundedrectangle' => '[',
'icon-software-shape-oval' => ']',
'icon-software-shape-polygon' => '^',
'icon-software-shape-rectangle' => '_',
'icon-software-shape-roundedrectangle' => '`',
'icon-software-slice' => '{',
'icon-software-transform-bezier' => '|',
'icon-software-vector-box' => '}',
'icon-software-vector-composite' => '~',
'icon-software-vector-line' => '\\',
'icon-software-vertical-align-bottom' => '\e000',
'icon-software-vertical-align-center' => '\e001',
'icon-software-vertical-align-top' => '\e002',
'icon-software-vertical-distribute-bottom' => '\e003',
'icon-software-vertical-distribute-center' => '\e004',
'icon-software-vertical-distribute-top' => '\e005',
'icon-weather-aquarius' => '\e000',
'icon-weather-aries' => '\e001',
'icon-weather-cancer' => '\e002',
'icon-weather-capricorn' => '\e003',
'icon-weather-cloud' => '\e004',
'icon-weather-cloud-drop' => '\e005',
'icon-weather-cloud-lightning' => '\e006',
'icon-weather-cloud-snowflake' => '\e007',
'icon-weather-downpour-fullmoon' => '\e008',
'icon-weather-downpour-halfmoon' => '\e009',
'icon-weather-downpour-sun' => '\e00a',
'icon-weather-drop' => '\e00b',
'icon-weather-first-quarter' => '\e00c',
'icon-weather-fog' => '\e00d',
'icon-weather-fog-fullmoon' => '\e00e',
'icon-weather-fog-halfmoon' => '\e00f',
'icon-weather-fog-sun' => '\e010',
'icon-weather-fullmoon' => '\e011',
'icon-weather-gemini' => '\e012',
'icon-weather-hail' => '\e013',
'icon-weather-hail-fullmoon' => '\e014',
'icon-weather-hail-halfmoon' => '\e015',
'icon-weather-hail-sun' => '\e016',
'icon-weather-last-quarter' => '\e017',
'icon-weather-leo' => '\e018',
'icon-weather-libra' => '\e019',
'icon-weather-lightning' => '\e01a',
'icon-weather-mistyrain' => '\e01b',
'icon-weather-mistyrain-fullmoon' => '\e01c',
'icon-weather-mistyrain-halfmoon' => '\e01d',
'icon-weather-mistyrain-sun' => '\e01e',
'icon-weather-moon' => '\e01f',
'icon-weather-moondown-full' => '\e020',
'icon-weather-moondown-half' => '\e021',
'icon-weather-moonset-full' => '\e022',
'icon-weather-moonset-half' => '\e023',
'icon-weather-move2' => '\e024',
'icon-weather-newmoon' => '\e025',
'icon-weather-pisces' => '\e026',
'icon-weather-rain' => '\e027',
'icon-weather-rain-fullmoon' => '\e028',
'icon-weather-rain-halfmoon' => '\e029',
'icon-weather-rain-sun' => '\e02a',
'icon-weather-sagittarius' => '\e02b',
'icon-weather-scorpio' => '\e02c',
'icon-weather-snow' => '\e02d',
'icon-weather-snow-fullmoon' => '\e02e',
'icon-weather-snow-halfmoon' => '\e02f',
'icon-weather-snow-sun' => '\e030',
'icon-weather-snowflake' => '\e031',
'icon-weather-star' => '\e032',
'icon-weather-storm-11' => '\e033',
'icon-weather-storm-32' => '\e034',
'icon-weather-storm-fullmoon' => '\e035',
'con-weather-storm-halfmoon' => '\e036',
'icon-weather-storm-sun' => '\e037',
'icon-weather-sun' => '\e038',
'icon-weather-sundown' => '\e039',
'icon-weather-sunset' => '\e03a',
'icon-weather-taurus' => '\e03b',
'icon-weather-tempest' => '\e03c',
'icon-weather-tempest-fullmoon' => '\e03d',
'con-weather-tempest-halfmoon' => '\e03e',
'icon-weather-tempest-sun' => '\e03f',
'icon-weather-variable-fullmoon' => '\e040',
'icon-weather-variable-halfmoon' => '\e041',
'icon-weather-variable-sun' => '\e042',
'icon-weather-virgo' => '\e043',
'icon-weather-waning-cresent' => '\e044',
'icon-weather-waning-gibbous' => '\e045',
'icon-weather-waxing-cresent' => '\e046',
'icon-weather-waxing-gibbous' => '\e047',
'icon-weather-wind' => '\e048',
'icon-weather-wind-e' => '\e049',
'icon-weather-wind-fullmoon' => '\e04a',
'icon-weather-wind-halfmoon' => '\e04b',
'icon-weather-wind-n' => '\e04c',
'icon-weather-wind-ne' => '\e04d',
'icon-weather-wind-nw' => '\e04e',
'icon-weather-wind-s' => '\e04f',
'icon-weather-wind-se' => '\e050',
'icon-weather-wind-sun' => '\e051',
'icon-weather-wind-sw' => '\e052',
'icon-weather-wind-w' => '\e053',
'icon-weather-windgust' => '\e054'
);
$icons = array();
$icons[""] = "";
foreach ($this->icons as $key => $value) {
$icons[$key] = $key;
}
$this->icons = $icons;
}
public function getIconsArray() {
return $this->icons;
}
public function render($icon, $params = array()) {
$html = '';
extract($params);
$iconAttributesString = '';
$iconClass = '';
if (isset($icon_attributes) && count($icon_attributes)) {
foreach ($icon_attributes as $icon_attr_name => $icon_attr_val) {
if ($icon_attr_name === 'class') {
$iconClass = $icon_attr_val;
unset($icon_attributes[$icon_attr_name]);
} else {
$iconAttributesString .= $icon_attr_name . '="' . $icon_attr_val . '" ';
}
}
}
if (isset($before_icon) && $before_icon !== '') {
$beforeIconAttrString = '';
if (isset($before_icon_attributes) && count($before_icon_attributes)) {
foreach ($before_icon_attributes as $before_icon_attr_name => $before_icon_attr_val) {
$beforeIconAttrString .= $before_icon_attr_name . '="' . $before_icon_attr_val . '" ';
}
}
$html .= '<' . $before_icon . ' ' . $beforeIconAttrString . '>';
}
$html .= '<i class="eltdf-icon-linea-icon ' . $icon . ' ' . $iconClass . '" ' . $iconAttributesString . '></i>';
if (isset($before_icon) && $before_icon !== '') {
$html .= '</' . $before_icon . '>';
}
return $html;
}
public function getSearchIcon() {
return $this->render('icon-basic-magnifier');
}
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons() {
return false;
}
}

View File

@@ -0,0 +1,278 @@
<?php
class CallaElatedLinearIcons implements iCallaElatedIconCollection {
public $icons;
public $title;
public $param;
public $styleUrl;
function __construct($title_label = "", $param = "") {
$this->icons = array();
$this->title = $title_label;
$this->param = $param;
$this->setIconsArray();
$this->styleUrl = ELATED_ASSETS_ROOT . "/css/linear-icons/style.css";
}
private function setIconsArray() {
$this->icons = array(
'' => '',
'lnr-alarm' => 'lnr-alarm',
'lnr-apartment' => 'lnr-apartment',
'lnr-arrow-down' => 'lnr-arrow-down',
'lnr-arrow-down-circle' => 'lnr-arrow-down-circle',
'lnr-arrow-left' => 'lnr-arrow-left',
'lnr-arrow-left-circle' => 'lnr-arrow-left-circle',
'lnr-arrow-right' => 'lnr-arrow-right',
'lnr-arrow-right-circle' => 'lnr-arrow-right-circle',
'lnr-arrow-up' => 'lnr-arrow-up',
'lnr-arrow-up-circle' => 'lnr-arrow-up-circle',
'lnr-bicycle' => 'lnr-bicycle',
'lnr-bold' => 'lnr-bold',
'lnr-book' => 'lnr-book',
'lnr-bookmark' => 'lnr-bookmark',
'lnr-briefcase' => 'lnr-briefcase',
'lnr-bubble' => 'lnr-bubble',
'lnr-bug' => 'lnr-bug',
'lnr-bullhorn' => 'lnr-bullhorn',
'lnr-bus' => 'lnr-bus',
'lnr-calendar-full' => 'lnr-calendar-full',
'lnr-camera' => 'lnr-camera',
'lnr-camera-video' => 'lnr-camera-video',
'lnr-car' => 'lnr-car',
'lnr-cart' => 'lnr-cart',
'lnr-chart-bars' => 'lnr-chart-bars',
'lnr-checkmark-circle' => 'lnr-checkmark-circle',
'lnr-chevron-down' => 'lnr-chevron-down',
'lnr-chevron-down-circle' => 'lnr-chevron-down-circle',
'lnr-chevron-left' => 'lnr-chevron-left',
'lnr-chevron-left-circle' => 'lnr-chevron-left-circle',
'lnr-chevron-right' => 'lnr-chevron-right',
'lnr-chevron-right-circle' => 'lnr-chevron-right-circle',
'lnr-chevron-up' => 'lnr-chevron-up',
'lnr-chevron-up-circle' => 'lnr-chevron-up-circle',
'lnr-circle-minus' => 'lnr-circle-minus',
'lnr-clock' => 'lnr-clock',
'lnr-cloud' => 'lnr-cloud',
'lnr-cloud-check' => 'lnr-cloud-check',
'lnr-cloud-download' => 'lnr-cloud-download',
'lnr-cloud-sync' => 'lnr-cloud-sync',
'lnr-cloud-upload' => 'lnr-cloud-upload',
'lnr-code' => 'lnr-code',
'lnr-coffee-cup' => 'lnr-coffee-cup',
'lnr-cog' => 'lnr-cog',
'lnr-construction' => 'lnr-construction',
'lnr-crop' => 'lnr-crop',
'lnr-cross' => 'lnr-cross',
'lnr-cross-circle' => 'lnr-cross-circle',
'lnr-database' => 'lnr-database',
'lnr-diamond' => 'lnr-diamond',
'lnr-dice' => 'lnr-dice',
'lnr-dinner' => 'lnr-dinner',
'lnr-direction-ltr' => 'lnr-direction-ltr',
'lnr-direction-rtl' => 'lnr-direction-rtl',
'lnr-download' => 'lnr-download',
'lnr-drop' => 'lnr-drop',
'lnr-earth' => 'lnr-earth',
'lnr-enter' => 'lnr-enter',
'lnr-enter-down' => 'lnr-enter-down',
'lnr-envelope' => 'lnr-envelope',
'lnr-exit' => 'lnr-exit',
'lnr-exit-up' => 'lnr-exit-up',
'lnr-eye' => 'lnr-eye',
'lnr-file-add' => 'lnr-file-add',
'lnr-file-empty' => 'lnr-file-empty',
'lnr-film-play' => 'lnr-film-play',
'lnr-flag' => 'lnr-flag',
'lnr-frame-contract' => 'lnr-frame-contract',
'lnr-frame-expand' => 'lnr-frame-expand',
'lnr-funnel' => 'lnr-funnel',
'lnr-gift' => 'lnr-gift',
'lnr-graduation-hat' => 'lnr-graduation-hat',
'lnr-hand' => 'lnr-hand',
'lnr-heart' => 'lnr-heart',
'lnr-heart-pulse' => 'lnr-heart-pulse',
'lnr-highlight' => 'lnr-highlight',
'lnr-history' => 'lnr-history',
'lnr-home' => 'lnr-home',
'lnr-hourglass' => 'lnr-hourglass',
'lnr-inbox' => 'lnr-inbox',
'lnr-indent-decrease' => 'lnr-indent-decrease',
'lnr-indent-increase' => 'lnr-indent-increase',
'lnr-italic' => 'lnr-italic',
'lnr-keyboard' => 'lnr-keyboard',
'lnr-laptop' => 'lnr-laptop',
'lnr-laptop-phone' => 'lnr-laptop-phone',
'lnr-layers' => 'lnr-layers',
'lnr-leaf' => 'lnr-leaf',
'lnr-license' => 'lnr-license',
'lnr-lighter' => 'lnr-lighter',
'lnr-line-spacing' => 'lnr-line-spacing',
'lnr-linearicons' => 'lnr-linearicons',
'lnr-link' => 'lnr-link',
'lnr-list' => 'lnr-list',
'lnr-location' => 'lnr-location',
'lnr-lock' => 'lnr-lock',
'lnr-magic-wand' => 'lnr-magic-wand',
'lnr-magnifier' => 'lnr-magnifier',
'lnr-map' => 'lnr-map',
'lnr-map-marker' => 'lnr-map-marker',
'lnr-menu' => 'lnr-menu',
'lnr-menu-circle' => 'lnr-menu-circle',
'lnr-mic' => 'lnr-mic',
'lnr-moon' => 'lnr-moon',
'lnr-move' => 'lnr-move',
'lnr-music-note' => 'lnr-music-note',
'lnr-mustache' => 'lnr-mustache',
'lnr-neutral' => 'lnr-neutral',
'lnr-page-break' => 'lnr-page-break',
'lnr-paperclip' => 'lnr-paperclip',
'lnr-paw' => 'lnr-paw',
'lnr-pencil' => 'lnr-pencil',
'lnr-phone' => 'lnr-phone',
'lnr-phone-handset' => 'lnr-phone-handset',
'lnr-picture' => 'lnr-picture',
'lnr-pie-chart' => 'lnr-pie-chart',
'lnr-pilcrow' => 'lnr-pilcrow',
'lnr-plus-circle' => 'lnr-plus-circle',
'lnr-pointer-down' => 'lnr-pointer-down',
'lnr-pointer-left' => 'lnr-pointer-left',
'lnr-pointer-right' => 'lnr-pointer-right',
'lnr-pointer-up' => 'lnr-pointer-up',
'lnr-poop' => 'lnr-poop',
'lnr-power-switch' => 'lnr-power-switch',
'lnr-printer' => 'lnr-printer',
'lnr-pushpin' => 'lnr-pushpin',
'lnr-question-circle' => 'lnr-question-circle',
'lnr-redo' => 'lnr-redo',
'lnr-rocket' => 'lnr-rocket',
'lnr-sad' => 'lnr-sad',
'lnr-screen' => 'lnr-screen',
'lnr-select' => 'lnr-select',
'lnr-shirt' => 'lnr-shirt',
'lnr-smartphone' => 'lnr-smartphone',
'lnr-smile' => 'lnr-smile',
'lnr-sort-alpha-asc' => 'lnr-sort-alpha-asc',
'lnr-sort-amount-asc' => 'lnr-sort-amount-asc',
'lnr-spell-check' => 'lnr-spell-check',
'lnr-star' => 'lnr-star',
'lnr-star-empty' => 'lnr-star-empty',
'lnr-star-half' => 'lnr-star-half',
'lnr-store' => 'lnr-store',
'lnr-strikethrough' => 'lnr-strikethrough',
'lnr-sun' => 'lnr-sun',
'lnr-sync' => 'lnr-sync',
'lnr-tablet' => 'lnr-tablet',
'lnr-tag' => 'lnr-tag',
'lnr-text-align-center' => 'lnr-text-align-center',
'lnr-text-align-justify' => 'lnr-text-align-justify',
'lnr-text-align-left' => 'lnr-text-align-left',
'lnr-text-align-right' => 'lnr-text-align-right',
'lnr-text-format' => 'lnr-text-format',
'lnr-text-format-remove' => 'lnr-text-format-remove',
'lnr-text-size' => 'lnr-text-size',
'lnr-thumbs-down' => 'lnr-thumbs-down',
'lnr-thumbs-up' => 'lnr-thumbs-up',
'lnr-train' => 'lnr-train',
'lnr-trash' => 'lnr-trash',
'lnr-underline' => 'lnr-underline',
'lnr-undo' => 'lnr-undo',
'lnr-unlink' => 'lnr-unlink',
'lnr-upload' => 'lnr-upload',
'lnr-user' => 'lnr-user',
'lnr-users' => 'lnr-users',
'lnr-volume' => 'lnr-volume',
'lnr-volume-high' => 'lnr-volume-high',
'lnr-volume-low' => 'lnr-volume-low',
'lnr-volume-medium' => 'lnr-volume-medium',
'lnr-warning' => 'lnr-warning',
'lnr-wheelchair' => 'lnr-wheelchair'
);
}
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons() {
return false;
}
public function getIconsArray() {
return $this->icons;
}
public function render($icon, $params = array()) {
$html = '';
extract($params);
$iconAttributesString = '';
$iconClass = '';
if (isset($icon_attributes) && count($icon_attributes)) {
foreach ($icon_attributes as $icon_attr_name => $icon_attr_val) {
if ($icon_attr_name === 'class') {
$iconClass = $icon_attr_val;
unset($icon_attributes[$icon_attr_name]);
} else {
$iconAttributesString .= $icon_attr_name . '="' . $icon_attr_val . '" ';
}
}
}
if (isset($before_icon) && $before_icon !== '') {
$beforeIconAttrString = '';
if (isset($before_icon_attributes) && count($before_icon_attributes)) {
foreach ($before_icon_attributes as $before_icon_attr_name => $before_icon_attr_val) {
$beforeIconAttrString .= $before_icon_attr_name . '="' . $before_icon_attr_val . '" ';
}
}
$html .= '<' . $before_icon . ' ' . $beforeIconAttrString . '>';
}
$html .= '<span aria-hidden="true" class="eltdf-icon-linear-icons lnr ' . $icon . ' ' . $iconClass . '" ' . $iconAttributesString . '></span>';
if (isset($before_icon) && $before_icon !== '') {
$html .= '</' . $before_icon . '>';
}
return $html;
}
public function getSearchIcon() {
return $this->render('lnr-magnifier');
}
public function getSearchClose() {
return $this->render('lnr-cross');
}
public function getDropdownCartIcon() {
return $this->render('lnr-cart');
}
public function getMenuIcon() {
return $this->render('lnr-menu');
}
public function getMenuCloseIcon() {
return $this->render('lnr-cross');
}
public function getBackToTopIcon() {
return $this->render('lnr-arrow-up');
}
public function getMobileMenuIcon() {
return $this->render('lnr-menu');
}
}

View File

@@ -0,0 +1,306 @@
<?php
class CallaElatedSimpleLineIcons implements iCallaElatedIconCollection {
public $icons;
public $title;
public $param;
public $styleUrl;
public $socialIcons;
public function __construct($title_label = "", $param = "") {
$this->icons = array();
$this->title = $title_label;
$this->param = $param;
$this->socialIcons = array();
$this->setIconsArray();
$this->setSocialIconsArray();
$this->styleUrl = ELATED_ASSETS_ROOT . "/css/simple-line-icons/simple-line-icons.css";
}
public function setIconsArray() {
$this->icons = array(
'icon-action-redo' => '\e051',
'icon-action-undo' => '\e050',
'icon-anchor' => '\e029',
'icon-arrow-down' => '\e604',
'icon-arrow-down-circle' => '\e07b',
'icon-arrow-left' => '\e605',
'icon-arrow-left-circle' => '\e07a',
'icon-arrow-right' => '\e606',
'icon-arrow-right-circle' => '\e079',
'icon-arrow-up' => '\e607',
'icon-arrow-up-circle' => '\e078',
'icon-badge' => '\e028',
'icon-bag' => '\e04f',
'icon-ban' => '\e07c',
'icon-basket' => '\e04e',
'icon-basket-loaded' => '\e04d',
'icon-bell' => '\e027',
'icon-book-open' => '\e04c',
'icon-briefcase' => '\e04b',
'icon-bubble' => '\e07d',
'icon-bubbles' => '\e04a',
'icon-bulb' => '\e076',
'icon-calculator' => '\e049',
'icon-calender' => '\e075',
'icon-call-end' => '\e048',
'icon-call-in' => '\e047',
'icon-call-out' => '\e046',
'icon-camera' => '\e07f',
'icon-camrecorder' => '\e07e',
'icon-chart' => '\e077',
'icon-check' => '\e080',
'icon-chemistry' => '\e026',
'icon-clock' => '\e081',
'icon-close' => '\e082',
'icon-cloud-download' => '\e083',
'icon-cloud-upload' => '\e084',
'icon-compass' => '\e045',
'icon-control-end' => '\e074',
'icon-control-forward' => '\e073',
'icon-control-pause' => '\e072',
'icon-control-play' => '\e071',
'icon-control-rewind' => '\e070',
'icon-control-start' => '\e06f',
'icon-credit-card' => '\e025',
'icon-crop' => '\e024',
'icon-cup' => '\e044',
'icon-cursor' => '\e06e',
'icon-cursor-move' => '\e023',
'icon-diamond' => '\e043',
'icon-direction' => '\e042',
'icon-directions' => '\e041',
'icon-disc' => '\e022',
'icon-dislike' => '\e06d',
'icon-doc' => '\e085',
'icon-docs' => '\e040',
'icon-drawar' => '\e03f',
'icon-drop' => '\e03e',
'icon-earphones' => '\e03d',
'icon-earphones-alt' => '\e03c',
'icon-emotsmile' => '\e021',
'icon-energy' => '\e020',
'icon-envelope' => '\e086',
'icon-envelope-letter' => '\e01f',
'icon-envelope-open' => '\e01e',
'icon-equalizer' => '\e06c',
'icon-eye' => '\e087',
'icon-eyeglass' => '\e01d',
'icon-feed' => '\e03b',
'icon-film' => '\e03a',
'icon-fire' => '\e01c',
'icon-flag' => '\e088',
'icon-folder' => '\e089',
'icon-folder-alt' => '\e039',
'icon-frame' => '\e038',
'icon-game-controller' => '\e01b',
'icon-ghost' => '\e01a',
'icon-globe' => '\e037',
'icon-globe-alt' => '\e036',
'icon-graduation' => '\e019',
'icon-graph' => '\e06b',
'icon-grid' => '\e06a',
'icon-handbag' => '\e035',
'icon-heart' => '\e08a',
'icon-home' => '\e069',
'icon-hourglass' => '\e018',
'icon-info' => '\e08b',
'icon-key' => '\e08c',
'icon-layers' => '\e034',
'icon-like' => '\e068',
'icon-link' => '\e08d',
'icon-list' => '\e067',
'icon-location-pin' => '\e096',
'icon-lock' => '\e08e',
'icon-lock-open' => '\e08f',
'icon-login' => '\e066',
'icon-logout' => '\e065',
'icon-loop' => '\e064',
'icon-magic-wand' => '\e017',
'icon-magnet' => '\e016',
'icon-magnifier' => '\e090',
'icon-magnifier-add' => '\e091',
'icon-magnifier-remove' => '\e092',
'icon-map' => '\e033',
'icon-menu' => '\e601',
'icon-microphone' => '\e063',
'icon-mouse' => '\e015',
'icon-music-tone' => '\e062',
'icon-music-tone-alt' => '\e061',
'icon-mustache' => '\e014',
'icon-note' => '\e060',
'icon-notebook' => '\e013',
'icon-options' => '\e603',
'icon-options-vertical' => '\e602',
'icon-paper-clip' => '\e093',
'icon-paper-plane' => '\e094',
'icon-paypal' => '\e608',
'icon-pencil' => '\e05f',
'icon-people' => '\e001',
'icon-phone' => '\e600',
'icon-picture' => '\e032',
'icon-pie-chart' => '\e05e',
'icon-pin' => '\e031',
'icon-plane' => '\e012',
'icon-playlist' => '\e030',
'icon-plus' => '\e095',
'icon-power' => '\e097',
'icon-present' => '\e02f',
'icon-printer' => '\e02e',
'icon-puzzle' => '\e02d',
'icon-question' => '\e05d',
'icon-refresh' => '\e098',
'icon-reload' => '\e099',
'icon-rocket' => '\e05c',
'icon-screen-desktop' => '\e011',
'icon-screen-smartphone' => '\e010',
'icon-screen-tablet' => '\e00f',
'icon-settings' => '\e09a',
'icon-share' => '\e05b',
'icon-share-alt' => '\e05a',
'icon-shield' => '\e00e',
'icon-shuffle' => '\e059',
'icon-size-actual' => '\e058',
'icon-size-fullscreen' => '\e057',
'icon-social-behance' => '\e610',
'icon-social-dribbble' => '\e00d',
'icon-social-dropbox' => '\e00c',
'icon-social-facebook' => '\e00b',
'icon-social-foursqare' => '\e611',
'icon-social-github' => '\e60c',
'icon-social-gplus' => '\e60d',
'icon-social-instagram' => '\e609',
'icon-social-linkedin' => '\e60a',
'icon-social-pintarest' => '\e60b',
'icon-social-reddit' => '\e60e',
'icon-social-skype' => '\e60f',
'icon-social-soundcloud' => '\e612',
'icon-social-spotify' => '\e613',
'icon-social-stumbleupon' => '\e614',
'icon-social-tumblr' => '\e00a',
'icon-social-twitter' => '\e009',
'icon-social-youtube' => '\e008',
'icon-speech' => '\e02c',
'icon-speedometer' => '\e007',
'icon-star' => '\e09b',
'icon-support' => '\e056',
'icon-symble-female' => '\e09c',
'icon-symbol-male' => '\e09d',
'icon-tag' => '\e055',
'icon-target' => '\e09e',
'icon-trash' => '\e054',
'icon-trophy' => '\e006',
'icon-umbrella' => '\e053',
'icon-user' => '\e005',
'icon-user-female' => '\e000',
'icon-user-follow' => '\e002',
'icon-user-following' => '\e003',
'icon-user-unfollow' => '\e004',
'icon-vector' => '\e02b',
'icon-volume-1' => '\e09f',
'icon-volume-2' => '\e0a0',
'icon-volume-off' => '\e0a1',
'icon-wallet' => '\e02a',
'icon-wrench' => '\e052'
);
$icons = array();
$icons[""] = "";
foreach ($this->icons as $key => $value) {
$icons[$key] = $key;
}
$this->icons = $icons;
}
public function getIconsArray() {
return $this->icons;
}
public function render($icon, $params = array()) {
$html = '';
extract($params);
$iconAttributesString = '';
$iconClass = '';
if (isset($icon_attributes) && count($icon_attributes)) {
foreach ($icon_attributes as $icon_attr_name => $icon_attr_val) {
if ($icon_attr_name === 'class') {
$iconClass = $icon_attr_val;
unset($icon_attributes[$icon_attr_name]);
} else {
$iconAttributesString .= $icon_attr_name . '="' . $icon_attr_val . '" ';
}
}
}
if (isset($before_icon) && $before_icon !== '') {
$beforeIconAttrString = '';
if (isset($before_icon_attributes) && count($before_icon_attributes)) {
foreach ($before_icon_attributes as $before_icon_attr_name => $before_icon_attr_val) {
$beforeIconAttrString .= $before_icon_attr_name . '="' . $before_icon_attr_val . '" ';
}
}
$html .= '<' . $before_icon . ' ' . $beforeIconAttrString . '>';
}
$html .= '<i class="eltdf-icon-simple-line-icon ' . $icon . ' ' . $iconClass . '" ' . $iconAttributesString .
'></i>';
if (isset($before_icon) && $before_icon !== '') {
$html .= '</' . $before_icon . '>';
}
return $html;
}
public function getSearchIcon() {
return $this->render('icon-magnifier');
}
/**
* Checks if icon collection has social icons
* @return mixed
*/
public function hasSocialIcons() {
return true;
}
public function setSocialIconsArray() {
$this->socialIcons = array(
'' => '',
'icon-social-behance' => esc_html__('Behance', 'calla'),
'icon-social-dribbble' => esc_html__('Dribbble', 'calla'),
'icon-social-dropbox' => esc_html__('Dropbox', 'calla'),
'icon-social-facebook' => esc_html__('Facebook', 'calla'),
'icon-social-foursquare' => esc_html__('Foursquare', 'calla'),
'icon-social-github' => esc_html__('Github', 'calla'),
'icon-social-gplus' => esc_html__('Google Plus', 'calla'),
'icon-social-instagram' => esc_html__('Instagram', 'calla'),
'icon-social-linkedin' => esc_html__('LinkedIn', 'calla'),
'icon-social-pintarest' => esc_html__('Pinterest', 'calla'),
'icon-social-reddit' => esc_html__('Reddit', 'calla'),
'icon-social-skype' => esc_html__('Skype', 'calla'),
'icon-social-soundcloud' => esc_html__('Soundcloud', 'calla'),
'icon-social-stumbleupon' => esc_html__('Stumbleupon', 'calla'),
'icon-social-spotify' => esc_html__('Spotify', 'calla'),
'icon-social-tumblr' => esc_html__('Tumblr', 'calla'),
'icon-social-twitter' => esc_html__('Twitter', 'calla'),
'icon-social-youtube' => esc_html__('Youtube', 'calla')
);
}
public function getSocialIconsArray() {
return $this->socialIcons;
}
public function getSocialIconsArrayVC() {
return array_flip($this->getSocialIconsArray());
}
public function getBackToTopIcon() {
return $this->render('icon-arrow-up');
}
}

View File

@@ -0,0 +1,31 @@
<?php
if ( ! function_exists( 'calla_elated_kses_img' ) ) {
/**
* Function that does escaping of img html.
* It uses wp_kses function with predefined attributes array.
* Should be used for escaping img tags in html.
* Defines calla_elated_kses_img_atts filter that can be used for changing allowed html attributes
*
* @see wp_kses()
*
* @param $content string string to escape
*
* @return string escaped output
*/
function calla_elated_kses_img( $content ) {
$img_atts = apply_filters( 'calla_elated_kses_img_atts', array(
'src' => true,
'alt' => true,
'height' => true,
'width' => true,
'class' => true,
'id' => true,
'title' => true
) );
return wp_kses( $content, array(
'img' => $img_atts
) );
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,347 @@
<?php
/*
Class: CallaElatedTaxonomyField
A class that initializes CallaElated Taxonomy Field
*/
class CallaElatedTaxonomyField implements iCallaElatedRender {
private $type;
private $name;
private $label;
private $description;
private $options = array();
private $args = array();
private $hidden_property;
private $hidden_values = array();
function __construct( $type, $name, $label = "", $description = "", $options = array(), $args = array(), $hidden_property = "", $hidden_values = array() ) {
$this->type = $type;
$this->name = $name;
$this->label = $label;
$this->description = $description;
$this->options = $options;
$this->args = $args;
$this->hidden_property = $hidden_property;
$this->hidden_values = $hidden_values;
add_filter( 'calla_elated_taxonomy_fields', array( $this, 'addFieldForEditSave' ) );
}
public function addFieldForEditSave( $names ) {
//for icon type of field add additonal icon font family based names for saving
if ( $this->type == 'icon' ) {
$icons_collections = \CallaElatedIconCollections::get_instance()->getIconCollectionsKeys();
foreach ( $icons_collections as $icons_collection ) {
$icons_param = \CallaElatedIconCollections::get_instance()->getIconCollectionParamNameByKey( $icons_collection );
$names[] = $this->name . '_' . $icons_param;
}
}
$names[] = $this->name;
return $names;
}
public function render( $factory ) {
$hidden = false;
if (isset( $_GET['tag_ID'] ) ) {
if ( ! empty( $this->hidden_property ) ) {
foreach ( $this->hidden_values as $value ) {
if ( get_term_meta( $_GET['tag_ID'], $this->hidden_property, true ) == $value ) {
$hidden = true;
}
}
}
}
$factory->render( $this->type, $this->name, $this->label, $this->description, $this->options, $this->args, $hidden );
}
}
abstract class CallaElatedTaxonomyFieldType {
abstract public function render( $name, $label = "", $description = "", $options = array(), $args = array() );
}
class CallaElatedTaxonomyFieldText extends CallaElatedTaxonomyFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array(), $hidden = false ) {
if ( ! isset( $_GET['tag_ID'] ) ) { ?>
<div class="form-field">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
<input type="text" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" value="">
<p class="description"><?php echo esc_html( $description ); ?></p>
</div>
<?php
} else {
$value = get_term_meta( $_GET['tag_ID'], $name, true );
?>
<tr class="form-field" <?php if ($hidden) { ?> style="display: none"<?php } ?>>
<th scope="row" valign="top">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
</th>
<td>
<input type="text" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" value="<?php echo esc_attr( $value ) ? esc_attr( $value ) : ''; ?>">
<p class="description"><?php echo esc_html( $description ); ?></p>
</td>
</tr>
<?php
}
}
}
class CallaElatedTaxonomyFieldImage extends CallaElatedTaxonomyFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array(), $hidden = false) {
if ( ! isset( $_GET['tag_ID'] ) ) { ?>
<div class="form-field">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
<input type="hidden" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" class="eltdf-tax-custom-media-url" value="">
<div class="eltdf-tax-image-wrapper"></div>
<p>
<input type="button" class="button button-secondary eltdf-tax-media-add" name="eltdf-tax-media-add" value="<?php esc_attr_e( 'Add Image', 'calla' ); ?>"/>
<input type="button" class="button button-secondary eltdf-tax-media-remove" name="eltdf-tax-media-remove" value="<?php esc_attr_e( 'Remove Image', 'calla' ); ?>"/>
</p>
</div>
<?php
} else {
global $taxonomy;
$image_id = get_term_meta( $_GET['tag_ID'], $name, true );
?>
<tr class="form-field" <?php if ($hidden) { ?> style="display: none"<?php } ?>>
<th scope="row">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
</th>
<td>
<?php ?>
<input type="hidden" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" value="<?php echo esc_attr( $image_id ); ?>" class="eltdf-tax-custom-media-url">
<div class="eltdf-tax-image-wrapper">
<?php if ( $image_id ) { ?>
<?php echo wp_get_attachment_image( $image_id, 'thumbnail' ); ?>
<?php } ?>
</div>
<p>
<input type="button" class="button button-secondary eltdf-tax-media-add" name="eltdf-tax-media-add" value="<?php esc_attr_e( 'Add Image', 'calla' ); ?>"/>
<input data-termid="<?php echo esc_attr( $_GET['tag_ID'] ); ?>" data-taxonomy="<?php echo esc_attr( $taxonomy ); ?>" type="button" class="button button-secondary eltdf-tax-media-remove" name="eltdf-tax-media-remove" value="<?php esc_attr_e( 'Remove Image', 'calla' ); ?>"/>
</p>
</td>
</tr>
<?php
}
}
}
class CallaElatedTaxonomyFieldSelect extends CallaElatedTaxonomyFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array(), $hidden = false ) {
$dependence = false;
if(isset($args["dependence"])) {
$dependence = true;
}
$show = array();
if(isset($args["show"])) {
$show = $args["show"];
}
$hide = array();
if(isset($args["hide"])) {
$hide = $args["hide"];
}
$select2 = '';
if (isset($args['select2'])) {
$select2 = 'eltdf-select2';
}
if ( ! isset( $_GET['tag_ID'] ) ) { ?>
<div class="form-field">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
<select
class="<?php echo esc_attr($select2)?> form-control eltdf-form-element<?php if ($dependence) { echo " dependence"; } ?>"
name="<?php echo esc_attr( $name ); ?>"
<?php foreach($show as $key=>$value) { ?>
data-show-<?php echo str_replace(' ', '',$key); ?>="<?php echo esc_attr($value); ?>"
<?php } ?>
<?php foreach($hide as $key=>$value) { ?>
data-hide-<?php echo str_replace(' ', '',$key); ?>="<?php echo esc_attr($value); ?>"
<?php } ?>
id="<?php echo esc_attr( $name ); ?>">
<?php if ( isset( $args['first_empty'] ) && $args['first_empty'] ) { ?>
<option selected='selected' value=""></option>
<?php } ?>
<?php foreach ( $options as $key => $value ) {
if ( $key == "-1" ) {
$key = "";
} ?>
<option value="<?php echo esc_attr( $key ); ?>"><?php echo esc_html( $value ); ?></option>
<?php } ?>
</select>
<p class="description"><?php echo esc_html( $description ); ?></p>
</div>
<?php
} else {
$selected_value = get_term_meta( $_GET['tag_ID'], $name, true );
?>
<tr class="form-field" <?php if ($hidden) { ?> style="display: none"<?php } ?>>
<th scope="row" valign="top">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
</th>
<td>
<select name="<?php echo esc_attr( $name ); ?>"
class="<?php echo esc_attr($select2)?> eltdf-form-element<?php if ($dependence) { echo " dependence"; } ?>"
<?php foreach($show as $key=>$value) { ?>
data-show-<?php echo str_replace(' ', '',$key); ?>="<?php echo esc_attr($value); ?>"
<?php } ?>
<?php foreach($hide as $key=>$value) { ?>
data-hide-<?php echo str_replace(' ', '',$key); ?>="<?php echo esc_attr($value); ?>"
<?php } ?>
id="<?php echo esc_attr( $name ); ?>">
<option <?php if ( $selected_value == "" ) { echo "selected='selected'"; } ?> value=""></option>
<?php foreach ( $options as $key => $value ) {
if ( $key == "-1" ) {
$key = "";
} ?>
<option <?php if ( $selected_value == $key ) { echo "selected='selected'"; } ?> value="<?php echo esc_attr( $key ); ?>"><?php echo esc_html( $value ); ?></option>
<?php } ?>
</select>
<p class="description"><?php echo esc_html( $description ); ?></p>
</td>
</tr>
<?php
}
}
}
class CallaElatedTaxonomyFieldIcon extends CallaElatedTaxonomyFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array(), $hidden = false ) {
$options = \CallaElatedIconCollections::get_instance()->getIconCollectionsEmpty();
$icons_collections = \CallaElatedIconCollections::get_instance()->getIconCollectionsKeys();
if ( ! isset( $_GET['tag_ID'] ) ) { ?>
<div class="form-field">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
<select name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" class="dependence">
<?php foreach ( $options as $option => $key ) { ?>
<option value="<?php echo esc_attr( $option ); ?>"><?php echo esc_attr( $key ); ?></option>
<?php } ?>
</select>
<p class="description"><?php echo esc_html( $description ); ?></p>
</div>
<?php foreach ( $icons_collections as $icons_collection ) {
$icons_param = \CallaElatedIconCollections::get_instance()->getIconCollectionParamNameByKey( $icons_collection );
?>
<div class="form-field eltd-icon-collection-holder" style="display: none" data-icon-collection="<?php echo esc_attr( $icons_collection ); ?>">
<label for="<?php echo esc_attr( $name ) . '_icon'; ?>"><?php esc_html_e( 'Icon', 'calla' ); ?></label>
<select name="<?php echo esc_attr( $name . '_' . $icons_param ) ?>" id="<?php echo esc_attr( $name . '_' . $icons_param ) ?>">
<?php
$icons = \CallaElatedIconCollections::get_instance()->getIconCollection( $icons_collection );
foreach ( $icons->icons as $option => $key ) { ?>
<option value="<?php echo esc_attr( $option ); ?>"><?php echo esc_attr( $key ); ?></option>
<?php } ?>
</select>
</div>
<?php } ?>
<?php
} else {
$icon_pack = get_term_meta( $_GET['tag_ID'], $name, true );
?>
<tr class="form-field" <?php if ($hidden) { ?> style="display: none"<?php } ?>>
<th scope="row">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
</th>
<td>
<select name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" class="dependence">
<?php foreach ( $options as $option => $key ) { ?>
<option value="<?php echo esc_attr( $option ); ?>" <?php if ( $option == $icon_pack ) { echo 'selected'; } ?>><?php echo esc_attr( $key ); ?></option>
<?php } ?>
</select>
<p class="description"><?php echo esc_html( $description ); ?></p>
</td>
</tr>
<?php foreach ( $icons_collections as $icons_collection ) {
$icons_param = \CallaElatedIconCollections::get_instance()->getIconCollectionParamNameByKey( $icons_collection );
$style = 'display:none';
if ( $icon_pack == $icons_collection ) {
$style = 'display:table-row';
}
?>
<tr class="form-field eltd-icon-collection-holder" style="<?php echo esc_attr( $style ); ?>" data-icon-collection="<?php echo esc_attr( $icons_collection ); ?>">
<th scope="row"><?php esc_html_e( 'Icon', 'calla' ); ?></th>
<td>
<select name="<?php echo esc_attr( $name . '_' . $icons_param ) ?>" id="<?php echo esc_attr( $name . '_' . $icons_param ) ?>">
<?php
$icons = \CallaElatedIconCollections::get_instance()->getIconCollection( $icons_collection );
$activ_icon = get_term_meta( $_GET['tag_ID'], $name . '_' . $icons_param, true );
foreach ( $icons->icons as $option => $key ) { ?>
<option value="<?php echo esc_attr( $option ); ?>" <?php if ( $option == $activ_icon ) { echo 'selected'; } ?>><?php echo esc_attr( $key ); ?></option>
<?php } ?>
</select>
</td>
</tr>
<?php } ?>
<?php
}
}
}
class CallaElatedTaxonomyFieldColor extends CallaElatedTaxonomyFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array(), $hidden = false ) {
if ( ! isset( $_GET['tag_ID'] ) ) { ?>
<div class="form-field">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
<input type="text" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" value="" class="eltdf-taxonomy-color-field">
<p class="description"><?php echo esc_html( $description ); ?></p>
</div>
<?php
} else {
$value = get_term_meta( $_GET['tag_ID'], $name, true );
?>
<tr class="form-field" <?php if ($hidden) { ?> style="display: none"<?php } ?>>
<th scope="row" valign="top">
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
</th>
<td>
<input type="text" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" value="<?php echo esc_attr( $value ) ? esc_attr( $value ) : ''; ?>" class="eltdf-taxonomy-color-field">
<p class="description"><?php echo esc_html( $description ); ?></p>
</td>
</tr>
<?php
}
}
}
class CallaElatedTaxonomyFieldFactory {
public function render( $field_type, $name, $label = "", $description = "", $options = array(), $args = array(), $hidden = false ) {
switch ( strtolower( $field_type ) ) {
case 'text':
$field = new CallaElatedTaxonomyFieldText();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
case 'image':
$field = new CallaElatedTaxonomyFieldImage();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
case 'selectblank':
$field = new CallaElatedTaxonomyFieldSelect();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
case 'icon':
$field = new CallaElatedTaxonomyFieldIcon();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
case 'color':
$field = new CallaElatedTaxonomyFieldColor();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
default:
break;
}
}
}

View File

@@ -0,0 +1,175 @@
<?php
/*
Class: CallaElatedUserField
A class that initializes CallaElated User Field
*/
class CallaElatedUserField implements iCallaElatedRender {
private $type;
private $name;
private $label;
private $description;
private $options = array();
private $args = array();
function __construct( $type, $name, $label = "", $description = "", $options = array(), $args = array() ) {
$this->type = $type;
$this->name = $name;
$this->label = $label;
$this->description = $description;
$this->options = $options;
$this->args = $args;
add_filter( 'calla_elated_user_fields', array( $this, 'addFieldForEditSave' ) );
}
public function addFieldForEditSave( $names ) {
$names[] = $this->name;
return $names;
}
public function render( $factory ) {
$factory->render( $this->type, $this->name, $this->label, $this->description, $this->options, $this->args );
}
}
abstract class CallaElatedUserFieldType {
abstract public function render( $name, $label = "", $description = "", $options = array(), $args = array() );
}
class CallaElatedUserFieldText extends CallaElatedUserFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array() ) {
$value = get_user_meta( $_GET['user_id'], $name, true );
?>
<tr>
<th>
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
</th>
<td>
<input type="text" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" value="<?php echo esc_attr( $value ) ? esc_attr( $value ) : ''; ?>" class="regular-text">
<p class="description"><?php echo esc_html( $description ); ?></p>
</td>
</tr>
<?php
}
}
class CallaElatedUserFieldSelect extends CallaElatedTaxonomyFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array() ) {
$selected_value = get_user_meta( $_GET['user_id'], $name, true ); ?>
<tr>
<th>
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
</th>
<td>
<select name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>">
<option <?php if ( $selected_value == "" ) { echo "selected='selected'"; } ?> value=""></option>
<?php foreach ( $options as $key => $value ) {
if ( $key == "-1" ) {
$key = "";
} ?>
<option <?php if ( $selected_value == $key ) { echo "selected='selected'"; } ?> value="<?php echo esc_attr( $key ); ?>"><?php echo esc_html( $value ); ?></option>
<?php } ?>
</select>
<p class="description"><?php echo esc_html( $description ); ?></p>
</td>
</tr>
<?php
}
}
class CallaElatedUserFieldImage extends CallaElatedUserFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array() ) {
$value = get_user_meta( $_GET['user_id'], $name, true );
?>
<tr>
<th>
<label for="<?php echo esc_attr( $name ); ?>"><?php echo esc_html( $label ); ?></label>
<p class="description"><?php echo esc_html( $description ); ?></p>
</th>
<td class="eltdf-user-image-field">
<input type="hidden" name="<?php echo esc_attr( $name ); ?>" id="<?php echo esc_attr( $name ); ?>" class="eltdf-user-custom-media-url" value="<?php echo esc_attr($value)?>">
<div class="eltdf-user-image-wrapper">
<?php if ( $value ) { ?>
<?php echo wp_get_attachment_image( $value, 'thumbnail' ); ?>
<?php } ?>
</div>
<p>
<input type="button" class="button button-secondary eltdf-user-media-add" name="eltdf-user-media-add" value="<?php esc_attr_e( 'Add Image', 'calla' ); ?>"/>
<input data-userid="<?php echo esc_attr( $_GET['user_id'] ); ?>" type="button" class="button button-secondary eltdf-user-media-remove" name="eltdf-user-media-remove" value="<?php esc_attr_e( 'Remove Image', 'calla' ); ?>"/>
</p>
</td>
</tr>
<?php
}
}
/*
Class: CallaElatedUserGroup
A class that initializes Elated User Group
*/
class CallaElatedUserGroup implements iCallaElatedLayoutNode, iCallaElatedRender {
public $children;
public $title;
public $description;
function __construct($title_label="",$description="") {
$this->children = array();
$this->title = $title_label;
$this->description = $description;
}
public function hasChidren() {
return (count($this->children) > 0)?true:false;
}
public function getChild($key) {
return $this->children[$key];
}
public function addChild($key, $value) {
$this->children[$key] = $value;
}
public function render($factory) { ?>
<h2><?php echo esc_html($this->title); ?></h2>
<table class="form-table">
<tbody>
<?php foreach ($this->children as $child) {
$this->renderChild($child, $factory);
} ?>
</tbody>
</table>
<?php
}
public function renderChild(iCallaElatedRender $child, $factory) {
$child->render($factory);
}
}
class CallaElatedUserFieldFactory {
public function render( $field_type, $name, $label = "", $description = "", $options = array(), $args = array(), $hidden = false ) {
switch ( strtolower( $field_type ) ) {
case 'text':
$field = new CallaElatedUserFieldText();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
case 'select':
$field = new CallaElatedUserFieldSelect();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
case 'image':
$field = new CallaElatedUserFieldImage();
$field->render( $name, $label, $description, $options, $args, $hidden );
break;
default:
break;
}
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,782 @@
<?php
class CallaElatedFieldPortfolioFollow extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array() ) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "portfolio_single_follow") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "portfolio_single_no_follow") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_portfoliofollow" value="portfolio_single_follow"<?php if (calla_elated_option_get_value($name) == "portfolio_single_follow") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_portfoliofollow" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldZeroOne extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "1") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "0") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_zeroone" value="1"<?php if (calla_elated_option_get_value($name) == "1") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_zeroone" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldImageVideo extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch switch-type">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "image") { echo " selected"; } ?>"><span><?php esc_html_e('Image', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "video") { echo " selected"; } ?>"><span><?php esc_html_e('Video', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_imagevideo" value="image"<?php if (calla_elated_option_get_value($name) == "image") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_imagevideo" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldYesEmpty extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array() ) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "yes") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_yesempty" value="yes"<?php if (calla_elated_option_get_value($name) == "yes") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_yesempty" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldFlagPage extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "page") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_flagpage" value="page"<?php if (calla_elated_option_get_value($name) == "page") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_flagpage" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldFlagPost extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array() ) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "post") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_flagpost" value="post"<?php if (calla_elated_option_get_value($name) == "post") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_flagpost" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldFlagMedia extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "attachment") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_flagmedia" value="attachment"<?php if (calla_elated_option_get_value($name) == "attachment") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_flagmedia" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldFlagPortfolio extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "portfolio_page") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_flagportfolio" value="portfolio_page"<?php if (calla_elated_option_get_value($name) == "portfolio_page") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_flagportfolio" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldFlagProduct extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) { ?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<p class="field switch">
<label class="cb-enable<?php if (calla_elated_option_get_value($name) == "product") { echo " selected"; } ?>"><span><?php esc_html_e('Yes', 'calla') ?></span></label>
<label class="cb-disable<?php if (calla_elated_option_get_value($name) == "") { echo " selected"; } ?>"><span><?php esc_html_e('No', 'calla') ?></span></label>
<input type="checkbox" id="checkbox" class="checkbox"
name="<?php echo esc_attr($name); ?>_flagproduct" value="product"<?php if (calla_elated_option_get_value($name) == "product") { echo " selected"; } ?>/>
<input type="hidden" class="checkboxhidden_flagproduct" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
</p>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldRange extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) {
$range_min = 0;
$range_max = 1;
$range_step = 0.01;
$range_decimals = 2;
if(isset($args["range_min"])) {
$range_min = $args["range_min"];
}
if(isset($args["range_max"])) {
$range_max = $args["range_max"];
}
if(isset($args["range_step"])) {
$range_step = $args["range_step"];
}
if(isset($args["range_decimals"])) {
$range_decimals = $args["range_decimals"];
}
?>
<div class="eltdf-page-form-section">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<div class="eltdf-slider-range-wrapper">
<div class="form-inline">
<input type="text" class="form-control eltdf-form-element eltdf-form-element-xsmall pull-left eltdf-slider-range-value" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
<div class="eltdf-slider-range small" data-step="<?php echo esc_attr($range_step); ?>" data-min="<?php echo esc_attr($range_min); ?>" data-max="<?php echo esc_attr($range_max); ?>" data-decimals="<?php echo esc_attr($range_decimals); ?>" data-start="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldRangeSimple extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) { ?>
<div class="col-lg-3" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-slider-range-wrapper">
<div class="form-inline">
<em class="eltdf-field-description"><?php echo esc_html($label); ?></em>
<input type="text" class="form-control eltdf-form-element eltdf-form-element-xxsmall pull-left eltdf-slider-range-value" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"/>
<div class="eltdf-slider-range xsmall" data-step="0.01" data-max="1" data-start="<?php echo esc_attr(calla_elated_option_get_value($name)); ?>"></div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldRadio extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) {
$checked = $value = "";
$value_saved = calla_elated_option_has_value($name);
if($value_saved) {
$value = calla_elated_option_get_value($name);
$checked = $value == 'yes' ? "checked" : "";
}
$html = '<input type="radio" name="'.$name.'" value="'.$value.'" '.$checked.' /> '.$label.'<br />';
echo wp_kses($html, array(
'input' => array(
'type' => true,
'name' => true,
'value' => true,
'checked' => true
),
'br' => true
));
}
}
class CallaElatedFieldRadioGroup extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) {
$use_images = isset($args["use_images"]) && $args["use_images"] ? true : false;
$hide_labels = isset($args["hide_labels"]) && $args["hide_labels"] ? true : false;
$hide_radios = $use_images ? 'display: none' : '';
$checked_value = calla_elated_option_get_value($name);
?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($name); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<?php if(is_array($options) && count($options)) { ?>
<div class="eltdf-field eltdf-radio-group-holder <?php if($use_images) echo "with-images"; ?>" data-option-name="<?php echo esc_attr( $name ); ?>" data-option-type="radiogroup">
<?php foreach($options as $key => $atts) {
$selected = false;
if($checked_value == $key) {
$selected = true;
}
?>
<label class="radio-inline">
<input <?php if($selected) echo "checked"; ?> <?php calla_elated_inline_style($hide_radios); ?>
type="radio" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr($key); ?>">
<?php if(!empty($atts["label"]) && !$hide_labels) echo esc_attr($atts["label"]); ?>
<?php if($use_images) { ?>
<img title="<?php if(!empty($atts["label"])) echo esc_attr($atts["label"]); ?>" src="<?php echo esc_url($atts['image']); ?>" alt="<?php echo esc_attr("$key image") ?>"/>
<?php } ?>
</label>
<?php } ?>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldCheckBoxGroup extends CallaElatedFieldType {
public function render($name, $label = '', $description = '', $options = array(), $args = array(), $repeat = array()) {
if(!(is_array($options) && count($options))) {
return;
}
if (!empty($repeat) && array_key_exists('name', $repeat) && array_key_exists('index', $repeat)) {
$id = $name . '-' . $repeat['index'];
$name = $repeat['name'] . '['.$repeat['index'].']['. $name .']';
$saved_value = $repeat['value'];
} else {
$id = $name;
$saved_value = calla_elated_option_get_value($name);
}
$show = !empty($args["show"]) ? $args["show"] : array();
?>
<div class="eltdf-page-form-section" id="eltdf_<?php echo esc_attr($id); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<div class="eltdf-checkbox-group-holder">
<!-- Needed for font weight and fonts group of option in order to save empty value -->
<div class="checkbox-inline" style="display: none">
<label>
<input checked type="checkbox" value="" name="<?php echo esc_attr($name.'[]'); ?>">
</label>
</div>
<?php foreach($options as $option_key => $option_label) : ?>
<?php
if($option_label !== ''){
$i = 1;
$checked = is_array($saved_value) && in_array($option_key, $saved_value);
$checked_attr = $checked ? 'checked' : '';
?>
<div class="checkbox-inline">
<label>
<input <?php echo esc_attr($checked_attr); ?> type="checkbox"
id="<?php echo esc_attr($name.$option_key).'-'.$i; ?>"
value="<?php echo esc_attr($option_key); ?>" name="<?php echo esc_attr($name.'[]'); ?>"
<label for="<?php echo esc_attr($name.$option_key).'-'.$i; ?>"><?php echo esc_html($option_label); ?></label>
</label>
</div>
<?php
$i++;
}
endforeach; ?>
</div>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldCheckBox extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array() ) {
$checked = "";
if ('1' === calla_elated_option_get_value($name)){
$checked = "checked";
}
$html = '<div class ="eltdf-page-form-section">';
$html .= '<div class="eltdf-section-content">';
$html .= '<div class="container-fluid">';
$html .= '<div class="row">';
$html .= '<div class="col-lg-3">';
$html .= '<input id="' . $name . '" class="eltdf-single-checkbox-field" type="checkbox" name="' . $name . '" value="1" ' . $checked . ' />';
$html .= '<label for="' . $name . '"> ' . $label . '</label><br />';
$html .= '<input class="eltdf-checkbox-single-hidden" type="hidden" name="' . $name . '" value="0"/>';
$html .= '</div>'; //close col-lg-3
$html .= '</div>'; //close row
$html .= '</div>'; //close container-fluid
$html .= '</div>'; //close eltdf-section-content
$html .= '</div>'; //close eltdf-page-form-section
echo wp_kses($html, array(
'input' => array(
'type' => true,
'id' => true,
'name' => true,
'value' => true,
'checked' => true,
'class' => true,
'disabled' => true
),
'div' => array(
'class' => true
),
'br' => true,
'label' => array(
'for'=>true
)
));
}
}
class CallaElatedFieldDate extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array(), $repeat = array() ) {
$col_width = 2;
if(isset($args["col_width"]))
$col_width = $args["col_width"];
$suffix = !empty($args['suffix']) ? $args['suffix'] : false;
$class = '';
$data_string = '';
if (!empty($repeat) && array_key_exists('name', $repeat) && array_key_exists('index', $repeat)) {
$id = $name . '-' . $repeat['index'];
$name = $repeat['name'] . '['.$repeat['index'].']['. $name .']';
$value = $repeat['value'];
} else {
$id = $name;
$value = calla_elated_option_get_value($name);
}
if($label === '' && $description === '') {
$class .= ' eltdf-no-description';
}
if(isset($args['custom_class']) && $args['custom_class'] != '') {
$class .= ' ' . $args['custom_class'];
}
if(isset($args['input-data']) && $args['input-data'] != '') {
foreach($args['input-data'] as $data_key => $data_value) {
$data_string .= $data_key . '=' . $data_value;
$data_string .= ' ';
}
}
?>
<div class="eltdf-page-form-section <?php echo esc_attr($class); ?>" id="eltdf_<?php echo esc_attr($id); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-<?php echo esc_attr($col_width); ?>">
<?php if($suffix) : ?>
<div class="input-group">
<?php endif; ?>
<input type="text" id="eltdf_<?php echo esc_attr($id);?>dp" class="datepicker form-control eltdf-input eltdf-form-element" name="<?php echo esc_attr($name); ?>" value="<?php echo esc_attr($value); ?>" />
<?php if($suffix) : ?>
<div class="input-group-addon"><?php echo esc_html($args['suffix']); ?></div>
<?php endif; ?>
<?php if($suffix) : ?>
</div>
<?php endif; ?>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldFile extends CallaElatedFieldType {
public function render( $name, $label="", $description="", $options = array(), $args = array()) {
$value = calla_elated_option_get_value($name);
$has_value = calla_elated_option_has_value($name);
?>
<div class="eltdf-page-form-section">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<!-- close div.eltdf-field-desc -->
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<div class="eltdf-media-uploader">
<div<?php if (!$has_value) { ?> style="display: none"<?php } ?>
class="eltdf-media-image-holder">
<img src="<?php if ($has_value) { echo esc_url(calla_elated_option_get_uploaded_file_icon($value)); } ?>" alt="<?php esc_attr_e( 'Image thumbnail', 'calla' ); ?>" class="eltdf-media-image img-thumbnail"/>
<?php if ($has_value) { ?> <h4 class="eltdf-media-title"><?php echo calla_elated_option_get_uploaded_file_title($value) ?></h4> <?php } ?>
</div>
<div style="display: none"
class="eltdf-media-meta-fields">
<input type="hidden" class="eltdf-media-upload-url"
name="<?php echo esc_attr($name); ?>"
value="<?php echo esc_attr($value); ?>"/>
</div>
<a class="eltdf-media-upload-btn btn btn-sm btn-primary"
href="javascript:void(0)"
data-frame-title="<?php esc_attr_e('Select File', 'calla'); ?>"
data-frame-button-text="<?php esc_attr_e('Select File', 'calla'); ?>"><?php esc_html_e('Upload', 'calla'); ?></a>
<a style="display: none;" href="javascript: void(0)"
class="eltdf-media-remove-btn btn btn-default btn-sm"><?php esc_html_e('Remove', 'calla'); ?></a>
</div>
</div>
</div>
</div>
</div>
<!-- close div.eltdf-section-content -->
</div>
<?php
}
}
class CallaElatedFieldFactory {
public function render( $field_type, $name, $label="", $description="", $options = array(), $args = array(), $repeat = array() ) {
switch ( strtolower( $field_type ) ) {
case 'text':
$field = new CallaElatedFieldText();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'textsimple':
$field = new CallaElatedFieldTextSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'textarea':
$field = new CallaElatedFieldTextArea();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'textareasimple':
$field = new CallaElatedFieldTextAreaSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'textareahtml':
$field = new CallaElatedFieldTextAreaHtml();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'color':
$field = new CallaElatedFieldColor();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'colorsimple':
$field = new CallaElatedFieldColorSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'image':
$field = new CallaElatedFieldImage();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'imagesimple':
$field = new CallaElatedFieldImageSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'font':
$field = new CallaElatedFieldFont();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'fontsimple':
$field = new CallaElatedFieldFontSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'select':
$field = new CallaElatedFieldSelect();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'selectblank':
$field = new CallaElatedFieldSelectBlank();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'selectsimple':
$field = new CallaElatedFieldSelectSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'selectblanksimple':
$field = new CallaElatedFieldSelectBlankSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'yesno':
$field = new CallaElatedFieldYesNo();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'yesnosimple':
$field = new CallaElatedFieldYesNoSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'portfoliofollow':
$field = new CallaElatedFieldPortfolioFollow();
$field->render( $name, $label, $description, $options, $args );
break;
case 'zeroone':
$field = new CallaElatedFieldZeroOne();
$field->render( $name, $label, $description, $options, $args );
break;
case 'imagevideo':
$field = new CallaElatedFieldImageVideo();
$field->render( $name, $label, $description, $options, $args );
break;
case 'yesempty':
$field = new CallaElatedFieldYesEmpty();
$field->render( $name, $label, $description, $options, $args );
break;
case 'file':
$field = new CallaElatedFieldFile();
$field->render($name, $label, $description, $options, $args);
break;
case 'flagpost':
$field = new CallaElatedFieldFlagPost();
$field->render( $name, $label, $description, $options, $args );
break;
case 'flagpage':
$field = new CallaElatedFieldFlagPage();
$field->render( $name, $label, $description, $options, $args );
break;
case 'flagmedia':
$field = new CallaElatedFieldFlagMedia();
$field->render( $name, $label, $description, $options, $args );
break;
case 'flagportfolio':
$field = new CallaElatedFieldFlagPortfolio();
$field->render( $name, $label, $description, $options, $args );
break;
case 'flagproduct':
$field = new CallaElatedFieldFlagProduct();
$field->render( $name, $label, $description, $options, $args );
break;
case 'range':
$field = new CallaElatedFieldRange();
$field->render( $name, $label, $description, $options, $args );
break;
case 'rangesimple':
$field = new CallaElatedFieldRangeSimple();
$field->render( $name, $label, $description, $options, $args );
break;
case 'radio':
$field = new CallaElatedFieldRadio();
$field->render( $name, $label, $description, $options, $args );
break;
case 'checkbox':
$field = new CallaElatedFieldCheckBox();
$field->render( $name, $label, $description, $options, $args );
break;
case 'date':
$field = new CallaElatedFieldDate();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'radiogroup':
$field = new CallaElatedFieldRadioGroup();
$field->render( $name, $label, $description, $options, $args );
break;
case 'checkboxgroup':
$field = new CallaElatedFieldCheckBoxGroup();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'address':
$field = new CallaElatedFieldAddress();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
case 'icon':
$field = new CallaElatedFieldIcon();
$field->render( $name, $label, $description, $options, $args, $repeat );
break;
default:
break;
}
}
}

View File

@@ -0,0 +1,710 @@
<?php
/*
Class: CallaElatedMultipleImages
A class that initializes Elated Multiple Images
*/
class CallaElatedMultipleImages implements iCallaElatedRender {
private $name;
private $label;
private $description;
function __construct( $name, $label = "", $description = "" ) {
global $calla_elated_Framework;
$this->name = $name;
$this->label = $label;
$this->description = $description;
$calla_elated_Framework->eltdMetaBoxes->addOption( $this->name, "" );
}
public function render( $factory ) {
global $post;
?>
<div class="eltdf-page-form-section">
<div class="eltdf-field-desc">
<h4><?php echo esc_html( $this->label ); ?></h4>
<p><?php echo esc_html( $this->description ); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<ul class="eltdf-gallery-images-holder clearfix">
<?php
$image_gallery_val = get_post_meta( $post->ID, $this->name, true );
if ( $image_gallery_val != '' ) {
$image_gallery_array = explode( ',', $image_gallery_val );
}
if ( isset( $image_gallery_array ) && count( $image_gallery_array ) != 0 ):
foreach ( $image_gallery_array as $gimg_id ):
$gimage_wp = wp_get_attachment_image_src( $gimg_id, 'thumbnail', true );
echo '<li class="eltdf-gallery-image-holder"><img src="' . esc_url( $gimage_wp[0] ) . '"/></li>';
endforeach;
endif;
?>
</ul>
<input type="hidden" value="<?php echo esc_attr( $image_gallery_val ); ?>" id="<?php echo esc_attr( $this->name ) ?>" name="<?php echo esc_attr( $this->name ) ?>">
<div class="eltdf-gallery-uploader">
<a class="eltdf-gallery-upload-btn btn btn-sm btn-primary" href="javascript:void(0)"><?php esc_html_e( 'Upload', 'calla' ); ?></a>
<a class="eltdf-gallery-clear-btn btn btn-sm btn-default pull-right" href="javascript:void(0)"><?php esc_html_e( 'Remove All', 'calla' ); ?></a>
</div>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedTwitterFramework implements iCallaElatedRender {
public function render( $factory ) {
$twitterApi = CallaTwitterApi::getInstance();
$message = '';
if ( ! empty( $_GET['oauth_token'] ) && ! empty( $_GET['oauth_verifier'] ) ) {
if ( ! empty( $_GET['oauth_token'] ) ) {
update_option( $twitterApi::AUTHORIZE_TOKEN_FIELD, $_GET['oauth_token'] );
}
if ( ! empty( $_GET['oauth_verifier'] ) ) {
update_option( $twitterApi::AUTHORIZE_VERIFIER_FIELD, $_GET['oauth_verifier'] );
}
$responseObj = $twitterApi->obtainAccessToken();
if ( $responseObj->status ) {
$message = esc_html__( 'You have successfully connected with your Twitter account. If you have any issues fetching data from Twitter try reconnecting.', 'calla' );
} else {
$message = $responseObj->message;
}
}
$buttonText = $twitterApi->hasUserConnected() ? esc_html__( 'Re-connect with Twitter', 'calla' ) : esc_html__( 'Connect with Twitter', 'calla' );
?>
<?php if ( $message !== '' ) { ?>
<div class="alert alert-success" style="margin-top: 20px;">
<span><?php echo esc_html( $message ); ?></span>
</div>
<?php } ?>
<div class="eltdf-page-form-section" id="eltdf_enable_social_share">
<div class="eltdf-field-desc">
<h4><?php esc_html_e( 'Connect with Twitter', 'calla' ); ?></h4>
<p><?php esc_html_e( 'Connecting with Twitter will enable you to show your latest tweets on your site', 'calla' ); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<a id="eltdf-tw-request-token-btn" class="btn btn-primary" href="#"><?php echo esc_html( $buttonText ); ?></a>
<input type="hidden" data-name="current-page-url" value="<?php echo esc_url( $twitterApi->buildCurrentPageURI() ); ?>"/>
</div>
</div>
</div>
</div>
</div>
<?php }
}
class CallaElatedInstagramFramework implements iCallaElatedRender {
public function render( $factory ) {
$instagram_api = CallaInstagramApi::getInstance();
$message = '';
//check if code parameter and instagram parameter is set in URL
if ( ! empty( $_GET['code'] ) && ! empty( $_GET['instagram'] ) ) {
//update code option so we can use it later
$instagram_api->setConnectionType( 'instagram' );
$instagram_api->instagramStoreCode();
$instagram_api->instagramExchangeCodeForToken();
$message = esc_html__( 'You have successfully connected with your Instagram Personal account.', 'calla' );
}
//check if code parameter and instagram parameter is set in URL
if ( ! empty( $_GET['access_token'] ) && ! empty( $_GET['facebook'] ) ) {
//update code option so we can use it later
$instagram_api->setConnectionType( 'facebook' );
$instagram_api->facebookStoreToken();
$message = esc_html__( 'You have successfully connected with your Instagram Business account.', 'calla' );
}
//check if code parameter and instagram parameter is set in URL
if ( ! empty( $_GET['disconnect'] ) ) {
//update code option so we can use it later
$instagram_api->disconnect();
$message = esc_html__( 'You have have been disconnected from all Instagram accounts.', 'calla' );
}
?>
<?php if ( $message !== '' ) { ?>
<div class="alert alert-success">
<span><?php echo esc_html( $message ); ?></span>
</div>
<?php } ?>
<div class="eltdf-page-form-section" id="eltdf_enable_social_share">
<div class="eltdf-field-desc">
<h4><?php esc_html_e( 'Connect with Instagram', 'calla' ); ?></h4>
<p><?php esc_html_e( 'Connecting with Instagram will enable you to show your latest photos on your site', 'calla' ); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<?php
$instagram_user_id = get_option( $instagram_api::INSTAGRAM_USER_ID );
$connection_type = get_option( $instagram_api::CONNECTION_TYPE );
if ( $instagram_user_id ) { ?>
<div class="row">
<div class="col-lg-12">
<p><?php echo esc_html__( 'You are currently connected to Instagram ID: ', 'calla' );
echo esc_attr( $instagram_user_id ) ?></p>
</div>
</div>
<?php } ?>
<div class="row">
<?php if ( ! empty( $_GET['disconnect'] ) ) { ?>
<div class="col-lg-4">
<a class="btn btn-primary" href="<?php echo esc_url( $instagram_api->reloadURL() ); ?>"><?php echo esc_html__( 'Reload Page', 'calla' ); ?></a>
</div>
<?php } else if ( empty( $connection_type ) ) { ?>
<div class="col-lg-4">
<a class="btn btn-primary" href="<?php echo esc_url( $instagram_api->instagramRequestCode() ); ?>"><?php echo esc_html__( 'Connect with Instagram Personal account', 'calla' ); ?></a>
</div>
<div class="col-lg-4">
<a class="btn btn-primary" href="<?php echo esc_url( $instagram_api->facebookRequestCode() ); ?>"><?php echo esc_html__( 'Connect with Instagram Business account', 'calla' ); ?></a>
</div>
<?php } else { ?>
<div class="col-lg-4">
<a class="btn btn-primary" href="<?php echo esc_url( $instagram_api->disconnectURL() ); ?>"><?php echo esc_html__( 'Disconnect Instagram account', 'calla' ) ?></a>
</div>
<?php } ?>
</div>
</div>
</div>
</div>
<?php }
}
class CallaElatedRepeater implements iCallaElatedRender {
private $label;
private $description;
private $name;
private $fields;
private $num_of_rows;
private $button_text;
private $table_layout;
function __construct( $fields, $name, $label = '', $description = '', $button_text = '', $table_layout = false) {
global $calla_elated_Framework;
$this->label = $label;
$this->description = $description;
$this->fields = $fields;
$this->name = $name;
$this->num_of_rows = 1;
$this->button_text = ! empty( $button_text ) ? $button_text : esc_html__( 'Add New Item', 'calla' );
$this->table_layout = $table_layout;
$counter = 0;
foreach ( $this->fields as $field ) {
if ( ! isset( $this->fields[ $counter ]['options'] ) ) {
$this->fields[ $counter ]['options'] = array();
}
if ( ! isset( $this->fields[ $counter ]['args'] ) ) {
$this->fields[ $counter ]['args'] = array();
}
if ( ! isset( $this->fields[ $counter ]['label'] ) ) {
$this->fields[ $counter ]['label'] = '';
}
if ( ! isset( $this->fields[ $counter ]['description'] ) ) {
$this->fields[ $counter ]['description'] = '';
}
if ( ! isset( $this->fields[ $counter ]['default_value'] ) ) {
$this->fields[ $counter ]['default_value'] = '';
}
$counter ++;
}
$calla_elated_Framework->eltdMetaBoxes->addOption( $this->name, '');
}
public function render( $factory ) {
global $post;
$clones = array();
$wrapper_classes = array();
if ( ! empty( $post ) ) {
$clones = get_post_meta( $post->ID, $this->name, true );
}
$sortable_class = 'sortable';
foreach ( $this->fields as $field ) {
if ( $field['type'] == 'textareahtml' ) {
$sortable_class = '';
break;
}
}
if ($this->table_layout){
$wrapper_classes[] = 'eltdf-repeater-table';
}
?>
<div class="eltdf-repeater-wrapper <?php echo implode(' ', $wrapper_classes)?>">
<?php if ( $this->label !== '') { ?>
<h4><?php echo esc_attr($this->label); ?></h4>
<?php } ?>
<?php if($this->description != ''){ ?>
<p><?php echo esc_attr($this->description); ?></p>
<?php } ?>
<?php if ($this->table_layout) { ?>
<div class="eltdf-repeater-table-heading">
<div class="eltdf-repeater-fields-holder">
<div class="eltdf-repeater-table-cell eltdf-repeater-sort"><?php esc_html_e( 'Order', 'calla' ) ?></div>
<div class="eltdf-repeater-fields">
<?php foreach ( $this->fields as $field ) {
$col_width_class = 'col-xs-12';
if ( ! empty($field['col_width']) ) {
$col_width_class = 'col-xs-'.$field['col_width'];
} ?>
<div class="eltdf-repeater-table-cell <?php echo esc_attr($col_width_class);?>"><?php echo esc_html( $field['th'] ); ?></div>
<?php } ?>
</div>
<div class="eltdf-repeater-table-cell eltdf-repeater-remove"><?php esc_html_e( 'Remove', 'calla' ) ?></div>
</div>
</div>
<?php } ?>
<div class="eltdf-repeater-wrapper-inner <?php echo esc_attr( $sortable_class ); ?>" data-template="<?php echo str_replace('_', '-', $this->name); ?>">
<?php if (! empty($clones) && count($clones) > 0) {
$counter = 0;
foreach($clones as $clone) {
?>
<div class="eltdf-repeater-fields-holder clearfix" data-index="<?php echo esc_attr($counter); ?>">
<div class="eltdf-repeater-sort">
<i class="fa fa-sort"></i>
</div>
<div class="eltdf-repeater-fields">
<?php
foreach ($this->fields as $field) {
$col_width_class = 'col-xs-12';
if ( ! empty($field['col_width']) ) {
$col_width_class = 'col-xs-'.$field['col_width'];
}
?>
<div class="eltdf-repeater-fields-row <?php echo esc_attr($col_width_class);?>">
<div class="eltdf-repeater-fields-row-inner">
<?php
if($field['type'] == 'repeater'){
$sortable_inner_class = 'sortable';
foreach ( $field['fields'] as $field_inner ) {
if ( $field_inner['type'] == 'textareahtml' ) {
$sortable_inner_class = '';
break;
}
} ?>
<div class="eltdf-repeater-inner-wrapper">
<div class="eltdf-repeater-inner-wrapper-inner <?php echo esc_attr( $sortable_inner_class ); ?>" data-template="<?php echo str_replace('_', '-', $field['name']); ?>">
<h4><?php echo esc_attr($field['label']); ?></h4>
<?php if($field['description'] != ''){ ?>
<p><?php echo esc_attr($field['description']); ?></p>
<?php } ?>
<?php if (!empty($clone[$field['name']]) && count($clone[$field['name']]) > 0) {
$counter2 = 0;
foreach($clone[$field['name']] as $clone_inner) {
?>
<div class="eltdf-repeater-inner-fields-holder eltdf-second-level clearfix" data-index="<?php echo esc_attr($counter2); ?>">
<div class="eltdf-repeater-sort">
<i class="fa fa-sort"></i>
</div>
<div class="eltdf-repeater-inner-fields">
<?php
foreach ($field['fields'] as $field_inner) {
$col_width_inner_class = 'col-xs-12';
if ( ! empty($field_inner['col_width']) ) {
$col_width_inner_class = 'col-xs-'.$field_inner['col_width'];
} ?>
<div class="eltdf-repeater-inner-fields-row <?php echo esc_attr( $col_width_inner_class ); ?>">
<div class="eltdf-repeater-inner-fields-row-inner">
<?php
if (!isset($field_inner['options'])) {
$field_inner['options'] = array();
}
if (!isset($field_inner['args'])) {
$field_inner['args'] = array();
}
if (!isset($field_inner['label'])) {
$field_inner['label'] = '';
}
if (!isset($field_inner['description'])) {
$field_inner['description'] = '';
}
if (!isset($field_inner['default_value'])) {
$field_inner['default_value'] = '';
}
if($clone_inner[$field_inner['name']] == '' && $field_inner['default_value'] != ''){
$repeater_inner_field_value = $field_inner['default_value'];
} else {
$repeater_inner_field_value = $clone_inner[$field_inner['name']];
}
$containerClass = '';
$data = array();
if ( ! empty( $field_inner['dependency'] ) ) {
$dependencyValues = calla_elated_return_repeater_dependency_options_array(array(
'field' => $field,
'repeaterName' => $this->name,
'counter' => $counter,
'fieldInner' => $field_inner,
'counter2' => $counter2
));
$data = $dependencyValues['data'];
$containerClass = $dependencyValues['class'];
}
?>
<div class="<?php echo esc_attr($containerClass); ?>" <?php echo calla_elated_get_inline_attrs($data, true); ?>>
<?php
$factory->render($field_inner['type'], $field_inner['name'], $field_inner['label'], $field_inner['description'], $field_inner['options'], $field_inner['args'], array('name'=> $this->name . '['.$counter.']['.$field['name'].']', 'index' => $counter2, 'value' => $repeater_inner_field_value));
?>
</div>
</div>
</div>
<?php
} ?>
</div>
<div class="eltdf-repeater-remove">
<a class="eltdf-clone-inner-remove" href="#"><i class="fa fa-times"></i></a>
</div>
</div>
<?php $counter2++; }
} ?>
</div>
<div class="eltdf-repeater-inner-add">
<a class="eltdf-inner-clone btn btn-sm btn-primary" data-count="<?php echo esc_attr($this->num_of_rows) ?>" href="#"><?php echo esc_html($field['button_text']); ?></a>
</div>
</div>
<?php
} else {
if($clone[$field['name']] == '' && $field['default_value'] != ''){
$repeater_field_value = $field['default_value'];
} else {
$repeater_field_value = $clone[$field['name']];
}
$containerClass = '';
$data = array();
if ( ! empty( $field['dependency'] ) ) {
$dependencyValues = calla_elated_return_repeater_dependency_options_array(array(
'field' => $field,
'repeaterName' => $this->name,
'counter' => $counter
));
$data = $dependencyValues['data'];
$containerClass = $dependencyValues['class'];
}
?>
<div class="<?php echo esc_attr($containerClass); ?>" <?php echo calla_elated_get_inline_attrs($data, true); ?>>
<?php
$factory->render($field['type'], $field['name'], $field['label'], $field['description'], $field['options'], $field['args'], array('name'=> $this->name, 'index' => $counter, 'value' => $repeater_field_value));
?>
</div>
<?php
} ?>
</div>
</div>
<?php } ?>
</div>
<div class="eltdf-repeater-remove">
<a class="eltdf-clone-remove" href="#"><i class="fa fa-times"></i></a>
</div>
</div>
<?php $counter++; } } ?>
<script type="text/html" id="tmpl-eltdf-repeater-template-<?php echo str_replace('_', '-', $this->name); ?>">
<div class="eltdf-repeater-fields-holder <?php echo esc_attr( $sortable_class ); ?> clearfix" data-index="{{{ data.rowIndex }}}">
<div class="eltdf-repeater-sort">
<i class="fa fa-sort"></i>
</div>
<div class="eltdf-repeater-fields">
<?php
foreach ($this->fields as $field) {
$col_width_class = 'col-xs-12';
if ( ! empty($field['col_width']) ) {
$col_width_class = 'col-xs-'.$field['col_width'];
} ?>
<div class="eltdf-repeater-fields-row <?php echo esc_attr($col_width_class);?>">
<div class="eltdf-repeater-fields-row-inner">
<?php
if($field['type'] == 'repeater') { ?>
<div class="eltdf-repeater-inner-wrapper">
<div class="eltdf-repeater-inner-wrapper-inner" data-template="<?php echo str_replace('_', '-', $field['name']); ?>">
<h4><?php echo esc_attr($field['label']); ?></h4>
<?php if($field['description'] != ''){ ?>
<p><?php echo esc_attr($field['description']); ?></p>
<?php } ?>
</div>
<div class="eltdf-repeater-inner-add">
<a class="eltdf-inner-clone btn btn-sm btn-primary" data-count="<?php echo esc_attr($this->num_of_rows) ?>" href="#">
<?php echo esc_html($field['button_text']); ?>
</a>
</div>
</div>
<?php } else {
$containerClass = '';
$data = array();
if ( ! empty( $field['dependency'] ) ) {
$dependencyValues = calla_elated_return_repeater_dependency_options_array( array(
'field' => $field,
'repeaterName' => $this->name,
'counter' => '{{{ data.rowIndex }}}',
'newFieldDepedency' => true,
) );
$data = $dependencyValues['data'];
$containerClass = $dependencyValues['class'];
}
?>
<div class="<?php echo esc_attr($containerClass); ?>" <?php echo calla_elated_get_inline_attrs($data, true); ?>>
<?php
$repeater_template_field_value = ($field['default_value'] != '') ? $field['default_value'] : '';
$factory->render($field['type'], $field['name'], $field['label'], $field['description'], $field['options'], $field['args'], array('name' => $this->name, 'index' => '{{{ data.rowIndex }}}', 'value' => $repeater_template_field_value));
?>
</div> <?php
} ?>
</div>
</div>
<?php
} ?>
</div>
<div class="eltdf-repeater-remove">
<a class="eltdf-clone-remove" href="#"><i class="fa fa-times"></i></a>
</div>
</div>
</script>
<?php
//add script if field type repeater
foreach ($this->fields as $field) {
if($field['type'] == 'repeater') {
?>
<script type="text/html" id="tmpl-eltdf-repeater-inner-template-<?php echo str_replace('_', '-', $field['name']); ?>">
<div class="eltdf-repeater-inner-fields-holder eltdf-second-level clearfix" data-index="{{{ data.rowInnerIndex }}}">
<div class="eltdf-repeater-sort">
<i class="fa fa-sort"></i>
</div>
<div class="eltdf-repeater-inner-fields">
<?php $counter2 = 0;
foreach ($field['fields'] as $field_inner) {
$col_width_inner_class = 'col-xs-12';
if ( ! empty($field_inner['col_width']) ) {
$col_width_inner_class = 'col-xs-'.$field_inner['col_width'];
} ?>
<div class="eltdf-repeater-inner-fields-row <?php echo esc_attr($col_width_inner_class);?>">
<div class="eltdf-repeater-fields-row-inner">
<?php
if (!isset($field_inner['options'])) {
$field_inner['options'] = array();
}
if (!isset($field_inner['args'])) {
$field_inner['args'] = array();
}
if (!isset($field_inner['label'])) {
$field_inner['label'] = '';
}
if (!isset($field_inner['description'])) {
$field_inner['description'] = '';
}
if (!isset($field_inner['default_value'])) {
$field_inner['default_value'] = '';
}
$containerClass = '';
$data = array();
if ( ! empty( $field_inner['dependency'] ) ) {
$dependencyValues = calla_elated_return_repeater_dependency_options_array( array(
'field' => $field,
'repeaterName' => $this->name,
'counter' => '{{{ data.rowIndex }}}',
'fieldInner' => $field_inner,
'counter2' => '{{{ data.rowInnerIndex }}}',
'newFieldDepedency' => true,
) );
$data = $dependencyValues['data'];
$containerClass = $dependencyValues['class'];
}
?>
<div class="<?php echo esc_attr($containerClass); ?>" <?php echo calla_elated_get_inline_attrs($data, true); ?>>
<?php
$repeater_inner_template_field_value = ($field_inner['default_value'] != '') ? $field_inner['default_value'] : '';
$factory->render($field_inner['type'], $field_inner['name'], $field_inner['label'], $field_inner['description'], $field_inner['options'], $field_inner['args'], array('name'=> $this->name . '[{{{ data.rowIndex }}}]['.$field['name'].']', 'index' => '{{{ data.rowInnerIndex }}}', 'value' => $repeater_inner_template_field_value));
?>
</div>
</div>
</div>
<?php
$counter2++; } ?>
</div>
<div class="eltdf-repeater-remove">
<a class="eltdf-clone-inner-remove" href="#"><i class="fa fa-times"></i></a>
</div>
</div>
</script>
<?php }
} ?>
</div>
<div class="eltdf-repeater-add">
<a class="eltdf-clone btn btn-sm btn-primary" data-count="<?php echo esc_attr( $this->num_of_rows ) ?>" href="#"><?php echo esc_html( $this->button_text ); ?></a>
</div>
</div>
<?php
}
}
class CallaElatedFieldAddress extends CallaElatedFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array(), $repeat = array() ) {
$col_width = 12;
if ( isset( $args["col_width"] ) ) {
$col_width = $args["col_width"];
}
$suffix = ! empty( $args['suffix'] ) ? $args['suffix'] : false;
$class = $id = $country = $lat_field = $long_field = '';
if (!empty($repeat) && array_key_exists('name', $repeat) && array_key_exists('index', $repeat)) {
$id = $name . '-' . $repeat['index'];
$name = $repeat['name'] . '['.$repeat['index'].']['. $name .']';
$value = $repeat['value'];
} else {
$id = $name;
$value = calla_elated_option_get_value( $name );
}
if ( $label === '' && $description === '' ) {
$class .= ' eltdf-no-description';
}
if ( isset( $args['country'] ) && $args['country'] != '' ) {
$country = $args['country'];
}
if ( isset( $args['latitude_field'] ) && $args['latitude_field'] != '' ) {
$lat_field = $args['latitude_field'];
}
if ( isset( $args['longitude_field'] ) && $args['longitude_field'] != '' ) {
$long_field = $args['longitude_field'];
}
?>
<div class="eltdf-page-form-section eltdf-address-field <?php echo esc_attr( $class ); ?>" data-country="<?php echo esc_attr( $country ); ?>" data-lat-field="<?php echo esc_attr( $lat_field ); ?>" data-long-field="<?php echo esc_attr( $long_field ); ?>" id="eltdf_<?php echo esc_attr( $id ); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html( $label ); ?></h4>
<p><?php echo esc_html( $description ); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-<?php echo esc_attr( $col_width ); ?>">
<?php if ( $suffix ) : ?>
<div class="input-group">
<?php endif; ?>
<input type="text" class="form-control eltdf-input eltdf-form-element" name="<?php echo esc_attr( $name ); ?>" value="<?php echo esc_attr( htmlspecialchars( $value ) ); ?>"/>
<?php if ( $suffix ) : ?>
<div class="input-group-addon"><?php echo esc_html( $args['suffix'] ); ?></div>
<?php endif; ?>
<?php if ( $suffix ) : ?>
</div>
<?php endif; ?>
<div class="map_canvas"></div>
<button id="find" class="btn btn-primary"><?php esc_html_e( 'Place the pin on the map', 'calla' ); ?></button>
<a id="reset" href="#" style="display:none;"><?php esc_html_e( 'Reset Marker', 'calla' ); ?></a>
</div>
</div>
</div>
</div>
</div>
<?php
}
}
class CallaElatedFieldIcon extends CallaElatedFieldType {
public function render( $name, $label = "", $description = "", $options = array(), $args = array(), $repeat = array() ) {
$class = '';
if (!empty($repeat) && array_key_exists('name', $repeat) && array_key_exists('index', $repeat)) {
$id = $name . '-' . $repeat['index'];
$name = $repeat['name'] . '['.$repeat['index'].']['. $name .']';
$rvalue = $repeat['value'];
} else {
$id = $name;
$rvalue = calla_elated_option_get_value($name);
}
$select2 = '';
if (isset($args['select2'])) {
$select2 = 'eltdf-select2';
}
$col_width = 3;
if(isset($args['col_width'])) {
$col_width = $args['col_width'];
}
if($label === '' && $description === '') {
$class .= ' eltdf-no-description';
}
$icon_packs = \CallaElatedIconCollections::get_instance()->getIconCollectionsEmpty();
$icons_collections = \CallaElatedIconCollections::get_instance()->getIconCollectionsKeys();
?>
<div class="eltdf-page-form-section <?php echo esc_attr($class); ?>" id="eltdf_<?php echo esc_attr($id); ?>">
<div class="eltdf-field-desc">
<h4><?php echo esc_html($label); ?></h4>
<p><?php echo esc_html($description); ?></p>
</div>
<div class="eltdf-section-content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-<?php echo esc_attr($col_width); ?>">
<select name="<?php echo esc_attr( $name ) . '[icon_pack]'; ?>" class="<?php echo esc_attr($select2) ?> form-control eltdf-form-element icon-dependence">
<?php foreach($icon_packs as $key=>$value) { if ($key == "-1") $key = ""; ?>
<option <?php if (!empty($rvalue) && $rvalue['icon_pack'] == $key) { echo "selected='selected'"; } ?> value="<?php echo esc_attr($key); ?>"><?php echo esc_html($value); ?></option>
<?php } ?>
</select>
</div>
</div>
<?php foreach ( $icons_collections as $icons_collection ) { ?>
<?php
$icons_param = \CallaElatedIconCollections::get_instance()->getIconCollectionParamNameByKey( $icons_collection );
$style = 'display: none';
if ( !empty($rvalue) && $rvalue['icon_pack'] == $icons_collection ) {
$style = 'display: block';
}
?>
<div class="row eltdf-icon-collection-holder" style="<?php echo esc_attr( $style ); ?>" data-icon-collection="<?php echo esc_attr( $icons_collection ); ?>">
<div class="col-lg-<?php echo esc_attr($col_width); ?>">
<select name="<?php echo esc_attr( $name . '[' . $icons_param . ']'); ?>" class="<?php echo esc_attr($select2) ?> form-control eltdf-form-element">
<?php
$icons = \CallaElatedIconCollections::get_instance()->getIconCollection( $icons_collection );
$active_icon = $rvalue[$icons_param];
foreach ( $icons->icons as $option => $key ) { ?>
<option value="<?php echo esc_attr( $option ); ?>" <?php if ( $option == $active_icon ) { echo 'selected'; } ?>><?php echo esc_attr( $key ); ?></option>
<?php } ?>
</select>
</div>
</div>
<?php } ?>
</div>
</div>
</div>
<?php
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,153 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
if ( ! class_exists( 'CallaElatedWelcomePage' ) ) {
class CallaElatedWelcomePage {
/**
* Singleton class
*/
private static $instance;
/**
* Get the instance of CallaElatedWelcomePage
*
* @return self
*/
public static function getInstance() {
if ( ! ( self::$instance instanceof self ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Constructor
*/
private function __construct() {
// Theme activation hook
add_action( 'after_switch_theme', array( $this, 'initActivationHook' ) );
// Welcome page redirect on theme activation
add_action( 'admin_init', array( $this, 'welcomePageRedirect' ) );
// Add welcome page into theme options
add_action( 'admin_menu', array( $this, 'addWelcomePage' ), 12 );
//Enqueue theme welcome page scripts
add_action( 'calla_elated_admin_scripts_init', array( $this, 'enqueueStyles' ) );
}
/**
* Init hooks on theme activation
*/
function initActivationHook() {
if ( ! is_network_admin() ) {
set_transient( '_calla_elated_welcome_page_redirect', 1, 30 );
}
}
/**
* Redirect to welcome page on theme activation
*/
function welcomePageRedirect() {
// If no activation redirect, bail
if ( ! get_transient( '_calla_elated_welcome_page_redirect' ) ) {
return;
}
// Delete the redirect transient
delete_transient( '_calla_elated_welcome_page_redirect' );
// If activating from network, or bulk, bail
if ( is_network_admin() || isset( $_GET['activate-multi'] ) ) {
return;
}
// Redirect to welcome page
wp_safe_redirect( add_query_arg( array( 'page' => 'calla_elated_welcome_page' ), esc_url( admin_url( 'themes.php' ) ) ) );
exit;
}
/**
* Add welcome page
*/
function addWelcomePage() {
add_theme_page(
esc_html__( 'About', 'calla' ),
esc_html__( 'About', 'calla' ),
current_user_can( 'edit_theme_options' ),
'calla_elated_welcome_page',
array( $this, 'welcomePageContent' )
);
remove_submenu_page( 'themes.php', 'calla_elated_welcome_page' );
}
/**
* Print welcome page content
*/
function welcomePageContent() {
$eltdf_theme = wp_get_theme();
$eltdf_theme_name = esc_html( $eltdf_theme->get( 'Name' ) );
$eltdf_theme_description = esc_html( $eltdf_theme->get( 'Description' ) );
$eltdf_theme_version = $eltdf_theme->get( 'Version' );
$eltdf_theme_screenshot = file_exists( ELATED_ROOT_DIR . '/screenshot.png' ) ? ELATED_ROOT . '/screenshot.png' : ELATED_ROOT . '/screenshot.jpg';
$eltdf_welcome_page_class = 'eltdf-welcome-page-' . ELATED_PROFILE_SLUG;
?>
<div class="wrap about-wrap eltdf-welcome-page <?php echo esc_attr( $eltdf_welcome_page_class ); ?>">
<div class="eltdf-welcome-page-content">
<div class="eltdf-welcome-page-logo">
<img src="<?php echo esc_url( calla_elated_get_skin_uri() . '/assets/img/logo.png' ); ?>" alt="<?php esc_attr_e( 'Profile Logo', 'calla' ); ?>" />
</div>
<h1 class="eltdf-welcome-page-title">
<?php echo sprintf( esc_html__( 'Welcome to %s', 'calla' ), $eltdf_theme_name ); ?>
<small><?php echo esc_html( $eltdf_theme_version ) ?></small>
</h1>
<div class="about-text eltdf-welcome-page-text">
<?php echo sprintf( esc_html__( 'Thank you for installing %s - %s! Everything in %s is streamlined to make your website building experience as simple and fun as possible. We hope you love using it to make a spectacular website.', 'calla' ),
$eltdf_theme_name,
$eltdf_theme_description,
$eltdf_theme_name
); ?>
<img src="<?php echo esc_url( $eltdf_theme_screenshot ); ?>" alt="<?php esc_attr_e( 'Theme Screenshot', 'calla' ); ?>" />
<h4><?php esc_html_e( 'Useful Links:', 'calla' ); ?></h4>
<ul class="eltdf-welcome-page-links">
<li>
<a href="<?php echo sprintf('https://%s.ticksy.com/', ELATED_PROFILE_SLUG ); ?>" target="_blank"><?php esc_html_e( 'Support Forum', 'calla' ); ?></a>
</li>
<li>
<a href="<?php echo sprintf('http://calla.%s-themes.com/documentation/', ELATED_PROFILE_SLUG ); ?>" target="_blank"><?php esc_html_e( 'Theme Documentation', 'calla' ); ?></a>
</li>
<li>
<a href="<?php echo sprintf('https://themeforest.net/user/%s-themes/portfolio/', ELATED_PROFILE_SLUG ); ?>" target="_blank"><?php esc_html_e( 'All Our Themes', 'calla' ); ?></a>
</li>
<li>
<a href="<?php echo add_query_arg( array( 'page' => 'install-required-plugins&plugin_status=install' ), esc_url( admin_url( 'themes.php' ) ) ); ?>"><?php esc_html_e( 'Install Required Plugins', 'calla' ); ?></a>
</li>
</ul>
</div>
</div>
</div>
<?php
}
/**
* Enqueue theme welcome page scripts
*/
function enqueueStyles() {
wp_enqueue_style( 'calla_elated_welcome_page_style', ELATED_FRAMEWORK_ADMIN_ASSETS_ROOT . '/css/eltdf-welcome-page.css' );
}
}
}
CallaElatedWelcomePage::getInstance();