Friday, February 22, 2019

Add customer portal to vtiger 7.1.0

Here's what I did to get the Customer Portal to work on an instance of 7.1.0
This was pretty much step by step after an install.  SOME sections might not apply to you. 

ASSUMPTIONS
This is tested on CENTOS 7.0 (based on the install detailed in this blog site)

You might need to change it a little if using another form of OS to suit that OS.
the server ip we are using is 10.1.105.50, so you'll need to change that to your own needs
Also our installation directory for vtiger is "vtigercrm" which might differ from yours.

So, here's what the screen will pretty much look like when you click on the "Customer Portal" for the first time.


In 7.1.0 there's a problem.  The URL is formatted wrong and has an extra " / " in the title that will fail everything right away.

http://ip/vtigercrm//customerportal
That is fixed by editing the file 
/var/www/html/vtigercrm/config.inc.php
 and in the section "$PORTAL_URL" you'll see this " /customerportal

Remove the "/" in front of customer portal.  Should look like this:

$PORTAL_URL = $site_URL.'customerportal';

Save those changes

Now you need to download the customer portal code which is usually separate from Vtiger install.
This threw me for a loop why this code isnt' included with the install.  So you can grab it from source forge.

from cli type this:
cd /tmp
wget https://sourceforge.net/projects/vtigercrm/files/vtiger%20CRM%207.1.0/Add-ons/vtigercrm-customerportal-7.1.0.zip
Now you need to unzip it.
unzip vtigercrm-customerportal-7.1.0.zip
(if you are on centos and need to install unzip type in   " yum -y install unzip " and it will download and install the app)
mv vtigercrm-customerportal-7.1.0 customerportal
mv customerportal/ /var/www/html/scansourcecrm/
chown -R apache:apache /var/www/html/vtigercrm/customerportal
cd /var/www/html/vtigercrm/customerportal
cp config.sample.php config.php
edit the file config.php

You'll see this section in the file


//CRM URL without trialing/
//Example: http://yourdomain.com/crm
'crm.url' => '',
//Portal URL without trialing/
//Example: http://yourdomain.com/portal
'portal.url' => '',




//CRM URL without trialing/
//Example: http://yourdomain.com/crm
'crm.url' => 'http://10.1.105.50/vtigercrm',

//Portal URL without trialing/
//Example: http://yourdomain.com/portal
'portal.url' => 'http://10.1.105.50/vtigercrm/customerportal',


Save those changes

Now, log OUT of Vtiger and log back in

Go to CRM SETTINGS - CONFIGURATION - CUSTOMER PORTAL

Now you should have a logon screen!


If you get an error in this window with something like:

Warning: strftime(): It is not safe to rely on the system's timezone settings.
You are *required* to use the date.timezone setting or the date_default_timezone_set() function.

then you need to edit the /etc/php.ini file

Under [DATE}, make sure you have a valid date.timezone setting in there.  If not add it in (like in bold) and save your changes.  Here is a link of valid time zone syntax


[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone =
date.timezone = America/Denver

Save your changes enter in

service httpd restart

Should be all fixed

2 comments:

  1. Hello, how are you?

    This entire process has been carried out successfully and the login page is displayed. However, when logging in with the contact details he is unable to authenticate. "Could not authenticate." Contact already has "Portal User" enabled.
    Thanks.

    ReplyDelete
  2. Hi I have problem with vtiger customerportal
    the buttons on the screen do nothing:New Ticket for example

    Can you help me please

    Regards

    ReplyDelete

Feel free to leave a comment! If you have any information that you think should be included, please do so here and I'll get it added in.