/**
  * Generates list of shortcodes only for Grid element.
  *
  * This method parses the list of mapped shortcodes and creates categories list for users.
  * Also it checks is 'is_grid_item_element' attribute true.
  *
  * @static
  *
  * @param bool $force - force data generation even data already generated.
  */
 protected static function generateGitemUserData($force = false)
 {
     if (!$force && self::$gitem_user_sc !== false && self::$gitem_user_categories !== false) {
         return;
     }
     // $settings = self::getSettings();
     self::$gitem_user_sc = self::$gitem_user_categories = self::$gitem_user_sorted_sc = array();
     $deprecated = 'deprecated';
     $add_deprecated = false;
     if (is_array(self::$sc) && !empty(self::$sc)) {
         foreach (self::$sc as $name => $values) {
             if (isset($values['post_type']) && Vc_Grid_Item_Editor::postType() === $values['post_type']) {
                 if (!isset($values['content_element']) || $values['content_element'] === true) {
                     $categories = isset($values['category']) ? $values['category'] : '_other_category_';
                     $values['_category_ids'] = array();
                     if (isset($values['deprecated']) && $values['deprecated'] !== false) {
                         $add_deprecated = true;
                         $values['_category_ids'][] = $deprecated;
                     } else {
                         if (is_array($categories) && !empty($categories)) {
                             foreach ($categories as $c) {
                                 if (array_search($c, self::$gitem_user_categories) === false) {
                                     self::$gitem_user_categories[] = $c;
                                 }
                                 $values['_category_ids'][] = md5($c);
                                 // array_search($category, self::$categories);
                             }
                         } else {
                             if (array_search($categories, self::$gitem_user_categories) === false) {
                                 self::$gitem_user_categories[] = $categories;
                             }
                             $values['_category_ids'][] = md5($categories);
                             // array_search($category, self::$categories);
                         }
                     }
                 }
                 self::$gitem_user_sc[$name] = $values;
                 self::$gitem_user_sorted_sc[] = $values;
             }
         }
     }
     if ($add_deprecated) {
         self::$gitem_user_categories[] = $deprecated;
     }
     $sort = new Vc_Sort(self::$gitem_user_sorted_sc);
     self::$gitem_user_sorted_sc = $sort->sortByKey();
 }
 /**
  * Get categories list from mapping data.
  * @since 4.5
  *
  * @return array
  */
 public function getCategories()
 {
     return WpbMap_Grid_Item::getGitemUserCategories();
 }
			vcAdminNonce = '<?php 
echo vc_generate_nonce('vc-admin-nonce');
?>
';
	</script>

	<script type="text/html" id="vc_settings-image-block">
		<li class="added">
			<div class="inner" style="width: 80px; height: 80px; overflow: hidden;text-align: center;">
				<img rel="{{ id }}" src="<# if(sizes && sizes.thumbnail) { #>{{ sizes.thumbnail.url }}<# } else {#>{{ url }}<# } #>"/>
			</div>
			<a href="#" class="vc_icon-remove"></a>
		</li>
	</script>
<?php 
foreach (WpbMap_Grid_Item::getShortCodes() as $sc_base => $el) {
    ?>
	<script type="text/html" id="vc_shortcode-template-<?php 
    echo $sc_base;
    ?>
">
		<?php 
    echo visual_composer()->getShortCode($sc_base)->template();
    ?>
	</script>
<?php 
}
?>

<?php 
vc_include_template('editors/partials/access-manager-js.tpl.php');