Quantcast
Channel: IT-Solutions4You
Viewing all 94 articles
Browse latest View live

How to add custom or other field to Product popup?

$
0
0

Hi Guys,

Few days ago, we received mail from one of our customer.
He asked how to add custom field to Product popup.
I will show you it:

How to add field to Product popup


There is very easy solution.
Just open your database and find in vtiger_field table fieldname of your field (cf_XYZ).
Now run this sql command:

UPDATE `vtiger_field` SET `summaryfield` = '1' WHERE `tablename` = 'vtiger_productcf' AND `fieldname` = 'cf_XYZ';

It’s done!

How to add field to Product popup

How to add field to Product popup

Similarly, this solution works for other module’s selection popup windows  (e.g. Contact, Organization, …)

Hope, we help some of Us.

The post How to add custom or other field to Product popup? appeared first on IT-Solutions4You.


Export module using Module Management doesn’t work

$
0
0

In many cases when you want to export module using Module Management you get a corrupt zip file because of wrong file size calculation.


If you are using Vtiger 6.5.x, please roll back to vtiger 6.4 Zip library from : http://code.vtiger.com/vtiger/vtigercrm/raw/6.4.0/vtlib/thirdparty/dZip.inc.php

Then in /vtlib/Vtiger/Zip.php replace this:
$zipfilesize = $disk_file_size + ($disk_file_size % 1024);
With this:
$zipfilesize = $disk_file_size;

The post Export module using Module Management doesn’t work appeared first on IT-Solutions4You.

Invoke Custom Function from Workflow Task

$
0
0

This article will explain how to create a new custom function in workflow task. Follow steps below:

1. Prepare registration script (.php)

e.g.: vtiger_root/registerWFFunction.php

In order to register the function, this register file needs to be placed in your vtiger root directory, and then you manually need to call it from your browser: http://www.mydomain.com/vtiger/registerWFFunction.php

Warning! You have to call this register file once. Everytime you call this register file, it will add the function to the vtiger_workflowtasks_entitymethod table in the database, so if you call it more than once then it will get added to the database more than once.

In this example we register handleSetEstimatedDate() custom function defined in include/EstimatedDateHandler.php file for Invoice module.

<?php 
require_once("modules/com_vtiger_workflow/include.inc");
require_once("modules/com_vtiger_workflow/tasks/VTEntityMethodTask.inc");
require_once("modules/com_vtiger_workflow/VTEntityMethodManager.inc");
$adb = PearDatabase::getInstance();
$emm = new VTEntityMethodManager($adb);
    	$result = $adb->pquery("SELECT function_name FROM com_vtiger_workflowtasks_entitymethod WHERE module_name=? AND method_name=?", array('Invoice', 'SetEstimatedDate'));
    	if($adb->num_rows($result)==0){
$emm->addEntityMethod("Invoice","SetEstimatedDate","include/EstimatedDateHandler.php","handleSetEstimatedDate");
}

2. Create Handler file

In another file we need define custom function and write content of this function.
e.g.: include/EstimatedDateHandler.php

<?php
function handleSetEstimatedDate($entityData) {
  /* CONTENT OF CUSTOM FUNCTION ... */
}

3. Invoke Custom function with module

Last step is create and run via browser this file.
e.g.:vtiger_root/invokeCustomFunction.php

$adb = PearDatabase::getInstance();
       $forModule = 'Invoice';
       $summary = 'set Estimate Date '.$forModule;
       $result = $adb->pquery("SELECT workflow_id FROM com_vtiger_workflows WHERE summary=? AND module_name=?", array($summary, $forModule));
   	if($adb->num_rows($result)==0){
           echo 'Create Workflow for '.$forModule.'!<br />';
           
           $wm = new VTWorkflowManager($adb);
           $wf = Settings_Workflows_Record_Model::getCleanInstance($moduleName);
   		$wf->description = $summary;
   		$wf->test = Zend_Json::encode(array());
   		$wf->moduleName = $forModule;
   		$wf->executionCondition = 3;
   		$wf->filtersavedinnew = 6;
   		$wm->save($wf);
           $adb->pquery('UPDATE com_vtiger_workflows SET type=? WHERE workflow_id=?',array('basic',$wf->id));
           $wfId = $wf->id;
       } else {
           $wfId = $adb->query_result($result,0,'workflow_id');
       }
       $tResult = $adb->pquery("SELECT task_id FROM com_vtiger_workflowtasks WHERE workflow_id=?", array($wfId));
   	if($adb->num_rows($tResult)==0){
           $tm = new VTTaskManager($adb);
           echo 'Create Workflow Task for '.$forModule.'!<br />';
           $task = $tm->createTask('VTEntityMethodTask', $wfId);
           $task->active = true;
           $task->summary = "Estimated Date Handler";
           $task->methodName = "SetEstimatedDate";
           $tm->saveTask($task); 
       }

 

The post Invoke Custom Function from Workflow Task appeared first on IT-Solutions4You.

Can’t you see PDF Maker in menu after migration to vtiger 7?

$
0
0

In these days, lot of our customers migrate to vtiger 7. Then install PDF Maker for vtiger 7 but PDF Maker is missing in menu.

PDF Maker missing in vtiger 7 menu

PDF Maker missing in vtiger 7 menu

For some reasons installation does not write record into vtiger_app2tab table.

