RoundCube Webmail Forum  

Go Back   RoundCube Webmail Forum > Third Party Contributions > Plug-Ins

For more information about the ads and why they're here, please see the FAQ
Reply
  #101  
Old 09-27-2007, 04:05 PM
Registered User
 
Join Date: Sep 2007
Posts: 3
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

I did it already, but somewhere in the code something append this rc. prefix.
Here is my db.inc.php part you are talking about:

Code:
// The 'change_pwd_proc' can be 'change_pwd_for_db' or 'change_pwd_for_cpanel' now,
// If 'change_pwd_for_cpanel' is selected, the value of 'db_imap_xxxxxx' is omitted
$rcmail_config['change_pwd_proc'] = 'change_pwd_for_db';
$rcmail_config['db_imap_dsn'] = 'mysql://user:pass@localhost/rc';
$rcmail_config['db_imap_users_table'] = 'email';
$rcmail_config['db_imap_user_field'] = 'local_part';
$rcmail_config['db_imap_passwd_field'] = 'p_crypt';
$rcmail_config['db_imap_passwd_type'] = 'ENCRYPT';  // '' (Plaintext), 'PASSWORD', 'MD5CRYPT', or 'ENCRYPT'

// end db config file
Hopefully it will helps.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #102  
Old 10-12-2007, 07:01 PM
Registered User
 
Join Date: Oct 2007
Posts: 4
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

Using the RC1 version, I had to edit 'program/steps/settings/passwd.inc' to remove the hard-coded column name "domain_name" from the SQL query. This should either be removed entirely, or placed into the db config. My users' user names are their full email addresses, so the extra "or" clause wasn't needed at all.

After making this small change to the SQL query, the patch works great, and all my users are able to change their own passwords (Postfix / MySQL virtual users).

Thanks!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #103  
Old 11-01-2007, 02:59 AM
ami ami is offline
Registered User
 
Join Date: Nov 2007
Posts: 2
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

dear all,

i have postfix and rouncube installed, but when i test with roundcubemail-0.1-rc1-dep-pw1.tar.gz, there are some problem, in the last my finding was like this:

[Thu Nov 01 09:46:46 2007] [error] [client 202.155.6.225] PHP Notice: DB Error: mismatch Query: UPDATE mailbox SET password = WHERE username = [DB Error: mismatch] in /usr/local/apache2/htdocs/tes/program/include/bugs.inc on line 80, referer:


that error shows after i remove the lines in program/steps/settings/passwd.inc, the goal is to remove the domain_name

before:
$sqlset = "UPDATE " . $CONFIG['db_imap_users_table'] . " SET " . $CONFIG['db_imap_passwd_field'] . " = " . $sqlset .
" WHERE " . $CONFIG['db_imap_user_field'] . "=? OR (" . $CONFIG['db_imap_user_field'] . "=? AND domain_name = '
')";


after:
$sqlset = "UPDATE " . $CONFIG['db_imap_users_table'] . " SET " . $CONFIG['db_imap_passwd_field'] . " = " . $sqlset .
" WHERE " . $CONFIG['db_imap_user_field'] . " =? " ;


also my db.inc was like this (using table "mailbox" in postfixadmin)
$rcmail_config['change_pwd_proc'] = 'change_pwd_for_db';
$rcmail_config['db_imap_dsn'] = 'mysql://postfix:xxxxxxxxx@localhost/postfix';
$rcmail_config['db_imap_users_table'] = 'mailbox';
$rcmail_config['db_imap_user_field'] = 'username';
$rcmail_config['db_imap_passwd_field'] = 'password';
$rcmail_config['db_imap_passwd_type'] = 'MD5CRYPT'; // '(Plaintext)', 'PASSWORD', 'MD5CRYPT', or 'ENCRYPT'


anyone can help me about this error?

rgrds,

ami
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #104  
Old 11-01-2007, 04:38 PM
Registered User
 
Join Date: Oct 2007
Posts: 4
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

Quote:
Originally Posted by ami
that error shows after i remove the lines in program/steps/settings/passwd.inc, the goal is to remove the domain_name
I believe that you must also remove it from the query in program/steps/settings/func.inc.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #105  
Old 11-05-2007, 04:13 AM
ami ami is offline
Registered User
 
Join Date: Nov 2007
Posts: 2
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

hi driggs,

thanks for the info, but i didn't find the domain_name as u comment. in that file i just find the lines like this:

// get user record
$sql_result = $DB->query("SELECT username, mail_host FROM ".get_table_name('users')."
WHERE user_id=?",
$_SESSION['user_id']);

