Roundcube Community Forum

Third Party Contributions => API Based Plugins => Topic started by: rugged on December 16, 2010, 03:59:02 AM

Title: google_contacts installation
Post by: rugged on December 16, 2010, 03:59:02 AM
Hi,

I'm trying to install the google_contacts plugin on roundcube 0.4. I've followed all the steps in the instructions here (http://mail4us.net/myroundcube/), but don't see any google contacts section in the settings. The only confusion I had in installation was that the instructions say:

Goto [roundcube_folder]/plugins and open main.inc.php

But my main.inc.php was in [roundcue_folder]/config - does this matter? I added a copy of main.inc.php to the plugins folder, but it made no difference.

There's nothing in the logs about google_contacts at all, so I'm not even sure if it's recognising that I want to load it.
Title: google_contacts installation
Post by: rosali on December 17, 2010, 09:04:47 AM
Did you read the requirements in main script?


/**
 * Usage: http://mail4us.net/myroundcube/
 *
 * Requirements:
 * Get Zend GData APIs http://framework.zend.com/download/webservices
 * Copy and paste "Zend" folder into ./program/lib
 *         ->  File structure must be: lib
 *                                      - Zend
 *                                        - Loader.php
 *                                        - ...
 *
 * NOTICE: Patch ./program/lib/MDB2.php
 *         http://pear.php.net/bugs/bug.php?id=17039&edit=12&patch=skip_delimited_strings_fix_quoting_array&revision=1264618739
 *         Fixed since Roundcube SVN Trunk 3354 (http://trac.roundcube.net/ticket/1486547)
 *
 **/  


Question: Do you have installed Zend?
Title: google_contacts installation
Post by: rugged on December 17, 2010, 11:54:16 AM
Yes Zend is installed. Correctly as far as I can see.

I assume I would see an error in the logs if the plugin was loading but not finding Zend. Is there a debug mode in roundcube where I can see if it is at least trying to load the plugin?
Title: google_contacts installation
Post by: rosali on December 18, 2010, 01:03:17 AM
Put some debug code into google_contacts.php.

F.e.:

write_log('google_contacts', 'I was here');
Title: google_contacts installation
Post by: rugged on December 18, 2010, 05:50:11 PM
OK, making some progress. I added some logging statements to google_contacts/google_contacts.php:

function init()
  {
    write_log('google_contacts', 'I was here');

    $this->add_texts('localization/', false);

    if(file_exists("./plugins/google_contacts/config/config.inc.php"))
      $this->load_config('config/config.inc.php');
    else
      $this->load_config('config/config.inc.php.dist');
    $rcmail = rcmail::get_instance();
    $this->user = $rcmail->config->get('googleuser');
    $this->pass = $rcmail->config->get('googlepass');

    write_log('google_contacts',$this->user);

[...]


This outputs:

[18-Dec-2010 22:42:04 +0000]: I was here
[18-Dec-2010 22:42:04 +0000]: NULL


To the google_contacts log, so the plugin is recognised, but the Google user/password is never set as I never see a google_contacts section in the preferences.

I know nothing about roundcube's API, but it looked like this function was supposed to be generating the settings table, so I added another log statement here:

 function settings_table($args)
  {

    write_log('google_contacts','settings_table');

[...]


but this never appears in the logs...
Title: google_contacts installation
Post by: rosali on December 19, 2010, 01:16:44 AM
Which Roundcube version do you use?

It looks like settings hooks are not called. Hook names were changed somewhere during Roundcube 0.4.x development. I suggest to update to Roundcube v0.5-RC.

Downloading Roundcube webmail (http://roundcube.net/download)
Title: google_contacts installation
Post by: rugged on December 19, 2010, 07:16:04 AM
Thank you so much for your help - I installed 0.5-rc and that has indeed fixed the problem of the settings not appearing, but...

I'm getting another error now. After I put in my Google credentials in the settings I go to the address book and get a PHP error (from the logs):

[19-Dec-2010 12:10:28] PHP Fatal error:  Class 'rcube_result_set' not found in /
var/www/roundcubemail-0.5-rc/program/include/rcube_contacts.php on line 164


If I reload the address book page at that point it loads and I see a Google Contacts group, but it's empty. Renewing the session (logging out and then back in) obviously refreshes something because if I return to the address book again I get the PHP error again.

Any ideas?
Title: google_contacts installation
Post by: rugged on December 19, 2010, 07:19:41 AM
Sorry, ignore that last message - I forgot to move Zend over into the new installation - everything works fine now! Thanks for a great plugin :)