vtiger CRM 5.0 Beta 2 release is ready for end-user community testing. The intent of this release is to showcase to the vtiger community, the significant changes made after v5 Beta release i.e., changes since May, 06'. The noteworthy features in v5 Beta 2 are New user interface for Settings module, Audit Trails as part of the security management, complete Web mail integration (including Outgoing and Incoming mail capability), edit custom fields, enhanced user interface for Calendar, optimized the database queries further for List Views function in all the modules, and others.
+
IMPORTANT NOTES:
+
+
We strongly recommend CRM community NOT to USE vtiger CRM 5 Beta 2 for any real-time deployments. In case you are looking for an immediate CRM solution for your business, please consider using the vtiger CRM 4.2.3 (latest stable version), which can be downloaded from vtiger.com.
+
vtiger CRM user interface can be best viewed in Mozilla/Firefox. We have some page loading page formatting issues in Internet Explorer, which will be fixed very soon.
+
JpGraph used for generating dashboards has been replaced by ImageGraph, a third party charting software.
+
Database migration script is provided for migrating data from v4.2.3 to v5 Beta 2 only for testing purpose. Hence users are strongly recommended to take a backup of the the v4.2.3 data before testing the migration script.
+
Database migration script is not provided for migrating data from v 5 Beta to v5 Beta 2. Hence users are strongly recommended to take a backup of the the v 5 Beta data before testing the migration script.
+
+
Appeal to Developers, Testers, Analysts, Writers, and real end users!
+
Jump-start to the vtiger Public Discussions and post your valuable suggestions & comments to help us deliver a world class open source CRM for you in another few weeks time. It is very simple to start working with vtiger CRM 5 Beta 2,
Proxy Server configuration for accessing RSS feeds and information based on Ticker Symbol
+
+
+
2
+
Vertical bar chart in Home page
+
+
+
3
+
Security Management support for Emails module
+
+
+
4
+
Database table prefix support for a deploying vtiger CRM in other working databases
+
+
+
5
+
Audit Trial support for tracking all users system access details
+
+
+
6
+
Last 5 records visited
+
+
+
7
+
New User interface for Settings module
+
+
+
8
+
Print Report function
+
+
+
9
+
Email Detail View from Related List
+
+
+
10
+
Attach multiple documents to email message
+
+
+
11
+
Delete option for Tag cloud
+
+
+
12
+
AJAX based edit option for User details
+
+
+
+
+
+
+
+
Note:
+
Configuring Web services to update Publicly traded company profiles (With Ticker symbol in Accounts) In Account module, if ticker symbol is specified, company profile will be displayed on top of Edit view page. For this specify the server name, port number, user name and password has in class_http/class_http.php under <vtiger CRM Home> directory.
+
Line: 166
+
Assign values to the given variables: $server,$port,$user,$pwd
+
+
+
+
Bug Fixes
+
We have fixed about 1000 issues after v5 Beta release. For more details, kindly refer to the vtiger CRM Bug Tracker:
vtiger CRM 5.0 Beta release is ready for end-user community testing. The intent of this release is to showcase to the vtiger community, the significant changes made after v5 Alpha 5 release i.e., changes since Apr , 06' . The noteworthy features in v5 Beta are complete Web mail integration (including Outgoing and Incoming mail capability), Office Plugin, Outlook Plugin, Customer Portal, Web-Forms, Firefox Toolbar,
@@ -48,7 +183,6 @@
From vtigercrm-commits at vtiger.fosslabs.com Wed Jul 5 22:22:09 2006
From: vtigercrm-commits at vtiger.fosslabs.com (vtigercrm-commits@vtiger.fosslabs.com)
Date: Thu, 06 Jul 2006 05:22:09 -0000
Subject: [Vtigercrm-commits] [vtiger-commits] r7875 -
/branches/VTIGERCRM-5.0.2-MMBRICH/
Message-ID: <20060706052209.E0E717F23B6@vtiger.fosslabs.com>
Author: mmbrich
Date: Wed Jul 5 23:22:08 2006
New Revision: 7875
Log:
New branch for mmbrich feature devel.
Added:
branches/VTIGERCRM-5.0.2-MMBRICH/
- copied from r7874, vtigercrm/trunk/
From vtiger-tickets at vtiger.fosslabs.com Thu Jul 6 08:20:22 2006
From: vtiger-tickets at vtiger.fosslabs.com (vtiger development)
Date: Thu, 06 Jul 2006 15:20:22 -0000
Subject: [Vtigercrm-commits] =?utf-8?q?=5Bvtiger_development=5D_=231459=3A?=
=?utf-8?q?_revert_adodb_instrumentation/modifications_prior_to_release?=
Message-ID: <076.3653d0a305d5e2e7043325f0f9bebfc3@vtiger.fosslabs.com>
#1459: revert adodb instrumentation/modifications prior to release
------------------------------------+---------------------------------------
Reporter: jeffk | Owner: developer
Type: defect | Status: new
Priority: blocker | Milestone: 5.0.0
Component: vtigercrm | Version: 5.0.0
Keywords: adodb database package |
------------------------------------+---------------------------------------
There's no mention of why these modifications are necessary, but
instrumenting the snapshotted adodb library for debugging purposes is
something that should only be present in beta status.
I'm filing this as a ticket so we don't forget to revert these changes
before anyone proposes moving to rc status.
I still think it is better to let the library trigger the inconvenient but
valid exception, and handle the code in your catch block.
It would be much better to add a few lines of code duplicating adodb
functionality in a catch block than to modify the external library source.
The first way is robust documentation of an error condition, the second
way is 'technical debt', which must be balanced with additional deferred
effort.
If there's something that inavoidably must be changed in an external
library (such as a bug fix), lobby the library maintainers to incorporate
the change upstream. It is in that case not uncommon to snapshot a library
based on a prerelease version, which can be removed once the library has a
new release incorporating the change.
Changesets releated so far: r7685, r7755, r7814
--
Ticket URL:
vtiger development
vtigerCRM
From vtigercrm-commits at vtiger.fosslabs.com Thu Jul 6 08:23:11 2006
From: vtigercrm-commits at vtiger.fosslabs.com (vtigercrm-commits@vtiger.fosslabs.com)
Date: Thu, 06 Jul 2006 15:23:11 -0000
Subject: [Vtigercrm-commits] [vtiger-commits] r7876 -
/vtigercrm/trunk/DEPENDENCIES.txt
Message-ID: <20060706152311.A970683FF76@vtiger.fosslabs.com>
Author: jeffk
Date: Thu Jul 6 09:23:09 2006
New Revision: 7876
Log:
refs #1459. adodb has been modified/instrumented in r7685, r7755, r7814. mark as a modified library until changes reverted
Modified:
vtigercrm/trunk/DEPENDENCIES.txt
Modified: vtigercrm/trunk/DEPENDENCIES.txt
==============================================================================
--- vtigercrm/trunk/DEPENDENCIES.txt (original)
+++ vtigercrm/trunk/DEPENDENCIES.txt Thu Jul 6 09:23:09 2006
@@ -1,5 +1,5 @@
#pkgvers relpath modified unmodifiedok extdepok dowloadurl
-adodb-4.90 adodb false true unknown http://prdownloads.sf.net/adodb/adodb490.tgz
+adodb-4.90 adodb true false unknown http://prdownloads.sf.net/adodb/adodb490.tgz
FCKeditor-2.2 include/fckeditor true unknown unknown http://prdownloads.sf.net/fckeditor/FCKeditor-2.2.gz.tar
fpdf-1.53 include/fpdf true unknown unknown http://www.fpdf.org/en/dl.php?v=153&f=tgz
Image_Canvas-0.3.0 include/Image true unknown unknown http://pear.php.net/get/Image_Canvas-0.3.0.tgz
From vtiger-tickets at vtiger.fosslabs.com Thu Jul 6 08:23:11 2006
From: vtiger-tickets at vtiger.fosslabs.com (vtiger development)
Date: Thu, 06 Jul 2006 15:23:11 -0000
Subject: [Vtigercrm-commits]
=?utf-8?q?=5Bvtiger_development=5D_=231459=3A?=
=?utf-8?q?_revert_adodb_instrumentation/modifications_prior_to_release?=
In-Reply-To: <076.3653d0a305d5e2e7043325f0f9bebfc3@vtiger.fosslabs.com>
References: <076.3653d0a305d5e2e7043325f0f9bebfc3@vtiger.fosslabs.com>
Message-ID: <085.1855365abdefbc50a0873e459f79ca2d@vtiger.fosslabs.com>
#1459: revert adodb instrumentation/modifications prior to release
------------------------+---------------------------------------------------
Reporter: jeffk | Owner: developer
Type: defect | Status: new
Priority: blocker | Milestone: 5.0.0
Component: vtigercrm | Version: 5.0.0
Resolution: | Keywords: adodb database package
------------------------+---------------------------------------------------
Comment (by jeffk):
(In [7876]) refs #1459. adodb has been modified/instrumented in r7685,
r7755, r7814. mark as a modified library until changes reverted
--
Ticket URL:
vtiger development
vtigerCRM
From vtigercrm-commits at vtiger.fosslabs.com Thu Jul 6 10:21:08 2006
From: vtigercrm-commits at vtiger.fosslabs.com (vtigercrm-commits@vtiger.fosslabs.com)
Date: Thu, 06 Jul 2006 17:21:08 -0000
Subject: [Vtigercrm-commits] [vtiger-commits] r7877 - in
/branches/VTIGERCRM-5.0.2-MMBRICH: include/pclzip.lib.php
modules/Accounts/Merge.php modules/Contacts/Merge.php
Message-ID: <20060706172108.845B083FFC4@vtiger.fosslabs.com>
Author: mmbrich
Date: Thu Jul 6 11:21:07 2006
New Revision: 7877
Log:
ODT merge capabilites, thanks to Nico (nango) for this contribution
Added:
branches/VTIGERCRM-5.0.2-MMBRICH/include/pclzip.lib.php
Modified:
branches/VTIGERCRM-5.0.2-MMBRICH/modules/Accounts/Merge.php
branches/VTIGERCRM-5.0.2-MMBRICH/modules/Contacts/Merge.php
Modified: branches/VTIGERCRM-5.0.2-MMBRICH/modules/Accounts/Merge.php
==============================================================================
--- branches/VTIGERCRM-5.0.2-MMBRICH/modules/Accounts/Merge.php (original)
+++ branches/VTIGERCRM-5.0.2-MMBRICH/modules/Accounts/Merge.php Thu Jul 6 11:21:07 2006
@@ -5,31 +5,19 @@
* 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.
+ * Portions created by prudento are Copyright (C) prudento.
* All Rights Reserved.
*
********************************************************************************/
+
?>
-
-
+
+ if (document.layers)
+ {
+ document.write(\"This feature requires IE 5.5 or higher for Windows on Microsoft Windows 2000, Windows NT4 SP6, Windows XP.\");
+ document.write(\"
Click here to return to the previous page\");
+ }
+ else if (document.layers || (!document.all && document.getElementById))
+ {
+ document.write(\"This feature requires IE 5.5 or higher for Windows on Microsoft Windows 2000, Windows NT4 SP6, Windows XP.\");
+ document.write(\"
Click here to return to the previous page\");
+ }
+ else if(document.all)
+ {
+ document.write(\"\");
+ }
+ ";
+}
+$sql = "select filename,data,filesize from wordtemplates where templateid=".$templateid;
$result = $adb->query($sql);
$temparray = $adb->fetch_array($result);
-$fileContent = $temparray['data'];
+$filecontent = $temparray['data'];
$filename=$temparray['filename'];
$filesize=$temparray['filesize'];
-$wordtemplatedownloadpath =$root_directory ."/test/wordtemplatedownload/";
-
-
-$handle = fopen($wordtemplatedownloadpath.$temparray['filename'],"wb");
-fwrite($handle,base64_decode($fileContent),$filesize);
-fclose($handle);
-
-//<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>
+$wordtemplatedownloadpath ='test/wordtemplatedownload/';
+//$wordtemplatedownloadpath =$root_directory .'test/wordtemplatedownload/';
+
+//<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>
$mass_merge = $_REQUEST['idlist'];
$single_record = $_REQUEST['record'];
@@ -73,10 +75,8 @@
die("Record Id is not found, cannot merge the document");
}
-//echo $mass_merge;
-//die;
-//for setting vtiger_accountid=0 for the contacts which are deleted
-$ct_query = "select crmid from vtiger_crmentity where setype='Contacts' and deleted=1";
+//for setting accountid=0 for the contacts which are deleted
+$ct_query = "select crmid from crmentity where setype='Contacts' and deleted=1";
$result = $adb->query($ct_query);
while($row = $adb->fetch_array($result))
@@ -87,45 +87,44 @@
if(count($deleted_id) > 0)
{
$deleted_id = implode(",",$deleted_id);
- $update_query = "update vtiger_contactdetails set accountid = 0 where contactid in (".$deleted_id.")";
+ $update_query = "update contactdetails set accountid = 0 where contactid in (".$deleted_id.")";
$result = $adb->query($update_query);
}
-//End setting vtiger_accountid=0 for the contacts which are deleted
+//End setting accountid=0 for the contacts which are deleted
//<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>
-$query1="select vtiger_tab.name,vtiger_field.tablename,vtiger_field.columnname,vtiger_field.fieldlabel from vtiger_field inner join vtiger_tab on vtiger_tab.tabid = vtiger_field.tabid where vtiger_field.tabid in (4,6) and vtiger_field.block <> 6 and vtiger_field.block <> 75 order by vtiger_field.tablename";
-
-$result = $adb->query($query1);
+$sql="select tab.name,field.tablename,field.columnname,field.fieldlabel from field inner join tab on tab.tabid = field.tabid where field.tabid in (4,6) order by field.tablename";
+
+$result = $adb->query($sql);
$y=$adb->num_rows($result);
-
for ($x=0; $x<$y; $x++)
{
- $tablename = $adb->query_result($result,$x,"tablename");
- $columnname = $adb->query_result($result,$x,"columnname");
- $modulename = $adb->query_result($result,$x,"name");
-
- if($tablename == "crmentity")
- {
- if($modulename == "Contacts")
+ $tablename = $adb->query_result($result,$x,"tablename");
+ $columnname = $adb->query_result($result,$x,"columnname");
+ $modulename = $adb->query_result($result,$x,"name");
+
+ if($tablename == "crmentity")
{
- $tablename = "crmentityContacts";
+ if($modulename == "Accounts")
+ {
+ $tablename = "crmentityAccounts";
+ }
}
- }
- $querycolumns[$x] = $tablename.".".$columnname;
- if($columnname == "smownerid")
- {
- if($modulename == "Accounts")
- {
- $querycolumns[$x] = "concat(vtiger_users.last_name,' ',vtiger_users.first_name) as userjoinname,vtiger_users.first_name,vtiger_users.last_name,vtiger_users.user_name,vtiger_users.yahoo_id,vtiger_users.title,vtiger_users.phone_work,vtiger_users.department,vtiger_users.phone_mobile,vtiger_users.phone_other,vtiger_users.phone_fax,vtiger_users.email1,vtiger_users.phone_home,vtiger_users.email2,vtiger_users.address_street,vtiger_users.address_city,vtiger_users.address_state,vtiger_users.address_postalcode,vtiger_users.address_country";
- }
- if($modulename == "Contacts")
- {
- $querycolumns[$x] = "concat(usersContacts.last_name,' ',usersContacts.first_name) as userjoincname";
- }
- }
+ $querycolumns[$x] = $tablename.".".$columnname;
+ if($columnname == "smownerid")
+ {
+ if($modulename == "Accounts")
+ {
+ $querycolumns[$x]="concat(usersAccounts.last_name,' ',usersAccounts.first_name) as username";
+ }
+ if($modulename == "Contacts")
+ {
+ $querycolumns[$x]="concat(users.last_name,' ',users.first_name) as usercname,users.first_name,users.last_name,users.user_name,users.yahoo_id,users.title,users.phone_work,users.department,users.phone_mobile,users.phone_other,users.phone_fax,users.email1,users.phone_home,users.email2,users.address_street,users.address_city,users.address_state,users.address_postalcode,users.address_country";
+ }
+ }
if($columnname == "parentid")
{
- $querycolumns[$x] = "accountAccount.accountname";
+ $querycolumns[$x] = "accountAccounts.accountname";
}
if($columnname == "accountid")
{
@@ -135,48 +134,49 @@
{
$querycolumns[$x] = "contactdetailsContacts.lastname";
}
-
if($modulename == "Accounts")
- {
- $field_label[$x] = "ACCOUNT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
+ {
+ $field_label[$x] = "ACCOUNT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
if($columnname == "smownerid")
{
- $field_label[$x] = $field_label[$x].",USER_FIRSTNAME,USER_LASTNAME,USER_USERNAME,USER_YAHOOID,USER_TITLE,USER_OFFICEPHONE,USER_DEPARTMENT,USER_MOBILE,USER_OTHERPHONE,USER_FAX,USER_EMAIL,USER_HOMEPHONE,USER_OTHEREMAIL,USER_PRIMARYADDRESS,USER_CITY,USER_STATE,USER_POSTALCODE,USER_COUNTRY";
+ $field_label[$x] = $field_label[$x].",USER_FIRSTNAME,USER_LASTNAME,USER_USERNAME,USER_YAHOOID,USER_TITLE,USER_OFFICEPHONE,USER_DEPARTMENT,USER_MOBILE,USER_OTHERPHONE,USER_FAX,USER_EMAIL,USER_HOMEPHONE,USER_OTHEREMAIL,USER_PRIMARYADDRESS,USER_CITY,USER_STATE,USER_POSTALCODE,USER_COUNTRY";
}
}
-
if($modulename == "Contacts")
- {
- $field_label[$x] = "CONTACT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
- }
-
+ {
+ $field_label[$x] = "CONTACT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
+ }
}
$csvheader = implode(",",$field_label);
+
//<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>
-
+
if(count($querycolumns) > 0)
{
$selectcolumns = implode($querycolumns,",");
-
-$query = "select ".$selectcolumns." from vtiger_account
- inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_account.accountid
- inner join vtiger_accountbillads on vtiger_account.accountid=vtiger_accountbillads.accountaddressid
- inner join vtiger_accountshipads on vtiger_account.accountid=vtiger_accountshipads.accountaddressid
- inner join vtiger_accountscf on vtiger_account.accountid = vtiger_accountscf.accountid
- left join vtiger_account as vtiger_accountAccount on vtiger_accountAccount.accountid = vtiger_account.parentid
- left join vtiger_users on vtiger_users.id = vtiger_crmentity.smownerid
- left join vtiger_contactdetails on vtiger_contactdetails.accountid=vtiger_account.accountid
- left join vtiger_crmentity as vtiger_crmentityContacts on vtiger_crmentityContacts.crmid = vtiger_contactdetails.contactid
- left join vtiger_contactaddress on vtiger_contactdetails.contactid = vtiger_contactaddress.contactaddressid
- left join vtiger_contactsubdetails on vtiger_contactdetails.contactid = vtiger_contactsubdetails.contactsubscriptionid
- left join vtiger_contactscf on vtiger_contactdetails.contactid = vtiger_contactscf.contactid
- left join vtiger_contactdetails as vtiger_contactdetailsContacts on vtiger_contactdetailsContacts.contactid = vtiger_contactdetails.reportsto
- left join vtiger_account as vtiger_accountContacts on vtiger_accountContacts.accountid = vtiger_contactdetails.accountid
- left join vtiger_users as vtiger_usersContacts on vtiger_usersContacts.id = vtiger_crmentityContacts.smownerid
- where vtiger_crmentity.deleted=0 and (crmentityContacts.deleted=0 || vtiger_crmentityContacts.deleted is null) and vtiger_account.accountid in(".$mass_merge.")";
-//echo $query;
-//die;
+}
+
+$query = "select ".$selectcolumns." from account
+ inner join crmentity on crmentity.crmid=account.accountid
+ inner join accountbillads on account.accountid=accountbillads.accountaddressid
+ inner join accountshipads on account.accountid=accountshipads.accountaddressid
+ inner join accountscf on account.accountid = accountscf.accountid
+ left join account as accountAccounts on accountAccounts.accountid = account.parentid
+ left join users on users.id = crmentity.smownerid
+ left join contactdetails on contactdetails.accountid=account.accountid
+ left join crmentity as crmentityContacts on crmentityContacts.crmid = contactdetails.contactid
+ left join crmentity as crmentityAccounts on crmentityAccounts.crmid = account.accountid
+ left join contactaddress on contactdetails.contactid = contactaddress.contactaddressid
+ left join contactsubdetails on contactdetails.contactid = contactsubdetails.contactsubscriptionid
+ left join contactscf on contactdetails.contactid = contactscf.contactid
+ left join contactdetails as contactdetailsContacts on contactdetailsContacts.contactid = contactdetails.reportsto
+ left join account as accountContacts on accountContacts.accountid = contactdetails.accountid
+ left join users as usersAccounts on usersAccounts.id = crmentityContacts.smownerid
+ left join users as usersContacts on usersContacts.id = crmentityContacts.smownerid
+ left join customerdetails on contactdetails.contactid = customerdetails.customerid
+ where crmentity.deleted=0 and (crmentityContacts.deleted=0 || crmentityContacts.deleted is null) and account.accountid in(".$mass_merge.")";
+
$result = $adb->query($query);
while($columnValues = $adb->fetch_array($result))
@@ -204,20 +204,253 @@
}
$actual_values[$x] = str_replace(","," ",$actual_values[$x]);
}
- $mergevalue[] = implode($actual_values,",");
-}
-$csvdata = implode($mergevalue,"###");
-}else
-{
- die("No fields to do Merge");
-}
-
-$handle = fopen($wordtemplatedownloadpath."datasrc.csv","wb");
-fwrite($handle,$csvheader."\r\n");
-fwrite($handle,str_replace("###","\r\n",$csvdata));
-fclose($handle);
+ $mergevalue[] = implode(",",$actual_values);
+}
+$csvdata = implode("###",$mergevalue);
+
+echo "
Click here to return to the previous page\");
+ }
+ else if (document.layers || (!document.all && document.getElementById))
+ {
+ document.write(\"This feature requires IE 5.5 or higher for Windows on Microsoft Windows 2000, Windows NT4 SP6, Windows XP.\");
+ document.write(\"
Click here to return to the previous page\");
+ }
+ else if(document.all)
+ {
+ document.write(\"\");
+ }
+ ";
+}
+
+$sql = "select filename,data,filesize from wordtemplates where templateid=".$templateid;
$result = $adb->query($sql);
$temparray = $adb->fetch_array($result);
-$fileContent = $temparray['data'];
+$filecontent = $temparray['data'];
$filename=$temparray['filename'];
$filesize=$temparray['filesize'];
-$wordtemplatedownloadpath =$root_directory ."/test/wordtemplatedownload/";
-
-$handle = fopen($wordtemplatedownloadpath .$temparray['filename'],"wb");
-fwrite($handle,base64_decode($fileContent),$filesize);
-fclose($handle);
-
+$wordtemplatedownloadpath ='test/wordtemplatedownload/';
+//$wordtemplatedownloadpath =$root_directory .'test/wordtemplatedownload/';
//<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>
$mass_merge = $_REQUEST['idlist'];
@@ -77,36 +77,35 @@
}
//<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>
-$query1="select vtiger_tab.name,vtiger_field.tablename,vtiger_field.columnname,vtiger_field.fieldlabel from vtiger_field inner join vtiger_tab on vtiger_tab.tabid = vtiger_field.tabid where vtiger_field.tabid in (4,6) and vtiger_field.block <> 6 and vtiger_field.block <> 75 order by vtiger_field.tablename";
-
-$result = $adb->query($query1);
+$sql="select tab.name,field.tablename,field.columnname,field.fieldlabel from field inner join tab on tab.tabid = field.tabid where field.tabid in (4,6) order by field.tablename";
+
+$result = $adb->query($sql);
$y=$adb->num_rows($result);
-
for ($x=0; $x<$y; $x++)
{
- $tablename = $adb->query_result($result,$x,"tablename");
- $columnname = $adb->query_result($result,$x,"columnname");
- $modulename = $adb->query_result($result,$x,"name");
-
+ $tablename = $adb->query_result($result,$x,"tablename");
+ $columnname = $adb->query_result($result,$x,"columnname");
+ $modulename = $adb->query_result($result,$x,"name");
+
if($tablename == "crmentity")
- {
- if($modulename == "Accounts")
{
- $tablename = "crmentityAccounts";
+ if($modulename == "Accounts")
+ {
+ $tablename = "crmentityAccounts";
+ }
}
- }
- $querycolumns[$x] = $tablename.".".$columnname;
- if($columnname == "smownerid")
- {
- if($modulename == "Accounts")
- {
+ $querycolumns[$x] = $tablename.".".$columnname;
+ if($columnname == "smownerid")
+ {
+ if($modulename == "Accounts")
+ {
$querycolumns[$x]="concat(usersAccounts.last_name,' ',usersAccounts.first_name) as username";
- }
+ }
if($modulename == "Contacts")
- {
- $querycolumns[$x]="concat(vtiger_users.last_name,' ',vtiger_users.first_name) as usercname,vtiger_users.first_name,vtiger_users.last_name,vtiger_users.user_name,vtiger_users.yahoo_id,vtiger_users.title,vtiger_users.phone_work,vtiger_users.department,vtiger_users.phone_mobile,vtiger_users.phone_other,vtiger_users.phone_fax,vtiger_users.email1,vtiger_users.phone_home,vtiger_users.email2,vtiger_users.address_street,vtiger_users.address_city,vtiger_users.address_state,vtiger_users.address_postalcode,vtiger_users.address_country";
- }
- }
+ {
+ $querycolumns[$x]="concat(users.last_name,' ',users.first_name) as usercname,users.first_name,users.last_name,users.user_name,users.yahoo_id,users.title,users.phone_work,users.department,users.phone_mobile,users.phone_other,users.phone_fax,users.email1,users.phone_home,users.email2,users.address_street,users.address_city,users.address_state,users.address_postalcode,users.address_country";
+ }
+ }
if($columnname == "parentid")
{
$querycolumns[$x] = "accountAccounts.accountname";
@@ -119,69 +118,62 @@
{
$querycolumns[$x] = "contactdetailsContacts.lastname";
}
-
-
if($modulename == "Accounts")
- {
- $field_label[$x] = "ACCOUNT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
- }
-
+ {
+ $field_label[$x] = "ACCOUNT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
+ }
if($modulename == "Contacts")
- {
- $field_label[$x] = "CONTACT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
- if($columnname == "smownerid")
+ {
+ $field_label[$x] = "CONTACT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
+ if($columnname == "smownerid")
{
$field_label[$x] = $field_label[$x].",USER_FIRSTNAME,USER_LASTNAME,USER_USERNAME,USER_YAHOOID,USER_TITLE,USER_OFFICEPHONE,USER_DEPARTMENT,USER_MOBILE,USER_OTHERPHONE,USER_FAX,USER_EMAIL,USER_HOMEPHONE,USER_OTHEREMAIL,USER_PRIMARYADDRESS,USER_CITY,USER_STATE,USER_POSTALCODE,USER_COUNTRY";
}
- }
-
-
+ }
}
$csvheader = implode(",",$field_label);
-//echo $csvheader;
-//<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>
-
+
if(count($querycolumns) > 0)
{
$selectcolumns = implode($querycolumns,",");
-
-
-$query = "select ".$selectcolumns." from vtiger_contactdetails
- inner join vtiger_crmentity on vtiger_crmentity.crmid = vtiger_contactdetails.contactid
- inner join vtiger_contactaddress on vtiger_contactdetails.contactid = vtiger_contactaddress.contactaddressid
- inner join vtiger_contactsubdetails on vtiger_contactdetails.contactid = vtiger_contactsubdetails.contactsubscriptionid
- inner join vtiger_contactscf on vtiger_contactdetails.contactid = vtiger_contactscf.contactid
- left join vtiger_contactdetails as contactdetailsContacts on contactdetailsContacts.contactid = vtiger_contactdetails.reportsto
- left join vtiger_account as accountContacts on accountContacts.accountid = contactdetails.accountid
- left join vtiger_users on vtiger_users.id = vtiger_crmentity.smownerid
- left join vtiger_account on vtiger_account.accountid = vtiger_contactdetails.accountid
- left join vtiger_crmentity as crmentityAccounts on crmentityAccounts.crmid=vtiger_account.accountid
- left join vtiger_accountbillads on vtiger_account.accountid=vtiger_accountbillads.accountaddressid
- left join vtiger_accountshipads on vtiger_account.accountid=vtiger_accountshipads.accountaddressid
- left join vtiger_accountscf on vtiger_account.accountid = vtiger_accountscf.accountid
- left join vtiger_account as accountAccounts on accountAccounts.accountid = vtiger_account.parentid
- left join vtiger_users as usersAccounts on usersAccounts.id = crmentityAccounts.smownerid
- where vtiger_crmentity.deleted=0 and (crmentityAccounts.deleted <> 1) and vtiger_contactdetails.contactid in(".$mass_merge.")";
-
+
+$query = "select ".$selectcolumns." from contactdetails
+ inner join crmentity on crmentity.crmid = contactdetails.contactid
+ inner join contactaddress on contactdetails.contactid = contactaddress.contactaddressid
+ inner join contactsubdetails on contactdetails.contactid = contactsubdetails.contactsubscriptionid
+ inner join contactscf on contactdetails.contactid = contactscf.contactid
+ left join contactdetails as contactdetailsContacts on contactdetailsContacts.contactid = contactdetails.reportsto
+ left join account as accountContacts on accountContacts.accountid = contactdetails.accountid
+ left join users on users.id = crmentity.smownerid
+ left join account on account.accountid = contactdetails.accountid
+ left join crmentity as crmentityAccounts on crmentityAccounts.crmid=account.accountid
+ left join accountbillads on account.accountid=accountbillads.accountaddressid
+ left join accountshipads on account.accountid=accountshipads.accountaddressid
+ left join accountscf on account.accountid = accountscf.accountid
+ left join account as accountAccounts on accountAccounts.accountid = account.parentid
+ left join users as usersAccounts on usersAccounts.id = crmentityAccounts.smownerid
+ left join customerdetails on contactdetails.contactid = customerdetails.customerid
+ where crmentity.deleted=0 and (crmentityAccounts.deleted <> 1) and contactdetails.contactid in(".$mass_merge.")";
$result = $adb->query($query);
while($columnValues = $adb->fetch_array($result))
{
$y=$adb->num_fields($result);
+
for($x=0; $x<$y; $x++)
- {
- $value = $columnValues[$x];
- //<<<<<<<<<<<<<<< For blank Fields >>>>>>>>>>>>>>>>>>>>>>>>>>>>
- if($value == "0")
- {
- $value = "";
- }
- if(trim($value) == "--None--" || trim($value) == "--none--")
- {
- $value = "";
- }
- //<<<<<<<<<<<<<<< End >>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ {
+ $value = $columnValues[$x];
+ //<<<<<<<<<<<<<<< For blank Fields >>>>>>>>>>>>>>>>>>>>>>>>>>>>
+ if($value == "0")
+ {
+ $value = "";
+ }
+ if(trim($value) == "--None--" || trim($value) == "--none--")
+ {
+ $value = "";
+ }
+ //<<<<<<<<<<<<<<< End >>>>>>>>>>>>>>>>>>>>>>>>>>>>
$actual_values[$x] = $value;
$actual_values[$x] = str_replace('"'," ",$actual_values[$x]);
//if value contains any line feed or carriage return replace the value with ".value."
@@ -190,23 +182,230 @@
$actual_values[$x] = '"'.$actual_values[$x].'"';
}
$actual_values[$x] = str_replace(","," ",$actual_values[$x]);
- }
-
- $mergevalue[] = implode($actual_values,",");
-}
-$csvdata = implode($mergevalue,"###");
-}else
-{
- die("No fields to do Merge");
+ }
+ $mergevalue[] = implode(",",$actual_values);
+
+ $csvdata = implode("###",$mergevalue);
+}
+echo "
Modified: branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/filemanager/browser/default/js/common.js
==============================================================================
--- branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/filemanager/browser/default/js/common.js (original)
+++ branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/filemanager/browser/default/js/common.js Wed Jul 12 07:45:05 2006
@@ -1,6 +1,6 @@
???/*
* FCKeditor - The text editor for internet
- * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ * Copyright (C) 2003-2006 Frederico Caldeira Knabben
*
* Licensed under the terms of the GNU Lesser General Public License:
* http://www.opensource.org/licenses/lgpl-license.php
Modified: branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/filemanager/browser/default/js/fckxml.js
==============================================================================
--- branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/filemanager/browser/default/js/fckxml.js (original)
+++ branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/filemanager/browser/default/js/fckxml.js Wed Jul 12 07:45:05 2006
@@ -1,6 +1,6 @@
???/*
* FCKeditor - The text editor for internet
- * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ * Copyright (C) 2003-2006 Frederico Caldeira Knabben
*
* Licensed under the terms of the GNU Lesser General Public License:
* http://www.opensource.org/licenses/lgpl-license.php
Modified: branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/lang/_getfontformat.html
==============================================================================
--- branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/lang/_getfontformat.html (original)
+++ branches/VTIGERCRM-5.0.2-MMBRICH/include/fckeditor/editor/lang/_getfontformat.html Wed Jul 12 07:45:05 2006
@@ -1,66 +1,66 @@
-
-
-
-
-
-
-
-
-
-
-
-
FontFormats Localization
-
- IE has some limits when handling the "Font Format". It actually uses localized
- strings to retrieve the current format value. This makes it very difficult to
- make a system that works on every single computer in the world.
-
-
- With FCKeditor, this problem impacts in the "Format" toolbar command that
- doesn't reflects the format of the current cursor position.
-
-
- There is only one way to make it work. We must localize FCKeditor using the
- strings used by IE. In this way, we will have the expected behavior at least
- when using FCKeditor in the same language as the browser. So, when localizing
- FCKeditor, go to a computer with IE in the target language, open this page and
- use the following string to the "FontFormats" value:
-
-
- FontFormats : "",
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
FontFormats Localization
+
+ IE has some limits when handling the "Font Format". It actually uses localized
+ strings to retrieve the current format value. This makes it very difficult to
+ make a system that works on every single computer in the world.
+
+
+ With FCKeditor, this problem impacts in the "Format" toolbar command that
+ doesn't reflects the format of the current cursor position.
+
+
+ There is only one way to make it work. We must localize FCKeditor using the
+ strings used by IE. In this way, we will have the expected behavior at least
+ when using FCKeditor in the same language as the browser. So, when localizing
+ FCKeditor, go to a computer with IE in the target language, open this page and
+ use the following string to the "FontFormats" value:
+