To show PDF Maker in your menu just provide few simple steps:

  • Open your database
    PDF Maker missing in vtiger 7 menu

    PDF Maker missing in vtiger 7 menu

  • Click on SQL
    PDF Maker missing in vtiger 7 menu

    PDF Maker missing in vtiger 7 menu

  • Copy following queries and execute these queries
    set @oId = (select tabid from vtiger_tab Where name = 'PDFMaker' limit 1);
    set @newSeq = (select max(sequence)+1 from vtiger_app2tab where appname = 'PROJECT' limit 1);
    insert into vtiger_app2tab (tabid, appname, sequence, visible) values (@oId, 'PROJECT', @newSeq, 1);
    select * from vtiger_app2tab where appname = 'PROJECT' and sequence = @newSeq;
    PDF Maker missing in vtiger 7 menu

    PDF Maker missing in vtiger 7 menu

  • Refresh your vtiger. And Voila! PDF Maker is still not here. But don’t worry.
    The final step is just re-install PDF Maker (How to install PDF Maker you can also find here: How to install PDF Maker
    • Go to Settings->CRM Settings->Module Management->Modules
    • Click on Import Module from Zip and Install PDF Maker.
      PDF Maker missing in vtiger 7 menu

      PDF Maker missing in vtiger 7 menu

  • Now, PDF Maker is no more missing in your Menu.
    PDF Maker in vtiger 7 menu

    PDF Maker in vtiger 7 menu

We apologize for the inconvenience and hope you enjoy our extension.

The post Can’t you see PDF Maker in menu after migration to vtiger 7? appeared first on IT-Solutions4You.

Do you want to start your vtiger cron more often instead of default 15 min?

$
0
0

Sometimes, you need to start your cron more often instead of each 15 min.
First at all, you need to allow executing of  workflow often.

How to allow vtiger workflow more often

How to allow vtiger workflow more often

To allows it please open your config.inc.php and insert there $MINIMUM_CRON_FREQUENCY = your time interval;

$MINIMUM_CRON_FREQUENCY = 1;

Now, it is possible to set workflow frequency more often.

How to allow vtiger workflow more often

How to allow vtiger workflow more often

You did it but workflow still not run more often.

How to allow vtiger workflow more often

How to allow vtiger workflow more often

Why?

It is because your cron is usually set to execute each 15 min or it was not configured yet.
You need to also edit your cron configuration.
What is cron?
Cron is standard vtiger funcionality. You can read more about cron and how to set cron more here: wiki.vtiger.com/index.php/Cron

To set cron every minute it should look similar like following line:

* * * * * path_to_sh /vtigerpath/cron/vtigercron.sh

How to allow vtiger workflow more often

The post Do you want to start your vtiger cron more often instead of default 15 min? appeared first on IT-Solutions4You.

How to create own Custom function for PDF Maker or EMAIL Maker?

$
0
0

Hello Guys,

lot of our customers ask me how to create custom function for PDF Maker or EMAIL Maker.
Even thought it is described in our manuals (you can read it here) of these extensions, I will show you it one more time with simple example.

First at all, you need to create own .php file because with update of PDF Maker or EMAIL Maker our standard files are re-written and you can lose your function.

  1. Please create your new file in: [vtigerROOT]/modules/PDFMaker(EMAILMaker)/resources/functions
    How to create own custom function

    How to create own custom function

  2. At least, your file have to contains
    <?php

    You can also copy these lines to your new file:

    if (!function_exists('nameofyourfunction')) {
    
        function nameofyourfunction( ) {
            
        }
    
    }

     

  3. Now, you can create your own custom function
    <?php
    
    if (!function_exists('sayHello')) {
    
        function sayHello($name) {
       
       
       return 'Hello '.$name. '! Now, you know how to add own custom function :)';
        }
    
    }
  4. Please, save your file
  5. Open PDF Maker Professional or EMAIL Maker Professional and in EditView of template please select Other information
  6. Now, You can see your new function in list of custom functions. You can add it into your template.
    How to create own custom function

    How to create own custom function

  7. That’s all.
    How to create own custom function

    How to create own custom function

    Hope, it was interesting for You.

The post How to create own Custom function for PDF Maker or EMAIL Maker? appeared first on IT-Solutions4You.

Do you want to change vtiger 7 Login Page?

$
0
0

How to change vtiger 7 Login Page?

Standard vs Custom vtiger 7 Login Page
↑ touch on photo and move by mouse to reveal ↑
vtiger 7 custom login screen

vtiger 7 custom login screen

Standard vs. Custom vtiger 7 Login Page

Are you bored by standard vtiger Login Screen?

Do you want to use your own logo instead of standard vtiger logo?

Use own favicon?

Remove advertisements or add instead adv different text?

How to change Company logo

The main change should be changing standard vtiger logo to your Company logo.
Before all changes we recommend to backup your file in case of emergency.

The file is located in your server in: [vTigerROOT]/layouts/v7/modules/Users/Login.tpl

Now, to change logo there are 2 options:

  1. upload your logo into vtiger files and change name of this image.
    • upload your image to [vTigerROOT]/layouts/v7/resources/Images/
    • delete previous logo vtiger.png
    • rename your new logo to vtiger.png
  2. upload your logo into vtiger files and change .tpl file
    • upload your image to [vTigerROOT]layouts/v7/resources/Images/
    • open [vTigerROOT]layouts/v7/modules/Users/Login.tpl
    • about line 211 change <img class=”img-responsive user-logo” src=”layouts/v7/resources/Images/vtiger.png“> to your company_logo_name.***
      <img class=”img-responsive user-logo” src=”layouts/v7/resources/Images/your_company_logo.png”>
How to change Company logo in vtiger 7 login page

How to change Company logo in vtiger 7 login page

How to change favicon and page title?

Next interesting customization should be change your site favicon and site title.

  1. To change favicon simple upload and replace [vtigerROOT]/layouts/v7/skins/images/favicon.ico with your favicon.ico (16px x 16px)
  2. if you change favicon it is also useful change title of your page.
    • please find [vtigerROOT]/layouts/v7/modules/Vtiger/Header.tpl
    • change line 13: <title>{vtranslate($PAGETITLE, $QUALIFIED_MODULE)}</title>
    • to what you want: <title>IT-Solutions4You {vtranslate($PAGETITLE, $QUALIFIED_MODULE)}</title>
How to change favicon and title in vtiger 7 login page

How to change favicon and title in vtiger 7 login page

How to change background of vtiger 7 Login Page?

After previous changes, change of background also makes your vtiger login page more attractive

Again please open file: [vTigerROOT]/layouts/v7/modules/Users/Login.tpl

Again, you have 2 options:

  1. upload your background image into vtiger files and change name of this image.
    • upload your background image to [vTigerROOT]/layouts/v7/resources/Images/
    • delete previous background image login-background.jpg
    • rename your background image to login-background.jpg
  2. upload your logo into vtiger files and change Login.tpl file
    • upload your image to [vTigerROOT]layouts/v7/resources/Images/
    • open [vTigerROOT]layouts/v7/modules/Users/Login.tpl
    • about line 14 change
      background: url(layouts/v7/resources/Images/login-background.jpg);
      to your newbackground.***
      background: url(layouts/v7/resources/Images/login-background_own.jpg);
How to change background in vtiger 7 login page

How to change background in vtiger 7 login page

How to remove or edit standard vtiger advertisements on vtiger 7 Login Page?

In new vtiger login page you can see What’s new and Latest News. It’s quite a boring.

Now you can remove it or add it text that you want.

Again you need to open: [vTigerROOT]/layouts/v7/modules/Users/Login.tpl

  1. To complete removal text div:
    • find about line 259 this code
      <div class="col-lg-1">
            <div class="separatorDiv"></div>
          </div>
      
          <div class="col-lg-5">
            <div class="marketingDiv widgetHeight">
              {if $JSON_DATA}
                {assign var=COUNTER value=0}
                {foreach key=BLOCK_NAME item=BLOCKS_DATA from=$JSON_DATA}
                  {if $BLOCKS_DATA}
                    <div>
                      {assign var=COUNTER value=$COUNTER+1}
                      <h4>{$BLOCKS_DATA[0].heading}</h4>
                      {foreach item=BLOCK_DATA from=$BLOCKS_DATA}
                        <div class="row">
                          {if $BLOCK_DATA.image}
                            <div class="col-lg-4" style="min-height: 100px;"><img src="{$BLOCK_DATA.image}" style="width: 100%;height: 100%;margin-top: 10px;"/></div>
                            <div class="col-lg-8">
                          {else}
                            <div class="col-lg-12">
                          {/if}
                            <div title="{$BLOCK_DATA.summary}">
                              <h3><b>{$BLOCK_DATA.displayTitle}</b></h3>
                              {$BLOCK_DATA.displaySummary}<br><br>
                            </div>
                            <a href="{$BLOCK_DATA.url}" target="_blank"><u>{$BLOCK_DATA.urlalt}</u></a>
                          {if $BLOCK_DATA.image}
                            </div>
                          {else}
                            </div>
                          {/if}
                        </div>
                      {/foreach}
                    </div>
                    {if $COUNTER neq $DATA_COUNT}
                      <hr>
                    {/if}
                  {/if}
                {/foreach}
              {else}
                <div class="inActiveImgDiv">
                  <div>
                    <h4>Get more out of Vtiger with extensions from</h4>
                    <h4>Vtiger Marketplace</h4>
                  </div>
                  <a href="https://marketplace.vtiger.com/app/listings" target="_blank" style="margin-right: 25px;"><img src="layouts/v7/resources/Images/extensionstore.png" style="width: 85%; height: 100%; margin-top: 25px;"/></a>
                </div>
              {/if}
              </div>
            </div>
          </div>
    • remove almost all lines. Keep only these 2 lines
      <div class="col-lg-1">
          </div>
    • also you can find line 209: <div class=”col-lg-5″> and change it to <div class=”col-lg-4 col-lg-offset-4″>How to remove vtiger advertisements from vtiger 7 login page
  2. You can also replace vtiger advertisements by your own texts
    • find about line 259 this code
      <div class="col-lg-1">
            <div class="separatorDiv"></div>
          </div>
      
          <div class="col-lg-5">
            <div class="marketingDiv widgetHeight">
              {if $JSON_DATA}
                {assign var=COUNTER value=0}
                {foreach key=BLOCK_NAME item=BLOCKS_DATA from=$JSON_DATA}
                  {if $BLOCKS_DATA}
                    <div>
                      {assign var=COUNTER value=$COUNTER+1}
                      <h4>{$BLOCKS_DATA[0].heading}</h4>
                      {foreach item=BLOCK_DATA from=$BLOCKS_DATA}
                        <div class="row">
                          {if $BLOCK_DATA.image}
                            <div class="col-lg-4" style="min-height: 100px;"><img src="{$BLOCK_DATA.image}" style="width: 100%;height: 100%;margin-top: 10px;"/></div>
                            <div class="col-lg-8">
                          {else}
                            <div class="col-lg-12">
                          {/if}
                            <div title="{$BLOCK_DATA.summary}">
                              <h3><b>{$BLOCK_DATA.displayTitle}</b></h3>
                              {$BLOCK_DATA.displaySummary}<br><br>
                            </div>
                            <a href="{$BLOCK_DATA.url}" target="_blank"><u>{$BLOCK_DATA.urlalt}</u></a>
                          {if $BLOCK_DATA.image}
                            </div>
                          {else}
                            </div>
                          {/if}
                        </div>
                      {/foreach}
                    </div>
                    {if $COUNTER neq $DATA_COUNT}
                      <hr>
                    {/if}
                  {/if}
                {/foreach}
              {else}
                <div class="inActiveImgDiv">
                  <div>
                    <h4>Get more out of Vtiger with extensions from</h4>
                    <h4>Vtiger Marketplace</h4>
                  </div>
                  <a href="https://marketplace.vtiger.com/app/listings" target="_blank" style="margin-right: 25px;"><img src="layouts/v7/resources/Images/extensionstore.png" style="width: 85%; height: 100%; margin-top: 25px;"/></a>
                </div>
              {/if}
              </div>
            </div>
          </div>
    • replace these lines with our example
      <div class="col-lg-1">
        </div>
      
        <div class="col-lg-5" style="background-color: rgba(255, 255, 255, 0.6);color:black;">
          <h1>Hello!!</h1>
         Insert here what you want!
        </div>
         </div>
How to remove vtiger advertisements from vtiger 7 login page

How to remove vtiger advertisements from vtiger 7 login page

The post Do you want to change vtiger 7 Login Page? appeared first on IT-Solutions4You.

How to change php variables for your vtiger CRM?

$
0
0

Sometimes you need to increase your php variables because you need it to properly working of vtiger (or other services) but How to do it?
You have 3 option how to change php variables.

  1. change php.ini
  2. .htaccess
  3. config.inc.php

First at all, it is good to know how to display current PHP variables and settings.
Please read our blog: How to display PHP configuration of your vtiger?

Change variables in php.ini

  1. Locate your php.ini. You can find it when you open info.php file
    How to find php.ini file

    How to find php.ini file

  2. Open your php.ini file
    nano /yourpathfrominfophp/php.ini
  3. Find please your variables that you want to change.
    post_max_size = 8M
    upload_max_filesize = 2M
  4. Change values
    post_max_size = 512M
    upload_max_filesize = 5M
  5. Save php.ini
  6. Restart server
    sudo service apache2 restart

How to edit .htaccess?

  1. Find .htaccess file
  2. Open this file
  3. Edit value or add new line
    php_value memory_limit 512M

This method will only work if PHP is running as an Apache module.

Change variables in config.inc.php

You can also change php variables in config file of vtiger.

  1. Open config.inc.php file in your vtiger installation
  2. Find php variables or add new lines
    ini_set('memory_limit', '512M');
  3. Save it

Your php variables have been changed. To verify if changing has effect on your vtiger, please open again info.php file and check changed values.

The post How to change php variables for your vtiger CRM? appeared first on IT-Solutions4You.


How to display PHP configuration of your vtiger?

$
0
0

Sometimes you need to check and increase your php variables but how to find currently php variables?

You can find the PHP configuration by placing a page with a phpinfo() function along with your website.

To create a phinfo site with this command, first change into the directory that contains your website files. For example, the default directory for webpage files for Apache on Ubuntu is /var/www/html/:

$cd /var/www/html

Then, create the info.php file:

$sudo nano info.php

Paste the following lines into this file and save it:

<!--?php phpinfo(); ?-->

Then, in your browser open: http://yoururl/info.php

phpinfo

phpinfo

The post How to display PHP configuration of your vtiger? appeared first on IT-Solutions4You.

How to remove standard vtiger “Send Email with PDF” and “Export to PDF” from More button?

$
0
0

Hello dear our customers.

Have you ever met with this situation?

You or your company bought PDF Maker, create beautiful PDF template.
Everything works like charm.

But  some of your employes say you that they still export standard vtiger template?

You know that they use standard vtiger Export to PDF from More button instead of PDF Maker export button. But how to hide this button and leave only PDF Maker button to export template that you want?

How to hide standard vtiger Export to PDF or Send Email with PDF

How to hide standard vtiger Export to PDF or Send Email with PDF

We must not change vtiger source code with our extensions but you, as customer, can change whatever you want.

To hide “Send Email with PDF” and “Export to PDF” you need to make small changes in source code of vtiger.

So please find file:

[yourvtiger]/modules/Inventory/models/DetailView.php

<?php
/*+***********************************************************************************
 * The contents of this file are subject to the vtiger CRM Public License Version 1.0
 * ("License"); You may not use this file except in compliance with the License
 * The Original Code is:  vtiger CRM Open Source
 * The Initial Developer of the Original Code is vtiger.
 * Portions created by vtiger are Copyright (C) vtiger.
 * All Rights Reserved.
 *************************************************************************************/

class Inventory_DetailView_Model extends Vtiger_DetailView_Model {

  /**
   * Function to get the detail view links (links and widgets)
   * @param <array> $linkParams - parameters which will be used to calicaulate the params
   * @return <array> - array of link models in the format as below
   *					 array('linktype'=>list of link models);
   */
  public function getDetailViewLinks($linkParams) {
    $linkModelList = parent::getDetailViewLinks($linkParams);
    $recordModel = $this->getRecord();
    $moduleName = $recordModel->getmoduleName();

    if(Users_Privileges_Model::isPermitted($moduleName, 'DetailView', $recordModel->getId())) {
      $detailViewLinks = array(
          'linklabel' => vtranslate('LBL_EXPORT_TO_PDF', $moduleName),
          'linkurl' => $recordModel->getExportPDFURL(),
          'linkicon' => ''
            );
      $linkModelList['DETAILVIEW'][] = Vtiger_Link_Model::getInstanceFromValues($detailViewLinks);

      $sendEmailLink = array(
                'linklabel' => vtranslate('LBL_SEND_MAIL_PDF', $moduleName),
                'linkurl' => 'javascript:Inventory_Detail_Js.sendEmailPDFClickHandler(\''.$recordModel->getSendEmailPDFUrl().'\')',
                'linkicon' => ''
            );

            $linkModelList['DETAILVIEW'][] = Vtiger_Link_Model::getInstanceFromValues($sendEmailLink);
    }     
               
    return $linkModelList; 
  }

}

Just comment please adding Send Email with PDF and Export to PDF and your problem is solved.

<?php
/*+***********************************************************************************
 * The contents of this file are subject to the vtiger CRM Public License Version 1.0
 * ("License"); You may not use this file except in compliance with the License
 * The Original Code is:  vtiger CRM Open Source
 * The Initial Developer of the Original Code is vtiger.
 * Portions created by vtiger are Copyright (C) vtiger.
 * All Rights Reserved.
 *************************************************************************************/

class Inventory_DetailView_Model extends Vtiger_DetailView_Model {

  /**
   * Function to get the detail view links (links and widgets)
   * @param <array> $linkParams - parameters which will be used to calicaulate the params
   * @return <array> - array of link models in the format as below
   *					 array('linktype'=>list of link models);
   */
  public function getDetailViewLinks($linkParams) {
    $linkModelList = parent::getDetailViewLinks($linkParams);
    $recordModel = $this->getRecord();
    $moduleName = $recordModel->getmoduleName();
    /* ITS4You - START: Disable standard vtiger PDF Export and Send Email with PDF 
    if(Users_Privileges_Model::isPermitted($moduleName, 'DetailView', $recordModel->getId())) {
      $detailViewLinks = array(
          'linklabel' => vtranslate('LBL_EXPORT_TO_PDF', $moduleName),
          'linkurl' => $recordModel->getExportPDFURL(),
          'linkicon' => ''
            );
      $linkModelList['DETAILVIEW'][] = Vtiger_Link_Model::getInstanceFromValues($detailViewLinks);

      $sendEmailLink = array(
                'linklabel' => vtranslate('LBL_SEND_MAIL_PDF', $moduleName),
                'linkurl' => 'javascript:Inventory_Detail_Js.sendEmailPDFClickHandler(\''.$recordModel->getSendEmailPDFUrl().'\')',
                'linkicon' => ''
            );

            $linkModelList['DETAILVIEW'][] = Vtiger_Link_Model::getInstanceFromValues($sendEmailLink);
    }     
      ITS4You - END*/
    return $linkModelList; 
  }

}

 

Standard vtiger Export to PDF or Send Email with PDF has been disabled

Standard vtiger Export to PDF or Send Email with PDF has been disabled

The post How to remove standard vtiger “Send Email with PDF” and “Export to PDF” from More button? appeared first on IT-Solutions4You.

Vtiger system requirements

$
0
0

Do you have problems with installation or correct behavior of Vtiger CRM? There is handy cheat sheet of vtiger system requirements.

  • Do you want to install Vtiger CRM first time but you do not know how to set your server correctly?
  • Do you have any issue with Vtiger?
  • Do you want to only check if your current configuration is correct?
  • Then read this article and we will show you what is good to set.

We have 13 Years Vtiger experience and we’d like to share our knowledge of Vtiger system requirements with You.

There are 4 basic areas to set.

  • database settings
  • files (privileges, owner) settings
  • php settings
  • Vtiger settings

Database settings

In Database settings is some recommend setting and also ONE setting that we strict DO NOT recommend to use.

So, first at all, we DO NOT recommend to have for SQL Mode set STRICT_TRANS_TABLE.
We recommend STRICT_TRANS_TABLE turned off. (How to set sql mode?)

So what should be inside SQL MODE?
Nothing or almost everything.

sql_mode = ”;
or
sql_mode = ‘NO_ENGINE_SUBSTITUTION’;

(You can read more about it in these articles: http://www.tocker.ca/2014/01/14/making-strict-sql_mode-the-default.html and also http://code.vtiger.com/vtiger/vtigercrm/issues/202 )

Now, what we recommend:

default-storage-engine = InnoDB
collation-server = utf8_general_ci
character-set-server = utf8

Settings of files

Settings of files contains of Owner setting and Permissions settings.

First at all we recommend change owner of your Vtiger folder to correct user (for example root:www-data)

chown -R root:www-data crm_dir

Now, protect Vtiger folders with following commands:

cd crm_dir
find -type d -exec chmod 755 {} \;

Also there are some folders and files that need specific permissions (some are different based on your Vtiger version).

Vtiger 5.x Vtiger 6.x Vtiger 7.x
chmod 775 backup/
chmod -R 775 cache/
chmod -R 775 cron/
chmod 775 install/
chmod -R 775 languages/
chmod -R 775 layouts/v7/modules/
chmod 775 logs/
chmod -R 775 modules/
chmod 775 storage/
chmod -R 775 test/
chmod -R 775 user_privileges/
chmod 775 backup/
chmod -R 775 cache/
chmod -R 775 cron/
chmod 775 install/
chmod -R 775 languages/
chmod -R 775 layouts/vlayout/modules/
chmod 775 logs/
chmod -R 775 modules/
chmod 775 storage/
chmod -R 775 test/
chmod -R 775 user_privileges/
chmod 775 backup/
chmod -R 775 cache/
chmod -R 775 cron/
chmod -R 775 languages/
chmod 775 logs/
chmod -R 775 modules/
chmod 775 storage/
chmod -R 775 test/
chmod -R 775 user_privileges/
chmod -R 775 Smarty/cache/
chmod -R 775 Smarty/templates_c/
chmod -R 775 Smarty/templates/modules


Now, protect your files with:

find -type f -exec chmod 644 {} \;


And set permission for these files:

chmod 664 config.inc.php
chmod 664 install.php
chmod 664 parent_tabdata.php
chmod 664 tabdata.php
chmod 664 user_privileges/audit_trail.php
chmod 664 user_privileges/default_module_view.php
chmod 664 user_privileges/enable_backup.php

PHP variable settings

There are also some php variables in php.ini that we recommend to check, set or increase to correct working of Vtiger.
First at all we recommend DO NOT use php7.x with Vtiger. It is still not fully compatible.

PHP up to 5.6
file_uploads = on
upload_max_filesize = 5M
display_errors = on
sql.safe_mode = off
max_input_vars = 10000
max_execution_time = 600
memory_limit = 512M
post_max_size = 128M
max_input_time = 120
upload_max_size = 5M
register_globals = Off
output_buffering= On
error_reporting = E_WARNING & ~E_NOTICE
allow_call_time_reference = On
log_errors = Off
short_open_tag= On
suhosin.simulation = on
extension=php_gd2.dll
extension=php_imap.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_mbstring.dll (important for PDF Maker)


How to find your php settings?
How to change your php settings?

Vtiger settings

Main Vtiger settings are included in config.inc.php and config.performance.php. These files are created automaticaly after installation but you can check and change it.

In config.inc.php you can find:

ini_set(‘memory_limit’,’512M’);    //same like memory_limit
$dbconfig[‘db_server’] = ‘localhost’;    //location of database
$dbconfig[‘db_port’] = ”;    //port to connect the database
$dbconfig[‘db_username’] =”;    //user name to access the database
$dbconfig[‘db_password’] = ”;    //password of user
$dbconfig[‘db_name’] = ”;    //name of your Vtiger database
$dbconfig[‘db_type’] = ‘mysqli’;    //database type
$site_URL = ‘url’;    //URL of Vtiger ( should end without / )
$root_directory = ‘path’;    //Absolute path to Vtiger installation ( should end with/ )
$upload_maxsize = 5000000;    //same as max_upload_filesize ( in bytes)
$default_timezone = ‘UTC’;    //default timezone of Vtiger
$list_max_entries_per_page = ’20’;    //number of records in ListView
$history_max_viewed = ‘5’;    //last visited tracked records
$default_module = ‘Home’;    //module open after login
$default_action = ‘index’;    //module action by default
$php_max_execution_time = 0;    //same as max_execution_time
$default_charset = ‘UTF-8’;    //charset for Database interaction and HTML output
$default_timezone = ‘UTC’;    //default timezone
$currency_name = ‘Euro’;    //main currency


In config.performance.php there are also some important settings:

Do you want to sort ListView but it is not working?
Read below:

if you have ‘LISTVIEW_DEFAULT_SORTING’ => false, change it to

‘LISTVIEW_DEFAULT_SORTING’ => true,


to apply your default sorting.
(You can read more: https://discussions.vtiger.com/index.php?p=/discussion/comment/1212060 )

If you use UTF-8 charset then we recommend check:

‘DB_DEFAULT_CHARSET_UTF8’ => true,


Do not have time for settings?

 Choose one of our hosting: http://www.it-solutions4you.com/services/vtiger-crm-hosting/

The post Vtiger system requirements appeared first on IT-Solutions4You.

Header/Footer templates for PDF Maker

$
0
0

Hello dear customers,

We received some requests how to save time with editing PDF template when little changes need to be made in Header or Footer.



Since PDF Maker 700.4.0 and 600.17.0 versions there is useful option to create Header/Footer templates and then use it for PDF template. This function should save your time when you need make changes in all Header or Footer of PDF template.

You can read how to use it in our manual: Template for Header/Footer

Header and Footer templates are used – PDF Maker Vtiger 7

Header and Footer templates are used

Hope, we improved PDF Maker to your satisfaction.

The post Header/Footer templates for PDF Maker appeared first on IT-Solutions4You.

Custom Key Metrics Block in Dashboard

$
0
0

This tool allows you to create unlimeted key metric blocks in CRM Dashboard for Vtiger 6.x and Vtiger 7.x. The content of key metrics is defined by your custom list views.
Key Metrics 4 You

Key Metrics 4 You Features

  • Unlimited widgets
  • Move rows inside block
  • Module Manager Compatible
  • Compatible with all standard and custom Modules
Supported Vtiger versions:
  • 6.x:
    • 6.1.0
    • 6.2.0
    • 6.3.0
    • 6.4.0
    • 6.5.0
  • 7.x:
    • 7.0.0
    • 7.0.1
    • 7.1.0

Buy Custom Key Metrics Block in Dashboard

The post Custom Key Metrics Block in Dashboard appeared first on IT-Solutions4You.

How can I debug my Vtiger?

$
0
0

Tracy library is a useful helper for everyday PHP programmers. It helps you to:

  • quickly detect and correct errors
  • log errors
  • dump variables
  • measure execution time and memory consumption

Implementation

  • Download Tracy latest version from https://github.com/nette/tracy/releases
  • Open .zip file and copy tracy to your FTP folder include
  • Edit file libraries/HTTP_Session/Session.php
  • Replace function: function start($name = ‘SessionID’, $id = null) from:
function start($name = 'SessionID', $id = null)
    {
        HTTP_Session::name($name);
        if ($id) {
            HTTP_Session::id($id);
        } elseif (is_null(HTTP_Session::detectID())) {
            HTTP_Session::id($id ? $id : uniqid(dechex(rand())));
        }
        session_start();
        if (!isset($_SESSION['__HTTP_Session_Info'])) {
            $_SESSION['__HTTP_Session_Info'] = HTTP_SESSION_STARTED;
        } else {
            $_SESSION['__HTTP_Session_Info'] = HTTP_SESSION_CONTINUED;
        }
    }

to:

function start($name = 'SessionID', $id = null)   
    {
        HTTP_Session::name($name);
        if ($id) {
            HTTP_Session::id($id);
        } elseif (is_null(HTTP_Session::detectID())) {
            HTTP_Session::id($id ? $id : uniqid(dechex(rand())));
        }
//----------- START ITS4YOU TRACY IMPLEMENTATION -----------
        $sessionid = session_id();
        if(empty($sessionid)) {
            session_start();
        }
//----------- END ITS4YOU TRACY IMPLEMENTATION -----------        
        if (!isset($_SESSION['__HTTP_Session_Info'])) {
            $_SESSION['__HTTP_Session_Info'] = HTTP_SESSION_STARTED;
        } else {
            $_SESSION['__HTTP_Session_Info'] = HTTP_SESSION_CONTINUED;
        }
    }
Session.php BEFORE
Session.php AFTER
  • Edit file index.php from:
//Overrides GetRelatedList : used to get related query
//TODO : Eliminate below hacking solution
include_once 'include/Webservices/Relation.php';
include_once 'vtlib/Vtiger/Module.php';
include_once 'includes/main/WebUI.php';

$webUI = new Vtiger_WebUI();
$webUI->process(new Vtiger_Request($_REQUEST, $_REQUEST));

to:

//Overrides GetRelatedList : used to get related query
//TODO : Eliminate below hacking solution
include_once 'config.php';
include_once 'include/Webservices/Relation.php';
include_once 'vtlib/Vtiger/Module.php';
include_once 'includes/main/WebUI.php';

//----------- START ITS4YOU TRACY IMPLEMENTATION -----------
session_start();
$session_tracy = false;
if(isset($_REQUEST['tracy'])){
    if($_REQUEST['tracy'] == 'start') {
        $_SESSION['its4you_tracy'] = true;
    } else {
        unset($_SESSION['its4you_tracy']);
    }
}
if(isset($_REQUEST['tracylog'])){
    if($_REQUEST['tracylog'] == 'start') {
        $_SESSION['its4you_tracylog'] = true;
    } else {
        unset($_SESSION['its4you_tracylog']);
    }
}
include_once 'include/tracy/src/tracy.php';
use Tracy\Debugger;
$tracy_mode = Debugger::PRODUCTION;
if(isset($_SESSION['its4you_tracy'])){
    $tracy_mode = Debugger::DEVELOPMENT;
}
$tracylog_dir = null;
if(isset($_SESSION['its4you_tracylog'])){
    $rootDirectory = vglobal('root_directory');
$tracylog_dir = $rootDirectory.'logs/';
}
Debugger::$logSeverity = E_NOTICE | E_WARNING;
Debugger::enable($tracy_mode,$tracylog_dir);
//----------- END ITS4YOU TRACY IMPLEMENTATION -----------
$webUI = new Vtiger_WebUI();
$webUI->process(new Vtiger_Request($_REQUEST, $_REQUEST));
index.php BEFORE
index.php AFTER
  • Create folder logs in root directory of Vtiger and set rights to write to this directory
  • There is a possibility that logs folder will be already there so make sure to set rights

Usage 

You can choose between Debugger error reporting or Error reporting to log directory

Debugger error reporting:

  • Enable: add to URL ?tracy=start
  • Disable: add to URL ?tracy=stop

Example: xxxxx/test/71new/index.php?tracy=start

If you successfully enabled Tracy, you should see Debugger bar like you see on the picture. Also you have option to move bar and place it where you need on your screen.

How looks Tracy in your Vtiger system

Debugger bar position

Error reporting to log directory

  • Enable: add to URL ?tracylog=start
  • Disable: add to URL ?tracylog=stop

If tracylog is enabled, all errors will be saved to error.log / exceptions.log file, which is located in logs directory.

NOTE: There can be enabled just one error reporting. Means you can’t have enabled Debugger reporting and in same time Reporting to log directory.

The post How can I debug my Vtiger? appeared first on IT-Solutions4You.

How to download our free extensions?

$
0
0

From time to time, we receive question how to download extension that we offer for free.

So please read following steps how to enjoy our extensions for Vtiger for FREE:

  1. First at all, you need to go into our eshop.

    Visit our eshop

     

    • If you have registration just simple login into our eshop

      Login into our eshop

       

    • If don’t please provide few steps to make registration:
      1. Click on Sign Up button

        Sign Up

         

      2. Fill required info and accept Terms and Conditions. We also recommend to subscribe to our newsletter to receive hot offers, discounts or info about updates and new extension.
        And click on button.

        Sign Up to our eshop

         

      3. After Sign Up you will be logged in automatically
  2. In our eshop you can see Free Downloads part

    Location of Free Downloads

     

  3. Choose your extension and click on it.

    Choose your extension

     

  4. Find your Vtiger version and click on button and save it.

    Find your Vtiger version and download

     

  5. Final step is to enjoy our extension

The post How to download our free extensions? appeared first on IT-Solutions4You.


How to hide/show line of table in PDF file in PDF Maker

$
0
0

Have you ever met with this situation?
You have a great template for Invoice but if for example discount = 0 you need to edit template and remove line because it does not looks so great.

If your answer is Yes then this article certainly helps you.

So how to edit your template to hide/show line based on field?

First at all, I have to say that this manual is only for PDF Maker Professional because you need to use Custom Function.

Let’s start:

  1. Find in your template line in table that you want to hide/show and click into this line
  2. Go to Other information tab
  3. And click on Custom functions
  1. Find its4you_if or its4you_isnull function and add into line you want to hide/shows (I recommend to use is4you_isnull)
  1. Now add your field (for example: $TOTALDISCOUNT$) into function:
    • its4you_if: [CUSTOMFUNCTION|its4you_if|$TOTALDISCOUNT$|=|0,00|whatToReturn1|whatToReturn2|CUSTOMFUNCTION]​
      or
    • its4you_isnull: [CUSTOMFUNCTION|its4you_isnull|$TOTALDISCOUNT$|whatToReturn1|whatToReturn2|CUSTOMFUNCTION]
  1. Replace whatToReturn1 with #HIDETR# and delete whatToReturn2
  1. Save your template and enjoy your PDF file

The post How to hide/show line of table in PDF file in PDF Maker appeared first on IT-Solutions4You.

Looking for the best Vtiger hosting? You are on right place.

$
0
0

Do you use great hosting but your Vtiger is still not working correctly?

What is the reason?

Simple reason is that hosting providers can’t optimize hosting for all platforms.
So if you want use Vtiger you need to have hosting optimized exactly for Vtiger requirements.

Because we work with Vtiger over 13 Years we have our own hosting.
We have been providing hosting for a long time but these days we start our new service called Cloud hosting.

In 3 minutes you can start working with Vtiger.

What about price?

You won’t belive, but you can use it also for FREE.
We offer 4 packets for cloud hositng.

  • FREE – 0 €
  • Starter – 4.08€/monthly
  • Business – 6.58€/monthly
  • Professional – 9.90€/monthly

What’s the catch?

Honestly, nothing.
We did it to grow Vtiger community. Because if community growing then Vtiger CRM is becoming better and better.
There is no user limitation. You can check only our recommendation for number of user but it is really up to you.

How can I get my own Vtiger hosting?

  1. Just click on following link:  www.it-solutions4you.com/services/vtiger-crm-hosting/
  2. Choose your packet
  3. Fill form
  4. Wait 3 minutes
  5. Enjoy your new CRM

The post Looking for the best Vtiger hosting? You are on right place. appeared first on IT-Solutions4You.

Font Awesome for PDF Maker? No problem!

$
0
0

Did you ever make the template and in the end it was looking “boring” just with text and logo? You know there was something missing to make it more special and livelier.

With our new feature Font Awesome for PDF Maker, you can use Icons and Social logos! It’s simple and fast, all you need is to do few clicks in your template!

Comparison: With Icons / Without Icons


To get a Font Awesome for PDF Maker, you need Basic or PRO version & PDF Maker version 700.7.0 or higher for Vtiger 7 and version 600.19.0 or higher for Vtiger 6.

Useful Links: 

The post Font Awesome for PDF Maker? No problem! appeared first on IT-Solutions4You.

Maximize CKEditor edit window with one click on small screens

$
0
0

Do you have a small CK Edtitor screen and you want to make it bigger with one click? Follow our tip how to add  Maximize button to your Editor.

Implementation

  • Go to folder: libraries/jquery/ckeditor and find file config.js
  • We need to edit file config.js by removing maximize from the config.removePlugins line and put it to config.plugins line
  • So change config.js from:
CKEDITOR.editorConfig = function( config ) {
  // Define changes to default configuration here. For example:
  // config.language = 'fr';
  // config.uiColor = '#AADC6E';
    //vtiger editor toolbar configuration 
 		    config.removePlugins = 'save,maximize,magicline'; 
      config.fullPage = true; 
 		    config.allowedContent = true; 
      config.disableNativeSpellChecker = false;
      config.enterMode = CKEDITOR.ENTER_BR;  
      config.shiftEnterMode = CKEDITOR.ENTER_P; 
      config.autoParagraph = false;
      config.fillEmptyBlocks = false;
      config.filebrowserBrowseUrl = 'kcfinder/browse.php?type=images'; 
      config.filebrowserUploadUrl = 'kcfinder/upload.php?type=images'; 
 	        config.plugins = 'dialogui,dialog,docprops,about,a11yhelp,dialogadvtab,basicstyles,bidi,blockquote,clipboard,button,panelbutton,panel,floatpanel,colorbutton,colordialog,menu,contextmenu,div,resize,toolbar,elementspath,enterkey,entities,popup,filebrowser,find,fakeobjects,floatingspace,listblock,richcombo,font,format,horizontalrule,htmlwriter,wysiwygarea,image,indent,indentblock,indentlist,justify,link,list,liststyle,magicline,pagebreak,preview,removeformat,selectall,showborders,sourcearea,specialchar,menubutton,stylescombo,tab,table,tabletools,undo,wsc'; 
 		    config.toolbarGroups = [ 
 		        { name: 'clipboard', groups: [ 'clipboard', 'undo' ] }, 
 		        { name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] }, 
        { name: 'insert' ,groups:['blocks']}, 
 		        { name: 'links' }, 
 		        { name: 'document', groups: [ 'mode', 'document', 'doctools' ] }, 
 	        '/', 
 		        { name: 'styles' }, 
 		        { name: 'colors' }, 
 		        { name: 'tools' }, 
 		        { name: 'others' }, 
 		        { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },{name: 'align'}, 
 	        { name: 'paragraph', groups: [ 'list', 'indent' ] }, 
            ];
      
      //Add new custom font names in below array
      var customFonts = ['FreeStyle Script','Brush Script STD','Bradley Hand ITC','Vladimir Script'];
      for(var i = 0; i < customFonts.length; i++){
          config.font_names = config.font_names+';'+customFonts[i];
      }
};

to:

CKEDITOR.editorConfig = function( config ) {
  // Define changes to default configuration here. For example:
  // config.language = 'fr';
  // config.uiColor = '#AADC6E';
    //vtiger editor toolbar configuration 
 		    config.removePlugins = 'save,magicline'; 
      config.fullPage = true; 
 		    config.allowedContent = true; 
      config.disableNativeSpellChecker = false;
      config.enterMode = CKEDITOR.ENTER_BR;  
      config.shiftEnterMode = CKEDITOR.ENTER_P; 
      config.autoParagraph = false;
      config.fillEmptyBlocks = false;
      config.filebrowserBrowseUrl = 'kcfinder/browse.php?type=images'; 
      config.filebrowserUploadUrl = 'kcfinder/upload.php?type=images'; 
 	        config.plugins = 'maximize,dialogui,dialog,docprops,about,a11yhelp,dialogadvtab,basicstyles,bidi,blockquote,clipboard,button,panelbutton,panel,floatpanel,colorbutton,colordialog,menu,contextmenu,div,resize,toolbar,elementspath,enterkey,entities,popup,filebrowser,find,fakeobjects,floatingspace,listblock,richcombo,font,format,horizontalrule,htmlwriter,wysiwygarea,image,indent,indentblock,indentlist,justify,link,list,liststyle,magicline,pagebreak,preview,removeformat,selectall,showborders,sourcearea,specialchar,menubutton,stylescombo,tab,table,tabletools,undo,wsc'; 
 		    config.toolbarGroups = [ 
 		        { name: 'clipboard', groups: [ 'clipboard', 'undo' ] }, 
 		        { name: 'editing', groups: [ 'find', 'selection', 'spellchecker' ] }, 
        { name: 'insert' ,groups:['blocks']}, 
 		        { name: 'links' }, 
 		        { name: 'document', groups: [ 'mode', 'document', 'doctools' ] }, 
 	        '/', 
 		        { name: 'styles' }, 
 		        { name: 'colors' }, 
 		        { name: 'tools' }, 
 		        { name: 'others' }, 
 		        { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },{name: 'align'}, 
 	        { name: 'paragraph', groups: [ 'list', 'indent' ] },        	        
            ];            
      
      //Add new custom font names in below array
      var customFonts = ['FreeStyle Script','Brush Script STD','Bradley Hand ITC','Vladimir Script'];
      for(var i = 0; i < customFonts.length; i++){
          config.font_names = config.font_names+';'+customFonts[i];
      }
};

Now your  Maximize button should appear and you can simply with one click Maximize your CK Editor screen!

The post Maximize CKEditor edit window with one click on small screens appeared first on IT-Solutions4You.

Free plugins for your Vtiger

$
0
0

We published 3 Free plugins for Vtiger 7. Download and enjoy.

Clear Campaigns

  • Do you need to remove all Contacts from your Campaign?
  • Do you need to remove all Leads from your Campaign?
  • Do you need to remove all Organizations from your Campaign?

Up to now you had 2 options:
Remove all contact/leads/organizations one by one.
Other option was delete your campaign and create new one.

Today you find better option.
Option to remove all records from your Contact List, Lead List or Organization List just in few simple steps.
You find Clear Campaigns4You

Reset Customer Portal Password

Forgot your customer password for customer portal?
Standard “Forgot Password?” in customer portal does not work correctly?
Reset and resend customer’s password immediately from your Vtiger CRM.

Picklist Import Values

Save your time with Picklist Import

  • Simply import Picklist Values
  • Option to import up to 500 values at the same time
  • Free to use
  • Module Manager Compatible
  • Compatible with all standard and custom Modules

Download plugins from our eshop for FREE

The post Free plugins for your Vtiger appeared first on IT-Solutions4You.

Viewing all 94 articles
Browse latest View live