function init($module, $params)
 {
     // getting module ID - automatically (from Joomla! database) or manually
     $this->module_id = $params->get('module_unique_id', '') == '' ? 'nsp-' . $module->id : $params->get('module_unique_id', '');
     $this->config = $params->toArray();
     $this->config['module_id'] = $this->module_id;
     $this->params = $params;
     // detect the data source
     $this->source = $this->config["source_name"];
     // if the user set engine mode to Mootools
     if ($this->config['engine_mode'] == 'mootools') {
         // load the MooTools framework to use with the module
         JHtml::_('behavior.framework', true);
     } else {
         if ($this->config['include_jquery'] == 1) {
             // if the user specify to include the jQuery framework - load newest jQuery 1.7.*
             $doc = JFactory::getDocument();
             // generate keys of script section
             $headData = $doc->getHeadData();
             $headData_keys = array_keys($headData["scripts"]);
             // set variable for false
             $engine_founded = false;
             // searching phrase mootools in scripts paths
             if (array_search('https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js', $headData_keys) > 0) {
                 $engine_founded = true;
             }
             //
             if (!$engine_founded) {
                 $doc->addScript('https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js');
             }
         }
     }
     // small validation
     if ($this->config['list_title_limit'] == 0 && $this->config['list_text_limit'] == 0) {
         $this->config['news_short_pages'] = 0;
     }
     if ($this->config['news_header_enabled'] == 0) {
         $this->config['news_content_header_pos'] = 'disabled';
     }
     if ($this->config['news_image_enabled'] == 0) {
         $this->config['news_content_image_pos'] = 'disabled';
     }
     if ($this->config['news_text_enabled'] == 0) {
         $this->config['news_content_text_pos'] = 'disabled';
     }
     if ($this->config['news_info_enabled'] == 0) {
         $this->config['news_content_info_pos'] = 'disabled';
     }
     if ($this->config['news_info2_enabled'] == 0) {
         $this->config['news_content_info2_pos'] = 'disabled';
     }
     if ($this->config['news_readmore_enabled'] == 0) {
         $this->config['news_content_readmore_pos'] = 'disabled';
     }
     // override old string-based rules with the more readable array structures
     $this->config['crop_rules'] = NSP_GK5_Utils::parseCropRules($this->config);
 }