if ($USER_DATA = $DB->fetch_assoc($sql_result))
$OUTPUT->set_pagetitle(sprintf('%s %s@%s', rcube_label('settingsfor'), $USER_DATA['username'], $USER_DATA['mail_host']));

and i modified the query into like this:
// get user record
$sql_result = $DB->query("SELECT username WHERE user_id=?", $_SESSION['user_id']);

if ($USER_DATA = $DB->fetch_assoc($sql_result))
$OUTPUT->set_pagetitle(sprintf('%s %s@%s', rcube_label('settingsfor'), $USER_DATA['username']));

after that, i change the password but still error like this:
[Mon Nov 05 11:15:58 2007] [error] [client 202.155.6.225] PHP Notice: DB Error: syntax error Query: SELECT username WHERE user_id='3' [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE user_id='3'' at line 1] in /usr/local/apache2/htdocs/tes/program/include/bugs.inc on line 80,

[Mon Nov 05 11:15:58 2007] [error] [client 202.155.6.225] PHP Notice: DB Error: mismatch Query: UPDATE mailbox SET password = WHERE username = [DB Error: mismatch] in /usr/local/apache2/htdocs/tes/program/include/bugs.inc on line 80,


fyi, my round cube db :
mysql> show tables;
+----------------+
| Tables_in_cube |
+----------------+
| cache |
| contacts |
| identities |
| messages |
| session |
| users |
+----------------+

mysql> desc users;
+-------------+------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------------+------+-----+---------------------+----------------+
| user_id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| username | varchar(12 | NO | | | |
| mail_host | varchar(12 | NO | | | |
| alias | varchar(12 | NO | | | |
| created | datetime | NO | | 0000-00-00 00:00:00 | |
| last_login | datetime | NO | | 0000-00-00 00:00:00 | |
| language | varchar(5) | NO | | en | |
| preferences | text | NO | | | |
+-------------+------------------+------+-----+---------------------+----------------+


the query seems not match, even i was remove the mail_host (may be i was wrong). is there anything that i can do much?

regards,

ami
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #106  
Old 03-14-2008, 06:49 AM
Registered User
 
Join Date: Aug 2006
Posts: 31
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

Is there a working version of this patch for RC 0.1 stable?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #107  
Old 03-25-2008, 02:56 PM
Registered User
 
Join Date: Mar 2008
Posts: 4
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

How can I install "Change Password" feature on windows OS?

Regards,
Damjan
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #108  
Old 04-02-2008, 11:36 AM
Registered User
 
Join Date: Apr 2008
Posts: 1
Downloads: 0
Uploads: 0
Default Re: Pretty "Change Password" patch/module for v0.1RC1(07-7-3), +cPanel, +md5

I have a simple scenario.

I have an hosting account, C-Panel 11, but users kind of don't like to use web url with all kind of ports and stuff. This suchs: http://<domain>.com:2095/webmail/x3/?login=1
They just need to access http://mail.<domain>.com and get a web interface to see there emails when they cant have access to outlook express.
So I have created a sub-domain http://mail.<domain>.com that points to the roundcube installation. I have created a database to be used by the roundcube. The email works just fine with the following configuration files.

Code:
<?php


#      /public_html/mail/config/db.inc.php

$rcmail_config = array();

// PEAR database DSN for read/write operations
// format is db_provider://user:password@host/databse
// currently supported db_providers: mysql, sqlite

$rcmail_config['db_dsnw'] = 'mysql://rootsyst_mail:[******]@localhost/rootsyst_mail';
// postgres example: 'pgsql://roundcube:pass@localhost/roundcubemail';
// sqlite example: 'sqlite://./sqlite.db?mode=0646';

// PEAR database DSN for read only operations (if empty write database will be used)
// useful for database replication
$rcmail_config['db_dsnr'] = '';

// database backend to use (only db or mdb2 are supported)
$rcmail_config['db_backend'] = 'db';

// maximum length of a query in bytes
$rcmail_config['db_max_length'] = 512000; // 500K

// use persistent db-connections
// beware this will not "always" work as expected
// see: http://www.php.net/manual/en/feature...onnections.php
$rcmail_config['db_persistent'] = FALSE;


// you can define specific table names used to store webmail data
$rcmail_config['db_table_users'] = 'users';

$rcmail_config['db_table_identities'] = 'identities';

$rcmail_config['db_table_contacts'] = 'contacts';

$rcmail_config['db_table_session'] = 'session';

$rcmail_config['db_table_cache'] = 'cache';

$rcmail_config['db_table_messages'] = 'messages';

?>




<?php

#    /public_html/mail/config/main.inc.php

/*
+-----------------------------------------------------------------------+
| Main configuration file |
| |
| This file is part of the RoundCube Webmail client |
| Copyright (C) 2005-2007, RoundCube Dev. - Switzerland |
| Licensed under the GNU GPL |
| |
+-----------------------------------------------------------------------+

*/

$rcmail_config = array();


// system error reporting: 1 = log; 2 = report (not implemented yet), 4 = show, 8 = trace
$rcmail_config['debug_level'] = 4;

// enable caching of messages and mailbox data in the local database.
// this is recommended if the IMAP server does not run on the same machine
$rcmail_config['enable_caching'] = FALSE;

// lifetime of message cache
// possible units: s, m, h, d, w
$rcmail_config['message_cache_lifetime'] = '10d';

// automatically create a new RoundCube user when log-in the first time.
// a new user will be created once the IMAP login succeeds.
// set to false if only registered users can use this service
$rcmail_config['auto_create_user'] = TRUE;

// the mail host chosen to perform the log-in
// leave blank to show a textbox at login, give a list of hosts
// to display a pulldown menu or set one host as string.
// To use SSL connection, enter ssl://hostname:993
$rcmail_config['default_host'] = 'localhost';

// TCP port used for IMAP connections
$rcmail_config['default_port'] = 143;

// Automatically add this domain to user names for login
// Only for IMAP servers that require full e-mail addresses for login
// Specify an array with 'host' => 'domain' values to support multiple hosts
//$rcmail_config['username_domain'] = '';

// This domain will be used to form e-mail addresses of new users
// Specify an array with 'host' => 'domain' values to support multiple hosts
//$rcmail_config['mail_domain'] = '';

// Path to a virtuser table file to resolve user names and e-mail addresses
//$rcmail_config['virtuser_file'] = '';

// Query to resolve user names and e-mail addresses from the database
// %u will be replaced with the current username for login.
// The query should select the user's e-mail address as first col
//$rcmail_config['virtuser_query'] = '';

// use this host for sending mails.
// to use SSL connection, set ssl://smtp.host.com
// if left blank, the PHP mail() function is used

$rcmail_config['smtp_server'] = 'localhost';

// SMTP port (default is 25; 465 for SSL)
$rcmail_config['smtp_port'] = 25;

// SMTP username (if required) if you use %u as the username RoundCube
// will use the current username for login
$rcmail_config['smtp_user'] = '%u';

// SMTP password (if required) if you use %p as the password RoundCube
// will use the current user's password for login
$rcmail_config['smtp_pass'] = '%p';

// SMTP AUTH type (DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN or empty to use
// best server supported one)
$rcmail_config['smtp_auth_type'] = '';

$rcmail_config['smtp_helo_host'] = '';

// Log sent messages
$rcmail_config['smtp_log'] = TRUE;

// these cols are shown in the message list
// available cols are: subject, from, to, cc, replyto, date, size, encoding
$rcmail_config['list_cols'] = array('subject', 'from', 'date', 'size');

// relative path to the skin folder
$rcmail_config['skin_path'] = 'skins/default/';

// includes should be interpreted as PHP files
$rcmail_config['skin_include_php'] = FALSE;

// use this folder to store temp files (must be writebale for apache user)
$rcmail_config['temp_dir'] = '../tmp/';

// use this folder to store log files (must be writebale for apache user)
$rcmail_config['log_dir'] = 'logs/';

// session lifetime in minutes
$rcmail_config['session_lifetime'] = 10;

// check client IP in session athorization
$rcmail_config['ip_check'] = false;

// Use an additional frequently changing cookie to athenticate user sessions.
// There have been problems reported with this feature.
$rcmail_config['double_auth'] = false;

// this key is used to encrypt the users imap password which is stored
// in the session record (and the client cookie if remember password is enabled).
// please provide a string of exactly 24 chars.
$rcmail_config['des_key'] = 'rcmail-!24ByteDE%^rg*Str';

// the default locale setting
$rcmail_config['locale_string'] = 'en';

// use this format for short date display
$rcmail_config['date_short'] = 'D H:i';

// use this format for detailed date/time formatting
$rcmail_config['date_long'] = 'd.m.Y H:i';

// use this format for today's date display
$rcmail_config['date_today'] = 'H:i';

// add this user-agent to message headers when sending
$rcmail_config['useragent'] = 'RoundCube Webmail/0.1-rc2';

// use this name to compose page titles
$rcmail_config['product_name'] = 'RoundCube Webmail';

// only list folders within this path
$rcmail_config['imap_root'] = '';

// store draft message is this mailbox
// leave blank if draft messages should not be stored
$rcmail_config['drafts_mbox'] = 'Drafts';

// store spam messages in this mailbox
$rcmail_config['junk_mbox'] = 'Junk';

// store sent message is this mailbox
// leave blank if sent messages should not be stored
$rcmail_config['sent_mbox'] = 'Sent';

// move messages to this folder when deleting them
// leave blank if they should be deleted directly
$rcmail_config['trash_mbox'] = 'Trash';

// display these folders separately in the mailbox list.
// these folders will automatically be created if they do not exist
$rcmail_config['default_imap_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');

// protect the default folders from renames, deletes, and subscription changes
$rcmail_config['protect_default_folders'] = TRUE;

// Set TRUE if deleted messages should not be displayed
// This will make the application run slower
$rcmail_config['skip_deleted'] = FALSE;

// Set true to Mark deleted messages as read as well as deleted
// False means that a message's read status is not affected by marking it as deleted
$rcmail_config['read_when_deleted'] = TRUE;

// When a Trash folder is not present and a message is deleted, flag
// the message for deletion rather than deleting it immediately. Setting this to
// false causes deleted messages to be permanantly removed if there is no Trash folder
$rcmail_config['flag_for_deletion'] = TRUE;

// Make use of the built-in spell checker. It is based on GoogieSpell.
// Since Google only accepts connections over https your PHP installatation
// requires to be compiled with Open SSL support
$rcmail_config['enable_spellcheck'] = TRUE;

// For a locally installed Nox Spell Server, please specify the URI to call it.
// Get Nox Spell Server from http://orangoo.com/labs/?page_id=72
// Leave empty to use the Google spell checking service, what means
// that the message content will be sent to Google in order to check spelling
$rcmail_config['spellcheck_uri'] = '';

// These languages can be selected for spell checking.
// Configure as a PHP style hash array: array('en'=>'English', 'de'=>'Deutsch');
// Leave empty for default set of Google spell check languages
$rcmail_config['spellcheck_languages'] = NULL;

// path to a text file which will be added to each sent message
// paths are relative to the RoundCube root folder
$rcmail_config['generic_message_footer'] = '';

// this string is used as a delimiter for message headers when sending
// leave empty for auto-detection
$rcmail_config['mail_header_delimiter'] = NULL;

// enable composing html formatted messages (experimental)
$rcmail_config['enable_htmleditor'] = FALSE;

// don't allow these settings to be overriden by the user
$rcmail_config['dont_override'] = array();

// list of configuration option names that need to be available in Javascript.
$rcmail_config['javascript_config'] = array('read_when_deleted', 'flag_for_deletion');

// try to load host-specific configuration
$rcmail_config['include_host_config'] = FALSE;


/***** these settings can be overwritten by user's preferences *****/

// show up to X items in list view
$rcmail_config['pagesize'] = 40;

// use this timezone to display date/time
$rcmail_config['timezone'] = intval(date('O'))/100 - date('I');

// is daylight saving On?
$rcmail_config['dst_active'] = (bool)date('I');

// prefer displaying HTML messages
$rcmail_config['prefer_html'] = TRUE;

// show pretty dates as standard
$rcmail_config['prettydate'] = TRUE;

// default sort col
$rcmail_config['message_sort_col'] = 'date';

// default sort order
$rcmail_config['message_sort_order'] = 'DESC';

// save compose message every 300 seconds (5min)
$rcmail_config['draft_autosave'] = 300;

// don't let users set pagesize to more than this value if set
$rcmail_config['max_pagesize'] = 200;

// end of config file
?>

Considering these default settings and the fact that the users will not be able to access the control panel what solutions do I have to let them change there own password ? Try to imagine the scenario without thinking that a simple user on a server will know stuff like database settings of the server where all users are stored. No decent server administrator will provide you these information as long as he integrated squirrelmail in his C-Panel installation. I mean if I can login using an email address and a password it means I have enough information to also change my own password. I don't really understand why I have to know how email users are stored and where, and shadow files and stuff while in roundcube I only need some simple decent configuration information to make it work.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

For more information about the ads and why they're here, please see the FAQ

All times are GMT. The time now is 06:52 PM.


Powered by vBulletin® Version 3.7.3
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright © 2006-2008 RoundCube Webmail Community