/** * * @param type $content : inner shortcode elements of this column * @param string $shortcode_data * @return string */ public function element_in_megamenu($content = '', $shortcode_data = '') { $column_html = empty($content) ? '' : WR_Megamenu_Helpers_Shortcode::do_shortcode_admin($content, true); $span = !empty($this->params['span']) ? $this->params['span'] : 'span12'; $shortcode_data = '[' . $this->config['shortcode'] . ' span="' . $span . '"]'; // Remove empty value attributes of shortcode tag. $shortcode_data = preg_replace('/\\[*([a-z_]*[\\n\\s\\t]*=[\\n\\s\\t]*"")/', '', $shortcode_data); $rnd_id = WR_Megamenu_Helpers_Common::random_string(); $column[] = '<div class="jsn-column-container clearafter shortcode-container "> <div class="jsn-column ' . $span . '"> <div class="thumbnail clearafter"> <textarea class="hidden" name="shortcode_content[]" >' . $shortcode_data . '</textarea> <div class="jsn-column-content item-container" data-column-class="' . $span . '" > <div class="jsn-handle-drag jsn-horizontal jsn-iconbar-trigger"><div class="jsn-iconbar layout"><a class="item-delete column" onclick="return false;" title="' . __('Delete column', WR_MEGAMENU_TEXTDOMAIN) . '" href="#"><i class="icon-trash"></i></a></div></div> <div class="jsn-element-container item-container-content">' . $column_html . '</div> <a class="jsn-add-more wr-more-element" href="javascript:void(0);"><i class="icon-plus"></i>' . __('Add Element', WR_MEGAMENU_TEXTDOMAIN) . '</a> </div> <textarea class="hidden" name="shortcode_content[]" >[/' . $this->config['shortcode'] . ']</textarea> </div> </div> </div>'; return $column; }
/** * * @param type $content : inner shortcode elements of this row * @param type $shortcode_data : not used * @return string */ public function element_in_megamenu($content = '', $shortcode_data = '') { if (empty($content)) { $column = new WR_Megamenu_Column(); $column_html = $column->element_in_megamenu(); $column_html = $column_html[0]; } else { $column_html = WR_Megamenu_Helpers_Shortcode::do_shortcode_admin($content); } if (empty($shortcode_data)) { $shortcode_data = $this->config['shortcode_structure']; } // remove [/wr_megamenu_row][wr_megamenu_column...] from $shortcode_data $shortcode_data = explode('][', $shortcode_data); $shortcode_data = $shortcode_data[0] . ']'; // Remove empty value attributes of shortcode tag. $shortcode_data = preg_replace('/\\[*([a-z_]*[\\n\\s\\t]*=[\\n\\s\\t]*"")/', '', $shortcode_data); $custom_style = WR_Megamenu_Helpers_Placeholder::get_placeholder('custom_style'); $row[] = '<div class="jsn-row-container ui-sortable row-fluid shortcode-container" ' . $custom_style . '> <textarea class="hidden" data-sc-info="shortcode_content" name="shortcode_content[]" >' . $shortcode_data . '</textarea> <div class="jsn-iconbar left"> <a href="javascript:void(0);" title="' . __('Move Up', WR_MEGAMENU_TEXTDOMAIN) . '" class="jsn-move-up disabled"><i class="icon-chevron-up"></i></a> <a href="javascript:void(0);" title="' . __('Move Down', WR_MEGAMENU_TEXTDOMAIN) . '" class="jsn-move-down disabled"><i class=" icon-chevron-down"></i></a> </div> <div class="wr-row-content"> ' . $column_html . ' </div> <div class="jsn-iconbar jsn-vertical"> <a href="javascript:void(0);" onclick="return false;" class="add-container" title="' . __('Add column', WR_MEGAMENU_TEXTDOMAIN) . '"><i class="wr-icon-add-col"></i></a> <a href="javascript:void(0);" onclick="return false;" title="Edit row" data-shortcode="' . $this->config['shortcode'] . '" class="element-edit row"><i class="icon-pencil"></i></a> <a href="javascript:void(0);" onclick="return false;" class="item-delete row" title="' . __('Delete row', WR_MEGAMENU_TEXTDOMAIN) . '"><i class="icon-trash"></i></a> </div> <textarea class="hidden" name="shortcode_content[]" >[/' . $this->config['shortcode'] . ']</textarea> </div>'; return $row; }
/** * Get layout for each menu */ public function get_menu_layout() { $menu_id = (int) $_POST['menu_id']; $profile_id = (int) $_POST['profile_id']; $data = WR_Megamenu_Helpers_Builder::get_megamenu_data($profile_id, $menu_id); if (count($data) && !empty($data['shortcode_content'])) { $content = urldecode($data['shortcode_content']); $builder = new WR_Megamenu_Helpers_Shortcode(); // remove wrap p tag $content = preg_replace('/^<p>(.*)<\\/p>$/', '$1', $content); $content = balanceTags($content); echo balanceTags($builder->do_shortcode_admin($content, false, true)); } else { echo ''; } exit; }