Jump to content

Patrick

Members
  • Posts

    244
  • Joined

  • Last visited

  • Days Won

    21

Posts posted by Patrick

  1. Hello,

    I thik you try to secure the application.
    Look this blog  you will have some information.

    https://www.clicshopping.org/forum/blogs/entry/4-clicshopping-installation-process/


     

    - /includes/ClicShopping/Sites/Shop/site_conf.php : store configuration file (catalog)
    
    - /includes/ClicShopping/Sites/ClicShoppingAdmin/site_conf.php : store configuration file (administration) ===> this one to change ClicShoppingAdmin By MyAdmin
    
    - /includes/ClicShopping/Conf : database access

     

  2. Hello @drack,

    You can make an update one by one, in manual . It's possible one is not again updated but works fine with php8, it's better to not touch ?

    go to your root chop and : composer update mylibraries
    You can also remove the librairies and reinstall it. But I recommend to do that on test website : comnposer remove mylibraries

    +

    • Like 1
    • Thanks 3
  3. Hello @Carole,
    The major point about boostrap is it's a major release, B4 and B5 are very different.
    Jquery is not used anymore for example.
    About ClicShopping, Bootstrap 5 icon is now including inside the application, fontAwesome has been removed. For some people are developed app with font awesome by default, must update that or use the old hook in the ClicShopping v2.x
    Also some jquery script has been removed but Jquery is always inside the application, I think this framework will disappear in the futur.

    In all case, a big work has been done, and congratulation

    • Thanks 3
  4. Hello,

    Maybe the software do not tun under your configuration, no problem. But for me I never had  a problem and I use different provider european and american.

    Just for your information, if you want to write inside a file you need to change the permission in 777, no choice and after change in 4448 process install).

     

    Your are no lucky with your experience, for me I have no problem.

    Regards.

     

  5. Hello Eolia,

     

    Not exactly, You can upload a csv, but you can put directly in your server the csv, For example for google shopping will allow you to upload your csv with a ftp connexion.

    In this case, you have nothing to do, just manage your product inside ClicShopping.

    In summary, it create a csv, txt but it allow you to do more thing that just a library specialized on amazon for example.

  6. Hi @Catalina,

    You must decide where you want to implement this module.

     

    - Header, footer, boxe ?

    - You can look after an exististing module and you can include the information that you want inside.

    - Generally you have this inside the module(structure)


      - module_header_google_translate (case of header)
         he_header_google_translate.php

             content (directory)

                 header_google_translate.php (html content)

     

    and the languages synthaxe (do forget to reset your language in admin if you make a mistake because it's included in cache)

     

    On this example :

     

    For  he_header_google_translate.php

    <?php
    /**
     *
     *  @copyright 2008 - https://www.clicshopping.org
     *  @Brand : ClicShopping(Tm) at Inpi all right Reserved
     *  @Licence GPL 2 & MIT
     *  @licence MIT - Portion of osCommerce 2.4
     *  @Info : https://www.clicshopping.org/forum/trademark/
     *
     */
    
      use ClicShopping\OM\Registry;
      use ClicShopping\OM\CLICSHOPPING;
    
      class module_header_google_translate {
        public $code;
        public $group;
        public $title;
        public $description;
        public $sort_order;
        public $enabled = false;
        public $pages;
    
        public function __construct() {
    
          $this->code = get_class($this);
          $this->group = basename(__DIR__);
    
          $this->title = CLICSHOPPING::getDef('module_header_google_translate_title');
          $this->description = CLICSHOPPING::getDef('module_header_google_translate_description');
    
          if ( defined('MODULE_HEADER_GOOGLE_TRANSLATE_STATUS') ) {
            $this->sort_order = MODULE_HEADER_GOOGLE_TRANSLATE_SORT_ORDER;
            $this->enabled = (MODULE_HEADER_GOOGLE_TRANSLATE_STATUS == 'True');
            $this->pages = MODULE_BOXES_GOOGLE_TRANSLATE_DISPLAY_PAGES;
          }
        }
    
        public function execute() {
          $CLICSHOPPING_Template = Registry::get('Template');
    
          $content_width = (int)MODULE_HEADER_GOOGLE_TRANSLATE_CONTENT_WIDTH;
    
          $data = '<!-- header_google_translate  start -->' . "\n";
          $data .= '<script type="text/javascript">';
          $data .= 'function googleTranslateElementInit() {';
          $data .= 'new google.translate.TranslateElement({pageLanguage: \'en\'}, \'google_translate_element\');';
          $data .= '}';
          $data .= '</script>' . "\n";
    
          $data .='<script defer src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>' . "\n";
          
          ob_start();
          require_once($CLICSHOPPING_Template->getTemplateModules($this->group . '/content/header_google_translate'));
          $data .= ob_get_clean();
          $data .='<!-- header_google_translate end -->' . "\n";
    
          $CLICSHOPPING_Template->addBlock($data, $this->group);
        }
    
        public function isEnabled() {
          return $this->enabled;
        }
    
        public function check() {
          return defined('MODULE_HEADER_GOOGLE_TRANSLATE_STATUS');
        }
    
        public function install() {
          $CLICSHOPPING_Db = Registry::get('Db');
    
          $CLICSHOPPING_Db->save('configuration', [
              'configuration_title' => 'Do you want to enable this module ?',
              'configuration_key' => 'MODULE_HEADER_GOOGLE_TRANSLATE_STATUS',
              'configuration_value' => 'True',
              'configuration_description' => 'Do you want to enable this module in your shop ?',
              'configuration_group_id' => '6',
              'sort_order' => '1',
              'set_function' => 'clic_cfg_set_boolean_value(array(\'True\', \'False\'))',
              'date_added' => 'now()'
            ]
          );
    
          $CLICSHOPPING_Db->save('configuration', [
              'configuration_title' => 'Please indicate the width of the content',
              'configuration_key' => 'MODULE_HEADER_GOOGLE_TRANSLATE_CONTENT_WIDTH',
              'configuration_value' => '12',
              'configuration_description' => 'Please specify a display width',
              'configuration_group_id' => '6',
              'sort_order' => '2',
              'set_function' => 'clic_cfg_set_content_module_width_pull_down',
              'date_added' => 'now()'
            ]
          );
    
          $CLICSHOPPING_Db->save('configuration', [
              'configuration_title' => 'Sort order',
              'configuration_key' => 'MODULE_HEADER_GOOGLE_TRANSLATE_SORT_ORDER',
              'configuration_value' => '500',
              'configuration_description' => 'Sort order of display. Lowest is displayed first. The sort order must be different on every module',
              'configuration_group_id' => '6',
              'sort_order' => '3',
              'set_function' => '',
              'date_added' => 'now()'
            ]
          );
    
    
          $CLICSHOPPING_Db->save('configuration', [
              'configuration_title' => 'Please indicate where boxing should be displayed',
              'configuration_key' => 'MODULE_HEADER_GOOGLE_TRANSLATE_DISPLAY_PAGES',
              'configuration_value' => 'all',
              'configuration_description' => 'Sélectionnez les pages où la boxe doit être présente',
              'configuration_group_id' => '6',
              'sort_order' => '7',
              'set_function' => 'clic_cfg_set_select_pages_list',
              'date_added' => 'now()'
            ]
          );
        }
    
        public function remove() {
          return Registry::get('Db')->exec('delete from :table_configuration where configuration_key in ("' . implode('", "', $this->keys()) . '")');
        }
    
        public function keys() {
          return array('MODULE_HEADER_GOOGLE_TRANSLATE_STATUS',
                       'MODULE_HEADER_GOOGLE_TRANSLATE_CONTENT_WIDTH',
                       'MODULE_HEADER_GOOGLE_TRANSLATE_SORT_ORDER',
                       'MODULE_HEADER_GOOGLE_TRANSLATE_DISPLAY_PAGES'
                      );
        }
      } 

     

    Now the content : header_google_translate.php

     

    <div class="col-md-<?php echo $content_width; ?>">
      <div class="separator"></div>
      <div id="google_translate_element"></div>
    </div>  

     

    At the end the language : languages/english/modules/modules_header/he_header_google_translate.php

    module_header_google_translate_title = Do you want to enable google translate language module ?
    module_header_google_translate_description = Display google translate language

    Same for the french language.

     

    Now it's possible to improve the module and fix the script inside the footer by this code

     

    $footer_tag = '<script defer>';
    $footer_tag .= 'function googleTranslateElementInit() {';
    $footer_tag .= 'new google.translate.TranslateElement({pageLanguage: \'en\'}, \'google_translate_element\');';
    $footer_tag .= '}';
    $footer_tag .= '</script>' . "\n";
    $footer_tag .= '<script defer src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>';
    
    $CLICSHOPPING_Template->addBlock($footer_tag, 'footer_scripts');

    10 mn to do that.

     

     

     

     

    • Like 2
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use