Joomla.it Forum
Forum traduzioni italiano => Le traduzioni e le informazioni della community => Articoli della community => : alexdi 22 Jan 2011, 13:13:15
-
Vtiger è un applicativo web CRM (Customer Relationship Management) open source , che viene utilizzato per la gestione delle relazioni coi clienti (contatti, report, marketing, vendite , supporto post-vendita, inventario e magazino, etc.).
Premetto che per me, Vtiger , è ancora quasi uno "sconosciuto" però, nonostante ciò, in questo articolo, scoprirete come "collegare" il vostro sito joomla a Vtiger, creando quindi un form personalizzabile tramite il componente chronofoms di joomla! , dal quale inviare direttamente al CRM Vtiger , richieste di informazioni spontanee provenienti dal CMS joomla! (Leads Vtiger).
Tutte le prove sono state fatte in locale, uttilizzando XAMPP.
Spero possa essere utile e di spunto per ulteriori sviluppi.
Un saluto a tutti.
http://www.dillofacile.netsons.org/ (http://www.dillofacile.netsons.org/)
Link all'articolo: http://www.joomla.it/articoli-della-community/4716-integrare-joomla-con-crm-vtiger-tramite-il-componente-chronmoforms-di-joomla.html
-
Articolo molto chiaro, ti ringrazio. Infatti io ho un sito che utilizza Vtiger, e piano piano stiamo facendo conoscenza tra di noi. Devo dirti che vtiger è molto ben fatto e l'integrazione con Joomla promette veramente bene. Se avrai altri accorgimenti da segnalare, io sono tutto ORECCHIA, poichè con le guide e articoli cosi ben descritti riesco a risolvere molte problematiche, pur non essendo programmatore.
Un saluto
LB
-
Prego lutherbli e grazie per i complimenti.
L' integrazione tra Joomla e Vtiger è un argomento molto interessante ma credo complesso da realizzare e con richiesta di molto tempo.
Esistono in giro moduli e plugin free ed anche commerciali e su questi ultimi non saprei a che livello di integrazione.
Esistono progetti che però, da quallo che ho visto, sono fermi.
La novità, che poi tanto novità non è, visto che risale ad agosto 2010, è quella che ho trovato sul forum ufficiale di vtiger e che prevede l' utilizzo di chronoforms per l' integrazione. Mi è sembrato interessante e quindi ecco l' articolo.
E' uno spunto, un punto di partenza, del resto pure io non sono un programmatore, giusto quel minimo da autodidatta (e ben vengano siti come joomla.it)
Se arrivano altre idee, non esiterò a condividerle.
Un saluto.
-
Anche io utilizzo vtiger da poco tempo, e devo dire che è un gran bel crm.
Integrando joomla, vtiger e vm credo che ci troviamo di fronte ad una situazione "esplosiva"
-
Esatto bismark2005 , proprio "esplosiva".
Però la strada mi pare molto lunga e tortuosa.
Nel frattempo, con chronoforms, in modo semplice, qualche cosa di più interessante si riesce a fare.
E' un piccolo passo.
Un saluto.
-
Integrare joomla vtiger e vm a mio avviso non è facile ma nemmeno impossibile.Al momento non conosco la programmazione così approfonditamente da creare qualcosa che integri le tre cose. Potrebbe essere un buon progetto del gruppo italiano joomla!!
-
Molto interessante, cercherò di farne tesoro.
Per la cronaca, questo è un problema che affrontai un paio di anni fa con l'esigenza di adottare un sistema CRM per la gestione della mia attività commerciale.
Pur avendo valutato anche Vtiger, alla fine la scelta cadde sul progetto francese Dolibarr.
Da tempo ormai jomla e dolibarr convivono serenamente sul mio server web, ho scelto però di non integrarli e mantenerli disgiunti e legati solo tramite un banale link per consentirne l'accesso remoto ad un numero limitato di utenti selezionati.
Sarebbe interessante comunque a valutare la compatibilità del componente Chronmoforms con dolibarr, mi riservo di fare qualche test prossimamente.
Cordialità
Silviosc
-
Grazie silviosc, si, ho installato pure Dolibarr in locale ma, a parte averlo installato, non ho fatto nessuna prova ne ricerca in merito. Sono più concentrato su Vtiger.
Tienici informati se riesci a fare una cosa simile anche con Dolibarr.
Saluti.
-
A proposito di DOLIBAR. Vista la mia grande e infinita curiosità... in confronto con Vtiger, com'è? piu semplice? Si utilizza bene? sai sono sempre alla ricerca di miglioramenti... anceh se Vtiger è ottimo.
-
Integrare joomla vtiger e vm a mio avviso non è facile ma nemmeno impossibile.Al momento non conosco la programmazione così approfonditamente da creare qualcosa che integri le tre cose. Potrebbe essere un buon progetto del gruppo italiano joomla!!
Magari ! :)
Solo che personalmente, non mi sento così preparato o in grado di partecipare/gestire un bel progetto come questo. Inoltre, il tempo e sempre poco. Comunque, continuerò a cercare e vedere anche da solo, se si riesce ad aggiungere sempre più informazioni o trucchi. Magari non nascerà mai un componente che gestirà totalmente l' integrazione ma, un pò tramite chronoforms e un pò con altri "trucchi" simili, si riuscirà sempre più ad avvicinarsi.
Un saluto.
-
Vedo ora, grande articolo alex.
Un'altra accoppiata eccezionale.
Una rettifica l'articolo su come fare i form con Chronoform non è mio ma del grande bigham
-
Grazie per i complimenti vales , fatti da te , che chronoforms l' hai "aperto" e reso "digeribile" a questa community , non possono che farmi piacere. :)
Chiedo scusa a bigham , ::) ho fatto un pò di confusione ma a quanto pare i miei ringraziamenti li devo proprio anche a lui.
Un Saluto.
-
L'ho inserito fra gli articoli in evidenza della Sezione form
http://forum.joomla.it/index.php/topic,89142.0.html
-
Grazie vales.
Per me, aver contribuito su joomla.it , è motivo di grande soddisfazione.
Spero di poter essere utile anche in futuro.
-
Ad integrazione dell' articolo collegato a questo post, ed anche su alcune richieste che ho ricevuto in Pvt, volevo segnalare che, in pratica, ciò che viene utilizzato per comunicare con Vtiger è la libreria Curl di php http://php.net/manual/en/book.curl.php (http://php.net/manual/en/book.curl.php)
Chronoforms, possiede un plugin che agevola ed integra i sui form con tale funzionalità di php.
Negli altri casi, per esempio con altri componenti tipo Ckforms, che non conosco e che quindi non so se possiedono un pligin simile e non so fino a che punto possano essere personalizzati, su può però prendere in cosiderazione l' iserimento del codice necessario "a mano".
<?php
//Init Curl
$ch = curl_init();
// set delle opzioni per la richiesta curl.
curl_setopt($ch, CURLOPT_URL, "http://localhost/vtigercrm/modules/Webforms/post.php");
curl_setopt($ch, CURLOPT_POSTFIELDS, "firstname=NOME&lastname=COGNOME&email=NOME%40COGNOME.IT&cf_610=TESTOMESSAGGIO&submit=Submit&moduleName=Leads&leadsource=Web+Site");
// Execute
curl_exec($ch);
//chiusura
curl_close($ch);
?>
Il codice riportato sopra crea un lead su vtiger, con firstname=NOME, lastname=COGNOME, etc. etc.. Provate a crearvi un file php, inserite questo file nella root del vostro sito e copiateci dentro questo codice, richiamatelo dal browser e vedrete il lead creato sul vtiger (quest' ultimo, opportunamente configurato come descritto in articolo).
Quindi, si tratta di adattare il codice riportato quì sopra, al componente da voi utilizzato, estraendo i campi dal form per costruire la richiesta curl da inviare a vtiger.
Un saluto a tutti.
-
Complimenti un bellissimo articolo
-
Grazie per i complimenti Nikoji.
Ciao.
-
Salve Alexdi
Innanzi tutto complimenti per l'articolo è molto interessante e scritto bene ma probabilmente faccio qualche errore perche non riesco a far comunicare Joomla con Vtiger.
Sto usando Joomla 1.5.22
Vtiger 5.2.1
EasyPHP 5.3.5.0
Il percorso dei file è ...localhost/crm/
Ho predisposto Vtiger con l'utente Test come da te descritto (id e password modificate in Webforms.config.php)
Ho creato passo passo il Form con Chronoform inserendo solo 2 campi Nome e Cognome (tanto per fare una prova) avendo l'accortezza di chiamare i campi firstname e lastname (come da tabella di Vtiger) e il pulsante Submit.
Ho modificato il nome del pulsante da button_2 a submit
ho attivato il plugin cURL inserendo i nomi dei campi firstname,lastname,submit
e ho inserito il mio URL che punta a http://localhost/crm/modules/Webforms/post.php.
Per farla breve quando invio il modulo mi compare questa schermata e si ferma cosi:
cf_CURL debug info
$curl_values: firstname=mario&lastname=rossi&submit=Submit&moduleName=Leads&leadsource=Web+Site
$params->target_url: http://localhost/crm/modules/Webforms/post.php
$ch: Resource id #101
CURL response:
Loggandomi in Vtiger sia come admin che come test non vedo il nuovo Lead
Dove sto sbagliando?
Grazie mille
-
Ciao andreabolognesi e grazie per gli apprezzamenti sull' articolo.
L' unica cosa che ho notato e che scrivi l ' utente di test con la "T" maiuscola, che quindi così deve essere riportato all' interno del file, oppure lasci l' utente admin, che funziona uguale. Ovviamente, la variabile $defaultUserAccessKey deve corrispondere a quella dell' utente $defaultUserName.
Poi, ci sono queste differenze: io le prove le ho fatte con Joomla 1.5.14 e con xampp e non easyphp. Più che la versione di joomla, e che easyphp credo sia molto diverso da xampp. Possiede le librerie curl di php e/o queste sono abilitate all' interno del file php.ini ? Prova a cercare "abilitare curl" su google.
Altra verifica da fare e quella dei campi obbligatori del lead (che su vtiger vengono contrasegnati con un piccolo * color rosso).
Altre cose, da quello che scrivi, sinceramente non le noto tranne la stranezza che un vero e proprio codice d' errore non ti viene riportato (e ciò mi fa pensare alle librerire curl).
Altrimenti, sembra comunque più un problema di vtiger che di chronoforms/joomla. Potresti provare anche ad utilizzare direttamente il codice che ho riportato sempre in questo post, opportunamente modificato alle tue impostazioni per una ulteriore conferma.
Fammi sapere come va a finire, se hai ancora problemi posta il codice generato dal form di chronoforms, il codice del file Webforms.config.php ed evenuali errori segnalati.
-
E' già da un pò che volevo provare questa integrazione molto interessante e finalmente la metto in pratica. Però ai primi step ho già qualche problema.
Mi spiego: in locale, ho installato Joomla 1.5.22 (perchè è la versione installata sul mio sito web, dove dovrò riprodurre la cosa, se il tutto rispondesse alle mie esigenze) su Easyphp 5.2.10 (che è la versione adatta a Joomla 1.5.22) e fin qui funziona tutto senza problemi.
Successivamente, come descritto dal tutorial, ho creare una cartella nella directory principale di Joomla che ho chiamato vtiger, ho scaricato vtiger 5.1.0 versione base e ho dezippato il tutto nella cartella appena creata.
Poi, nel tutorial dice che l' installazione e' molto simile a quella di Joomla, quindi ho supposto che questo significasse scrivere nel browser:
http://127.0.0.1/joomla/vtiger/
e pensavo che questo avrebbe fatto partire l'installazione e invece mi appare il messaggio:
This directory must be writable by the webserver user
Ho verificato se la directory vtiger fosse in sola lettura, ma sembra che il flag sia deselezionato.
Qualcuno mi può aiutare?
Grazie
-
Ciao stefycan.
Innanzi tutto , se non ho capito male, stai provando in locale e non riesci a farlo funzionare.
Una cosa basilare: io le prove le ho fatte in locale con :
Xampp 1.7.1
VTiger CRM 5.2.1
Joomla! CMS 1.5.14
ChronoForms 3.2.0
Ora, i miei unici dubbi sono Easyphp al posto di Xampp (come già ho risposto a andreabolognesi ma non ho feedback in merito) per via delle librerire curl e sicuramente anche la versione di Vtiger.
Se non ricordo male, feci prove con una versione precedente alla 5.2.1 e non funzionava (sempre se non ricordo male, mancavano dei file che gestiscono proprio le webform).
Quindi, la versione di Vtiger da me utilizzata è la 5.2.1 e quindi non posso escludere che se utilizzi altra versione poi ci siano dei problemi.
Inoltre, io non ho installato vtiger "all' internmo" di joomla ma bensì in una sua cartella (per intenderci http://localhost/vtiger/) nella root principale del server web gestito tramite xampp (con xampp la htdocs per intenderci).
Poi, nel tutorial dice che l' installazione e' molto simile a quella di Joomla, quindi ho supposto che questo significasse scrivere nel browser:
http://127.0.0.1/joomla/vtiger/
In effetti è molto simile. Ma tu, dove hai "decompresso" Vtiger ?
Ho verificato se la directory vtiger fosse in sola lettura, ma sembra che il flag sia deselezionato.
Ok, però This directory must be writable by the webserver user
sembra che non l' ho confermi.
Quindi, cerca di vedere queste cose (la versione di vtiger , easyphp in particolar modo ed i permessi sulla cartella).
Deve funzionare, se proprio non riesci, riprova utilizzando le versioni giuste e xampp.
facci sapere.
Ciao.
-
Grazie alexdi,
il messaggio di errore l'ho risolto creando tra gli utenti di windows l'utente webserver, di cui probabilmente Easyphp ha bisogno.
La cartella dove ho decompresso i file di vtiger è "vtiger", all'interno della cartella principale di joomla che su web corrisponderebbe proprio ad htdocs e che sul mio Easyphp si trova in una cartella da me nominata joomla (è quell'indirizzo http://127.0.0.1/joomla/vtiger/ che avevo scritto per fare partire l'installazione). Per intenderci, io per fare partire l'admin di joomla scrivo l'indirizzo http://127.0.0.1/joomla/admin.
Adesso scrivendo l'indirizzo http://127.0.0.1/joomla/vtiger/ nel browser, Easyphp mi fà vedere i file presenti in quella cartella (quelli decompressi di vtiger) ma ancora non mi fà partire nessuna installazione.
Seguirò il tuo consiglio e proverò a installare la versione 5.2.1.
Grazie comunque
Stefania
-
Ciao stefycan.
Se ti fa vedere i file, hai provato ad aggiungere "install.php" in fondo a http://127.0.0.1/joomla/vtiger/ ?
-
Ieri, per tagliare la testa al toro, ho scaricato la la 5.2.1 (il file vtigercrm-5.2.1.tar.gz), ho verificato che una volta fatta la decompressione, nella cartella vtiger, ci fosse il file install.php e l'ho quindi richiamato nel browser scrivendo: http://127.0.0.1/joomla/vtiger/install.php, come dicevi tu.
L'installazione ancora non parte e questo è l'errore che mi appare:
Warning: Unexpected character in input: ' in C:\Programmi\EasyPHP5.2.10\www\joomla\vtiger\config.inc.php on line 3886
Parse error: syntax error, unexpected T_LNUMBER in C:\Programmi\EasyPHP5.2.10\www\joomla\vtiger\config.inc.php on line 3886
-
hai fatto bene ha scaricare la versione 5.2.1.
..ma l' errore te lo da subito , appena lanci l' istallazione, o dopo che hai inserito i primi dati ?
Se dopo che hai inserito i dati, potrebbe esserci qualche carattere non ammesso...per esempio su Host Name cosa metti ? 127.0.0.1 o localhost ? Prova entrambi.
Ho riprovato anche in locale sul mio pc ed arrivo tranquillamente alla "System Configuration" di vtiger ove occore inserire i dati , senza alcun problema. :)
Rimane easyphp. Attenzione, non sto dicendo che con easyphp ci possano essere problemi ma non posso escluderlo. Io ho utilizzato xampp e easyphp non lo conosco anche se, credo, abbia meno librerie e funzioni varie di php. In tal caso occorrerebbe intervenirci per aggiungere le mancanze.
Insomma, se proprio non ne vieni a capo, se per te non ci sono problemi, utilizza esattamente le stesse versioni e software riportate nell' articolo.
Scusami se non riesco ad esserti più utile di così. stefy, devi riuscire ad installate vtiger.
Non può essere che io sia stato così fortunato che mi si è installato al primo colpo senza problemi.
-
Sei molto gentile, anzi :)
L'errore me lo da subito senza che io faccia nient'altro che richiamare il file install.php.
Sono andata anche a vedere la riga 3886 di quel file config.inc.php, ma non comprendo quello che c'è scritto, anche perchè conosco il php molto poco.
Magari proverò con Xampp e poi ti dirò se finalmente è andata a buon fine.
Grazie
Stefy
-
...da me quel file , config.inc.php, ha solo 200 righe !! Invece, nello zip scompattato, è un file vuoto !!!
Strano....
ecco le righe del config.inc.php nella cartella di vtiger installato e funzionante.
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
include('vtigerversion.php');
// more than 8MB memory needed for graphics
// memory limit default value = 64M
ini_set('memory_limit','64M');
// show or hide calendar, world clock, calculator, chat and CKEditor
// Do NOT remove the quotes if you set these to false!
$CALENDAR_DISPLAY = 'true';
$WORLD_CLOCK_DISPLAY = 'true';
$CALCULATOR_DISPLAY = 'true';
$CHAT_DISPLAY = 'true';
$USE_RTE = 'true';
// url for customer portal (Example: http://vtiger.com/portal)
$PORTAL_URL = 'http://vtiger.com/customerportal';
// helpdesk support email id and support name (Example: 'support@vtiger.com' and 'vtiger support')
$HELPDESK_SUPPORT_EMAIL_ID = 'XXXXXX@mail.it';
$HELPDESK_SUPPORT_NAME = 'your-support name';
$HELPDESK_SUPPORT_EMAIL_REPLY_ID = $HELPDESK_SUPPORT_EMAIL_ID;
/* database configuration
db_server
db_port
db_hostname
db_username
db_password
db_name
*/
$dbconfig['db_server'] = 'localhost';
$dbconfig['db_port'] = ':3306';
$dbconfig['db_username'] = 'root';
$dbconfig['db_password'] = '';
$dbconfig['db_name'] = 'vtigercrm521';
$dbconfig['db_type'] = 'mysql';
$dbconfig['db_status'] = 'true';
// TODO: test if port is empty
// TODO: set db_hostname dependending on db_type
$dbconfig['db_hostname'] = $dbconfig['db_server'].$dbconfig['db_port'];
// log_sql default value = false
$dbconfig['log_sql'] = false;
// persistent default value = true
$dbconfigoption['persistent'] = true;
// autofree default value = false
$dbconfigoption['autofree'] = false;
// debug default value = 0
$dbconfigoption['debug'] = 0;
// seqname_format default value = '%s_seq'
$dbconfigoption['seqname_format'] = '%s_seq';
// portability default value = 0
$dbconfigoption['portability'] = 0;
// ssl default value = false
$dbconfigoption['ssl'] = false;
$host_name = $dbconfig['db_hostname'];
$site_URL = 'http://localhost/vtigercrm';
// root directory path
$root_directory = 'C:\xampp\htdocs\vtigercrm/';
// cache direcory path
$cache_dir = 'cache/';
// tmp_dir default value prepended by cache_dir = images/
$tmp_dir = 'cache/images/';
// import_dir default value prepended by cache_dir = import/
$import_dir = 'cache/import/';
// upload_dir default value prepended by cache_dir = upload/
$upload_dir = 'cache/upload/';
// maximum file size for uploaded files in bytes also used when uploading import files
// upload_maxsize default value = 3000000
$upload_maxsize = 3000000;
// flag to allow export functionality
// 'all' to allow anyone to use exports
// 'admin' to only allow admins to export
// 'none' to block exports completely
// allow_exports default value = all
$allow_exports = 'all';
// files with one of these extensions will have '.txt' appended to their filename on upload
// upload_badext default value = php, php3, php4, php5, pl, cgi, py, asp, cfm, js, vbs, html, htm
$upload_badext = array('php', 'php3', 'php4', 'php5', 'pl', 'cgi', 'py', 'asp', 'cfm', 'js', 'vbs', 'html',
'htm', 'exe', 'bin', 'bat', 'sh', 'dll', 'phps',
'phtml', 'xhtml', 'rb', 'msi', 'jsp');
// full path to include directory including the trailing slash
// includeDirectory default value = $root_directory..'include/
$includeDirectory = $root_directory.'include/';
// list_max_entries_per_page default value = 20
$list_max_entries_per_page = '20';
// limitpage_navigation default value = 5
$limitpage_navigation = '5';
// history_max_viewed default value = 5
$history_max_viewed = '5';
// default_module default value = Home
$default_module = 'Home';
// default_action default value = index
$default_action = 'index';
// set default theme
// default_theme default value = blue
$default_theme = 'softed';
// show or hide time to compose each page
// calculate_response_time default value = true
$calculate_response_time = true;
// default text that is placed initially in the login form for user name
// no default_user_name default value
$default_user_name = '';
// default text that is placed initially in the login form for password
// no default_password default value
$default_password = '';
// create user with default username and password
// create_default_user default value = false
$create_default_user = false;
// default_user_is_admin default value = false
$default_user_is_admin = false;
// if your MySQL/PHP configuration does not support persistent connections set this to true to avoid a large performance slowdown
// disable_persistent_connections default value = false
$disable_persistent_connections = false;
//Master currency name
$currency_name = 'Euro';
// default charset
// default charset default value = 'UTF-8' or 'ISO-8859-1'
$default_charset = 'UTF-8';
// default language
// default_language default value = en_us
$default_language = 'en_us';
// add the language pack name to every translation string in the display.
// translation_string_prefix default value = false
$translation_string_prefix = false;
//Option to cache tabs permissions for speed.
$cache_tab_perms = true;
//Option to hide empty home blocks if no entries.
$display_empty_home_blocks = false;
//Disable Stat Tracking of vtiger CRM instance
$disable_stats_tracking = false;
// Generating Unique Application Key
$application_unique_key = 'de04135a8a3cb6b4ef4365823e8d9466';
// trim descriptions, titles in listviews to this value
$listview_max_textlength = 40;
// Maximum time limit for PHP script execution (in seconds)
$php_max_execution_time = 0;
// Set the default timezone as per your preference
$default_timezone = 'Europe/London';
/** If timezone is configured, try to set it */
if(isset($default_timezone) && function_exists('date_default_timezone_set')) {
@date_default_timezone_set($default_timezone);
}
?>
-
Perchè fà riferimento a SugarCRM, che è un'altro software?
-
forse perchè
vtiger CRM è nato nel 2004 come fork di Sugar CRM
... da wikipedia ::)
-
ah, non lo sapevo :-[
-
Finalmente ce l'ho fatta a concludere la procedura di integrazione tra vTiger e Chronoforms.
Alla fine ho installato la versione di vTiger 5.1.0 Crmvillage.biz Multipiattaforma, su EasyPhp.
Non so che differenza ci sia con le altre versioni ma l'ho testato e mi sembra un programma completo.
Comunque ho incontrato altre difficoltà oltre alla versione di vTiger da installare (se può essere d'aiuto a qualcun'altro...):
- in Crmvillage il modulo Webforms non era elencato nel Gestore Moduli di vTiger CrmVillage, ma ho scoperto, dopo essere impazzita a cercare il modulo da installare, che questo è comunque presente nella cartella modules di vTiger.
- curl non è attivato di default su EasyPhp e quindi si deve andare a decommentare la riga extension=php_curl.dll nel file php.ini di EasyPhp per attivarlo (e riavviare il server)
Grazie comunque Alexdi e scusa se ti ho risposto dopo così tanto tempo.
Ciao
-
Grande stefycan!
Certo!! Le librerire Curl, ne accennai in una risposta precedente. Infatti non è sufficiente verificare che sia presente il file dll ma occorre che sia pure abilitato sul php.ini. Sono stato un pò superficiale !
Pure il sottoscritto aveva riscontrato problemi con la versione di Crmvillage proprio per via dei Webforms.
Ancora però non mi spiego perchè non ti andava avanti l' installazione (che non deve essere condizionata dalla presenza o no delle curl ma eventualmente solo segnalare la loro assenza/disattivazione).
Ad ogni modo, sono molto contento che ci sei riuscita.
Ciao.
-
Oh pardon! Pensavo di avere letto tutto e invece mi sono persa l'argomento Curl.
Webforms e Curl sono stati solo problemi successivi all'installazione di vTiger, quando stavo seguendo la procedura di integrazione.
Il motivo per il quale l'installazione delle altre versioni non mi partiva neanche, è ancora un mistero anche per me :)
Non ho mai utilizzato vTiger, ma così a prima vista mi sembra un bel programma altamente personalizzabile e questa integrazione lo completa al massimo. Mi hanno chiesto di testare anche Sitovivo, ma a me questo sembra già il massimo che si possa avere.
Grazie ancora
Stefania
-
Salve a tutti.
La guida è completa e chiarissima ma ho sempre errori a cominciare dal debug del curl.
L'errore è "invalida data webform"
Possibile che le versioni che sto usando non vadano daccordo?
Sto usando l'ultimo Vtiger il 5.2.1 e Joomla 1.5.15
:(
-
Ciao ticreoz.
Non credo che siano problemi di versioni. Verifica bene piuttosto che le librerie curl siano abilitate sul server ed i parametri impostati nel plugin di chronoforms siano corretti.
Per esempio, basta che imposti male un campo, "lastnam" invece di "lastname" è l' errore che compare è quello in allegato.
-
Sai che ho risolto?
indovina come?
ho modificato il file post.php...alla voce che riguardava l'appkey ho messo false anzichè true.
tutto questo a prescindere da quello che webform.config.php mostri...
-
Molto bene ticreoz.
Non ho capito bene cosa hai modificato nel file post.php. Da me il file riporta il seguente codice. Nel mio caso, non fu necessario modificare nulla all' interno di questo file.
Strano, comunque se ti funziona meglio così.
Ciao.
<?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.
************************************************************************************/
function getRootDirectoryPath(){
$path = pathinfo(__FILE__);
$path = $path['dirname'];
$path = substr($path,0,strrpos(substr($path,0,strlen($path)-1),DIRECTORY_SEPARATOR));
$path = substr($path,0,strrpos(substr($path,0,strlen($path)-1),DIRECTORY_SEPARATOR));
return $path;
}
//get vtiger root directory.
$path = getRootDirectoryPath();
chdir($path);
require_once("config.inc.php");
require_once('include/database/PearDatabase.php');
require_once 'include/Webservices/Utils.php';
require_once("modules/Users/Users.php");
require_once("include/Zend/Json.php");
require_once("include/Webservices/VtigerCRMObject.php");
require_once("include/Webservices/VtigerCRMObjectMeta.php");
require_once("include/Webservices/DataTransform.php");
require_once("include/Webservices/WebServiceError.php");
require_once 'include/utils/utils.php';
require_once 'include/Webservices/ModuleTypes.php';
require_once 'include/utils/VtlibUtils.php';
require_once('include/logging.php');
require_once 'include/Webservices/VtigerWebserviceObject.php';
require_once 'include/Webservices/WebserviceEntityOperation.php';
require_once "include/language/$default_language.lang.php";
require_once 'modules/Webforms/Webforms.config.php';
require_once 'include/Webservices/Login.php';
require_once 'include/Webservices/ModuleTypes.php';
require_once 'include/Webservices/AuthToken.php';
require_once 'include/Webservices/DescribeObject.php';
require_once 'include/Webservices/Create.php';
require_once 'include/Webservices/WebserviceField.php';
require_once 'include/Webservices/EntityMeta.php';
require_once('Smarty_setup.php');
function webforms_getUserData($ownerId, $describeFields,$source){
$userData = Array();
for($i=0;$i<sizeof($describeFields);++$i){
$fieldName = $describeFields[$i]['name'];
if(isset($source[$fieldName]) || $describeFields[$i]['type']['name'] == 'owner'){
/*if($describeFields[$i]['type']['name'] == 'reference'){
}*/
if($describeFields[$i]['type']['name'] == 'owner'){
$userData[$fieldName] = $ownerId;
}else{
$value = vtws_getParameter($source,$fieldName);
if($value !== null){
$userData[$fieldName] = $value;
}
}
}else if($describeFields[$i]['mandatory'] == true){
return null;
}
}
return $userData;
}
function webforms_returnError($e,$moduleName){
global $defaultSuccessAction,$failureURL;
if(strlen($failureURL) > 0){
header("Location: $failureURL");
}
if($defaultSuccessAction == 'JSON'){
Zend_Json::$useBuiltinEncoderDecoder = true;
$json = new Zend_Json();
echo $json->encode(array('success'=>false,'error'=>$e));
}else{
webforms_displayTemplate(getExceptionArray($e),$moduleName,'modules/Webforms/ErrorPage.tpl');
}
}
function getExceptionArray($e){
if(is_array($e)){
return $e;
}
return array('code'=>$e->code,'message'=>$e->message);
}
function webforms_displayTemplate($data,$moduleName,$path){
$smarty = new vtigerCRM_Smarty;
webforms_prepareSmarty($smarty,$data,$moduleName);
$smarty->display($path);
}
function webforms_prepareSmarty($smarty,$data,$moduleName){
global $default_language,$site_URL;
$moduleStrings = return_module_language($default_language,'Webforms');
$appStrings = return_application_language($default_language);
$path = (strrpos($site_URL,'/') === strlen($site_URL))? $site_URL: $site_URL.'/';
$smarty->assign("PATH", $path);
$smarty->assign("IMAGEPATH", 'themes/images/');
$smarty->assign("MODULE",$moduleName);
$smarty->assign("MOD", $moduleStrings);
$smarty->assign("DATA", $data);
$smarty->assign("APP", $appStrings);
}
function webforms_returnSuccess($element,$moduleName){
global $successURL;
if(strlen($successURL) > 0){
header("Location: $successURL");
}
if($defaultSuccessAction == 'JSON'){
Zend_Json::$useBuiltinEncoderDecoder = true;
$json = new Zend_Json();
echo $json->encode(array('success'=>true,'result'=>$element));
}else{
webforms_displayTemplate($elemnet,$moduleName,'modules/Webforms/SuccessPage.tpl');
}
}
function webforms_init(){
global $defaultUserName,$defaultUserAccessKey,$defaultOwner,$adb,$enableAppKeyValidation,$application_unique_key;
try{
$active = vtlib_isModuleActive('Webforms');
if($active === false){
webforms_returnError(array('code'=>"WEBFORMS_DISABLED",'message'=>'Webforms module is disabled'),'Webforms');
}
if($enableAppKeyValidation ==true){
if($application_unique_key !== $_REQUEST['appKey']){
webforms_returnError(array('code'=>"WEBFORMS_INVALID_APPKEY",'message'=>'AppKey provided is invalid'),null);
return ;
}
}
$module = $_REQUEST['moduleName'];
$challengeResult = vtws_getchallenge($defaultUserName);
$challengeToken = $challengeResult['token'];
$user = vtws_login($defaultUserName,md5($challengeToken.$defaultUserAccessKey));
$describeResult = vtws_describe($module,$user);
$fields = $describeResult['fields'];
$assignedUser = new Users();
$ownerId = $assignedUser->retrieve_user_id($defaultOwner);
$userData = webforms_getUserData(vtws_getId(VtigerWebserviceObject::fromName($adb,"Users")->getEntityId(),$ownerId),$fields,$_REQUEST);
if($userData === null){
webforms_returnError(array('code'=>"WEBFORMS_INVALID_DATA",'message'=>'data provided is invalid'),$module);
return ;
}
if(sizeof($userData)<1){
webforms_returnError(array('code'=>"WEBFORMS_INVALID_DATA",'message'=>'data provided is invalid'),$module);
return ;
}
$createResult = vtws_create($module,$userData,$user);
webforms_returnSuccess($createResult,$module);
}catch(WebServiceException $e){
webforms_returnError($e,$module);
}
}
webforms_init();
?>
-
Eccomi ..scusa il ritardo :)
allora alla riga 133 del mio post.php if($enableAppKeyValidation ==false){
if($application_unique_key !== $_REQUEST['appKey']){
webforms_returnError(array('code'=>"WEBFORMS_INVALID_APPKEY",'message'=>'AppKey provided is invalid'),null);
return ;
Il "FALSE" che vedi nella prima riga , prima fu TRUE e ciò non mi permetteva il passaggio da Chronoforms di Joomla su Vtiger.
Nelle guide che ho trovato non si parlava affatto di modificare il post.php ma webforms.config.php o_O
-
Boh.
Infatti da me funziona con "true". Non so che dire.
Ciao
-
Salve,
scusate se mi intrometto.
Abbiamo creato ampliato il componente ckform per l'integrazione con vTiger. Lo trovate *****************
Inoltre abbiamo ulteriormente ampliato il componente e lo abbiamo staccato dalle vtiger forms e agganciato ai web services: con il nuovo componente è possibile non solo creare facilmente infiniti moduli e inviare direttamente su vTiger i dati del cliente ma possiamo anche inserire agganciato al lead il prodotto che il lead scegli in fase di compilazione del modulo....
Se foste interessati contattateci... facciamo consulenza non solo su Joomla ma su tutto il processo Joomla->vTiger->marketing.
-
ciao luigi.massa,
non amiamo molto che vengano inseriti link a siti esterni per i contributi trattati sul forum.
Sei invitato a caricare i file nel download della community: http://www.joomla.it/articoli-della-community/4142
per poi inserire il link alla scheda nel download.
Grazie per l'aiuto
-
Ottimo articolo, mi ha fatto venire proprio la voglia di testare questo componente! Ho solo una curiosità, è possibile installarlo sullo stesso database di Joomla! e se si, che versioni di Joomla sono supportate visto che sul loro sito non è riportata alcuna versione particolare (almeno sembra)?