Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- //check if the template has the needed Data
- if($class_support->checkTemplateCompatible($edit_template))
- {
- $template_id = $class_support->getTemplateId($edit_template);
- //...
- //check if temp layouts exist and ask to load
- if($class_support->checkForTempLayouts($template_id) && !isset($_GET['tl']))
- {
- $module_select_content = '<form method="get" action="' . $action . '">
- <p class="temp_layout_load_ask">
- ' . $class_support->getTranslation('load_temp_layout_ask', $benutzer_sprache) . '
- </p>
- <input type="hidden" name="t" id="t" value="' . $edit_template . '"/>
- <input type="hidden" name="tl" id="tl" value="0" />
- <p class="temp_layout_load_ask">
- <input type="submit" value="' . $class_support->getTranslation('yes', $benutzer_sprache) . '" onclick="document.getElementById(\'tl\').value=1" />
- <input type="submit" value="' . $class_support->getTranslation('no', $benutzer_sprache) . '" />
- </p>
- </form>';
- }
- else
- {
- if(isset($_GET['tl']))
- {
- if($_GET['tl'] == 1)
- {
- $load_temp = true;
- }
- else
- {
- $load_temp = false;
- }
- }
- else
- {
- $load_temp = false;
- }
- //loading all needed data to create the module select
- $template_layouts = new Template_Layouts($template_id,$benutzer_sprache, $load_temp);
- $layouts = $template_layouts->getLayouts();
- $tabs = '';
- $tab_content = '';
- //echo '<pre>';var_export($layouts);echo '</pre>';
- //create for each layout a module select
- foreach($layouts as $layout)
- {
- $template_layout = $layout['display_layout'];
- $layout_id = $template_layout->getLayoutId();
- $display_reset_btn = '';
- $preview_opt = '';
- //setting up the ids to start at the last save
- if($load_temp == true)
- {
- $tmp = $template_layout->getReferenceId();
- if(!is_null($tmp))
- {
- $temp_id = $layout_id;
- $layout_id = $tmp;
- }
- else
- {
- $temp_id = '';
- }
- }
- else
- {
- $temp_id = '';
- }
- //don't display the reset btn for the base display and empty displays
- if((int)$layout_id != 0 && $template_layout->getDefaultLayout() == 0)
- {
- $display_reset_btn = '<img src="../shop_admin/images/close_16.png" onclick="resetDisplay(' . $layout['display_id'] . ');" title="' . $class_support->getTranslation('reset_display', $benutzer_sprache) . '" class="delete_img"/>';
- }
- //2013.09.12 MD: ausnahme für die kategorien bis die vorschau umgebaut wurde.
- if($layout['display_id'] != 3)
- {
- $preview_opt = '<input type="button" value="' . $class_support->getTranslation('preview', $benutzer_sprache) . '" onclick="showPreview(\'' . $layout_id . '\');" />
- <span style="float:right;text-decoration:none;">
- <input title="' . $class_support->getTranslation('hold_preview_tipp', $benutzer_sprache) . '" type="checkbox" id="hold_preview_' . $layout['display_id'] . '" class="hold_preview" name="hold_preview" value="' . $layout_id . '"/>
- <label title="' . $class_support->getTranslation('hold_preview_tipp', $benutzer_sprache) . '" for="hold_preview_' . $layout['display_id'] . '">
- ' . $class_support->getTranslation('hold_preview', $benutzer_sprache) . '
- </label>
- </span>';
- }
- $tabs .= '<li>
- ' . $display_reset_btn . '
- <a href="#' . $layout_id . '">' . $layout['display_name'] . '</a>
- </li>';
- //setting the data for each accordion section
- $accordion_data = array
- (
- 'module' => $template_layout->getLayoutModules()->getFreeModules(),
- 'place_box' => $template_layout->getLayoutPlaceholders()->getFreePlaceholdersBox(),
- 'place' => $template_layout->getLayoutPlaceholders()->getFreePlaceholders(),
- 'pic_slide' => $template_layout->getPictureSliders()->getFreeSliders(),
- 'prod_slide' => $template_layout->getProductSliders()->getFreeSliders()
- );
- //filling the accordion with data
- foreach($accordion_data as $ac_section => $section_data)
- {
- //section header with div for trash
- $section_string = '<div class="' . $ac_section . '_container">';
- //inserting the free objects into the container
- foreach($section_data as $move_object)
- {
- $title_link_a = '';
- $title_link_b = '';
- //MD: 2013-09-23 added links to the settings of each element
- if($ac_section == 'module') //setting the variables if it is a module
- {
- $internal_name = $move_object->getModuleInternalName();
- if(in_array($internal_name, $module_manager_modules))
- {
- //...
- }
- $sizes = $move_object->getModuleSizes();
- $temp_title = $move_object->getModuleName();
- $object_id = $move_object->getModuleId();
- }
- else if($ac_section == 'place' || $ac_section == 'place_box') //setting the variables if it is a placeholder - box
- {
- $sizes = $move_object->getPlaceholderSizes();
- $temp_title = $move_object->getPlaceholderTitle();
- $object_id = $move_object->getPlaceholderId();
- //...
- if($ac_section == 'place')
- {
- $object_id = 'p_' . $object_id;
- }
- else
- {
- $object_id = 'pb_' . $object_id;
- }
- }
- else if($ac_section == 'pic_slide' || $ac_section == 'prod_slide')
- {
- $temp_title = $move_object->getSliderTitle();
- if($ac_section == 'pic_slide')
- {
- $sizes = $move_object->getSliderSizes();
- $object_id = $move_object->getSliderId();
- //...
- $object_id = 'ps_' . $object_id;
- }
- else
- {
- $sizes = $move_object->getSliderSizes();
- $object_id = $move_object->getSliderId();
- //...
- $object_id = 'pr_' . $object_id;
- }
- }
- //2013-07-16 MD: added to enable the reset of an element
- $reset_button = '<img class="drag_reset_img" onclick="resetElement(\'' . $layout_id . '\', \'' . $object_id . '\', \'' . $ac_section . '_container\')" title="' . $class_support->getTranslation('reset_element', $benutzer_sprache) . '" src="../shop_admin/images/close_16.png" />';
- //creating the div which shows the user the available sizes
- $size_display = '<div class="module_size_container">';
- foreach($sizes as $size)
- {
- $size_display .= '<span title="' . $class_support->getTranslation($ac_section . '_size_noti', $benutzer_sprache) . '" class="size_noti_' . $size . '"></span>';
- }
- $size_display .= '</div>';
- //2013-10-15 MD: #6745 changed to css to use always the available space
- $module_title = '<span class="text_center" title="' . $temp_title . '">' . $title_link_a . $temp_title . $title_link_b . '</span>';
- $handle = '<span class="select_handle" title="' . $class_support->getTranslation('drag_element', $benutzer_sprache) . '"></span>';
- $section_string .= '<div data-sizes="' . implode('|', $sizes) . '" data-id="' . $object_id . '" class="' . $ac_section . '_drag">' . $reset_button . $size_display . $handle . $module_title . '</div>';
- }
- $section_string .= '</div>';
- if($ac_section == 'module')
- {
- $available_modules = $section_string;
- }
- else if($ac_section == 'place_box')
- {
- $available_placeholders_box = $section_string;
- }
- else if($ac_section == 'place')
- {
- $available_placeholders = $section_string;
- }
- else if($ac_section == 'pic_slide')
- {
- $available_pic_sliders = $section_string;
- }
- else if($ac_section == 'prod_slide')
- {
- $available_prod_sliders = $section_string;
- }
- }
- //inserting the containers into the accordion
- $accordion = '<div class="module_accordion">
- <h3>' . $class_support->getTranslation('modules', $benutzer_sprache) . '</h3>
- ' . $available_modules . '
- <h3>' . $class_support->getTranslation('placeholders_box', $benutzer_sprache) . '</h3>
- ' . $available_placeholders_box . '
- <h3>' . $class_support->getTranslation('placeholders', $benutzer_sprache) . '</h3>
- ' . $available_placeholders . '
- <h3>' . $class_support->getTranslation('picture_sliders', $benutzer_sprache) . '</h3>
- ' . $available_pic_sliders . '
- <h3>' . $class_support->getTranslation('product_sliders', $benutzer_sprache) . '</h3>
- ' . $available_prod_sliders . '
- </div>';
- $template_structure = '<table cellpadding="0" cellspacing="0">
- <tr>
- <td class="accordion">
- ' . $accordion . '
- </td>
- <td class="template_structure" data-layout-id="' . $layout_id . '">
- <input type="hidden" class="temp_layout_id" data-id="' . $layout_id . '" value="' . $temp_id . '" />
- <div class="button_row">
- ' . $class_support->getTranslation('choosen_display', $benutzer_sprache) . '
- <span>' . $layout['display_name'] . '</span>
- <input type="button" value="' . $class_support->getTranslation('save', $benutzer_sprache) . '" onclick="templateSave();" />
- ' . $preview_opt . '
- </div>
- ' . $template_layout->getTemplateStructure() . '
- </td>
- <td valign="top" width="50" align="center">
- <a href="' . $help_link . '" target="_blank" title="zum Handbuch">
- <img src="../shop_admin/images/help_blue.png" style="margin-right: 7px; padding-top:2px;border:0px;">Hilfe</a>
- </td>
- </tr>
- </table>';
- $tab_content .= '<div id="' . $layout_id . '">' . $template_structure . '</div>';
- }
- if($class_support->templateIsResponsive($edit_template))
- {
- $column_number = 6;
- }
- else
- {
- $column_number = 5;
- }
- $responsive_code = '<input type="hidden" id="template_columns" value="' . $column_number . '" />
- <style type="text/css">
- .module_size_container span:first-child:nth-last-child(' . $column_number . '),
- .module_size_container span:first-child:nth-last-child(' . $column_number . ') ~ span
- {
- display: none;
- }
- </style>';
- //inserting the generated code
- $module_select_content = '<div id="layout_tabs">
- <ul>
- ' . $tabs . '
- </ul>
- ' . $tab_content . '
- </div>
- <input type="hidden" id="template_id" name="template_id" value="' . $template_layouts->getTemplateId() . '" />
- <input type="hidden" id="template_name" name="template_name" value="' . $edit_template . '" />
- ' . $responsive_code . '
- <input type="hidden" id="language" name="language" value="' . $benutzer_sprache . '" />
- <div style="display:none" id="position_error" title="' . $class_support->getTranslation('position_error_title', $benutzer_sprache) . '" ></div>
- <div style="display:none" id="save_notice"></div>';
- }
- }
- else
- {
- $module_select_content = '<p class="error">' . $class_support->getTranslation('not_compatible', $benutzer_sprache) . '</p>';
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement