Jump to content

Julie

Members
  • Posts

    204
  • Joined

  • Last visited

  • Days Won

    29

Posts posted by Julie

  1. @Victorious,

     

    I will help you, it's very simple to make a new file. You mus create 6 files

     

    modules_footer/fo_footer_my_template.php

    modules_footer/content/fo_footer_my_template.php

    language/english/modules/modules_footer/fo_footer_my_template.php

    language/french/modules/modules_footer/fo_footer_my_template.php

    css/english/modules/modules_footer/fo_footer_my_template.php

    css/french/modules/modules_footer/fo_footer_my_template.php (if it used)

     

    Below an example,  make that quickly, it can have litle error inside the files.

     

    The most important files (after you can make the other)

     

    modules_footer/fo_footer_my_template.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 fo_footer_my_template {
        public $code;
        public $group;
        public $title;
        public $description;
        public $sort_order;
        public $enabled = false;
        public $pages;
        protected $rewriteUrl;
    
        public function __construct() {
          $this->code = get_class($this);
          $this->group = basename(__DIR__);
          $this->title = CLICSHOPPING::getDef('module_footer_my_template_title');
          $this->description = CLICSHOPPING::getDef('module_footer_my_template_description');
          $this->rewriteUrl = Registry::get('RewriteUrl');
    
          if ( defined('MODULES_FOOTER_MY_TEMPLATE_STATUS') ) {
            $this->sort_order = MODULES_FOOTER_MY_TEMPLATE_SORT_ORDER;
            $this->enabled = (MODULES_FOOTER_MY_TEMPLATE_STATUS == 'True');
            $this->pages = MODULE_FOOTER_MY_TEMPLATE_DISPLAY_PAGES;
          }
        }
    
        public function execute() {
          $CLICSHOPPING_Template = Registry::get('Template');
          $CLICSHOPPING_Customer = Registry::get('Customer');
          $CLICSHOPPING_PageManagerShop = Registry::get('PageManagerShop');
          $CLICSHOPPING_Db = Registry::get('Db');
    
          if  ( MODE_VENTE_PRIVEE == 'false' || (MODE_VENTE_PRIVEE == 'true' && $CLICSHOPPING_Customer->isLoggedOn() )) {
    
    // change pages_id = 55 by your id
            $Qpages = $CLICSHOPPING_Db->prepare('select pd.pages_title,
                                                        p.links_target
                                                from :table_pages_manager p,
                                                     :table_pages_manager_description pd
                                                where p.status = 1
                                                and ( p.customers_group_id = :customers_group_id or  p.customers_group_id = 99)
                                                and p.pages_id = pd.pages_id
                                                and  p.pages_id = 55 
                                               ');
            $Qpages->bindInt(':customers_group_id', (int)$CLICSHOPPING_Customer->getCustomersGroupID() );
    
            $Qpages->execute();
      
            $content = HTML::link($this->rewriteUrl->getPageManagerContentUrl($Qpages->valueInt('pages_id')), $Qpages->value('pages_title'), 'target="' . $Qpages->value('links_target') . '"')
    
            $content_width = (int)MODULE_FOOTER_MY_TEMPLATE_CONTENT_WIDTH;
    
            $my_template_footer = '<!-- footer page manager start -->' . "\n";
    
            ob_start();
    
            require($CLICSHOPPING_Template->getTemplateModules($this->group . '/content/footer_my_template'));
    
            $my_template_footer .= ob_get_clean();
    
            $my_template_footer .='<!-- footer page manager end -->' . "\n";
    
            $CLICSHOPPING_Template->addBlock($my_template_footer, $this->group);
          }
        }
    
        public function isEnabled() {
          return $this->enabled;
        }
    
        public function check() {
          return defined('MODULES_FOOTER_MY_TEMPLATE_STATUS');
        }
    
        public function install() {
          $CLICSHOPPING_Db = Registry::get('Db');
    
          $CLICSHOPPING_Db->save('configuration', [
              'configuration_title' => 'Do you want activate this module ?',
              'configuration_key' => 'MODULES_FOOTER_MY_TEMPLATE_STATUS',
              'configuration_value' => 'True',
              'configuration_description' => 'Do you want activate 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 select the width of the module',
              'configuration_key' => 'MODULE_FOOTER_MY_TEMPLATE_CONTENT_WIDTH',
              'configuration_value' => '12',
              'configuration_description' => 'Select a number between 1 and 12',
              'configuration_group_id' => '6',
              'sort_order' => '1',
              'set_function' => 'clic_cfg_set_content_module_width_pull_down',
              'date_added' => 'now()'
            ]
          );
    
          $CLICSHOPPING_Db->save('configuration', [
              'configuration_title' => 'Sort order',
              'configuration_key' => 'MODULES_FOOTER_MY_TEMPLATE_SORT_ORDER',
              'configuration_value' => '10',
              'configuration_description' => 'Sort order of display. Lowest is displayed first',
              'configuration_group_id' => '6',
              'sort_order' => '4',
              'set_function' => '',
              'date_added' => 'now()'
            ]
          );
    
          $CLICSHOPPING_Db->save('configuration', [
              'configuration_title' => 'Indicate the page where the module is displayed',
              'configuration_key' => 'MODULE_FOOTER_MY_TEMPLATE_DISPLAY_PAGES',
              'configuration_value' => 'all',
              'configuration_description' => 'Select the page where the module is displayed.',
              'configuration_group_id' => '6',
              'sort_order' => '5',
              '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 ['MODULES_FOOTER_MY_TEMPLATE_STATUS',
                  'MODULE_FOOTER_MY_TEMPLATE_CONTENT_WIDTH',
                  'MODULES_FOOTER_MY_TEMPLATE_SORT_ORDER',
                  'MODULE_FOOTER_MY_TEMPLATE_DISPLAY_PAGES'
                ];
        }
      } 

    modules_footer/content/footer_my_template.php

     

    <div class="col-md-<?php echo $content_width; ?> moduleFooterMyTemplater">
      <span class="moduleFooterMyTemplate">
        <span class="footerMyTemplate"><?php echo $content; ?></span>
      </span>
    </div>

     

     

     

     

     

     

     

     

     

    • Thanks 5
  2. @Grimoire,

     

    It's could be better if you can include a code to create automatically the new field inside the database.

    you can include this in your code (in AccountGdprSms)

     

        private static function installNewField() {
          $CLICSHOPPING_Db = Registry::get('Db');
    
          $Qcheck = $CLICSHOPPING_Db->query("show columns from :table_account_grpd 'no_sms'");
          $check = $Qcheck->fetch();
    
          if ($check === false) {
            $sql = <<<EOD
    ALTER TABLE :table_account_grpd ADD no_sms tynint(1) NULL AFTER no_ip_address;
    EOD;
    
            $CLICSHOPPING_Db->exec($sql);
           }
         }          
    

    and write inside display() function  this code

    static::installNewField()

    It must work.

     

    • Thanks 3
  3. It seems to be becarefull of that. I recommend you to make a GRDP hooks to ask the permission at your customer to use their data for sms.

    With that, you have a protecttion and the customers can remove this option when they want.

    • Thanks 3
  4. @David

    To change the logo, it's easy, go to the Marketing / Banner and you can update your logo

    About the address, it's inside the Configuration Menu / my store

    About a todo list after install, no I don't see anything, but It can be usefull for the newbiz.

     

    All the configuration is made inside Configuration menu,
    General,
    law

    Stock,

    Invoice 

    Shipping

    SEO

     

    Locations and taxes
    Other / email

     

    I think with that, your website will be confgured

    Let me know if you have others questions

     

×
×
  • Create New...

Important Information

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