Update fields, remove deprecated 'method' argument, change 'states'

otherwise the fields are not readonly (seems that the 'states' of the
original field is kept.
pull/70/head
Guewen Baconnier 2014-10-08 13:56:17 +02:00
parent 5c137c1a00
commit c3e9a8bae8
1 changed files with 30 additions and 26 deletions

View File

@ -53,46 +53,49 @@ class IrMail(orm.Model):
_columns = { _columns = {
'smtp_host': fields.function( 'smtp_host': fields.function(
_get_smtp_conf, _get_smtp_conf,
method=True,
string='SMTP Server', string='SMTP Server',
type="char", type="char",
multi='outgoing_mail_config', multi='outgoing_mail_config',
size=128), states={'draft': [('readonly', True)]},
help="Hostname or IP of SMTP server"),
'smtp_port': fields.function( 'smtp_port': fields.function(
_get_smtp_conf, _get_smtp_conf,
method=True,
string='SMTP Port', string='SMTP Port',
type="integer", type="integer",
multi='outgoing_mail_config', multi='outgoing_mail_config',
states={'draft': [('readonly', True)]},
help="SMTP Port. Usually 465 for SSL, and 25 or 587 for other cases.", help="SMTP Port. Usually 465 for SSL, and 25 or 587 for other cases.",
size=5), size=5),
'smtp_user': fields.function( 'smtp_user': fields.function(
_get_smtp_conf, _get_smtp_conf,
method=True,
string='Username', string='Username',
type="char", type="char",
multi='outgoing_mail_config', multi='outgoing_mail_config',
states={'draft': [('readonly', True)]},
help="Optional username for SMTP authentication", help="Optional username for SMTP authentication",
size=64), size=64),
'smtp_pass': fields.function( 'smtp_pass': fields.function(
_get_smtp_conf, _get_smtp_conf,
method=True,
string='Password', string='Password',
type="char", type="char",
multi='outgoing_mail_config', multi='outgoing_mail_config',
states={'draft': [('readonly', True)]},
help="Optional password for SMTP authentication", help="Optional password for SMTP authentication",
size=64), size=64),
'smtp_encryption': fields.function( 'smtp_encryption': fields.function(
_get_smtp_conf, _get_smtp_conf,
method=True,
string='smtp_encryption', string='smtp_encryption',
type="char", type="selection",
multi='outgoing_mail_config', multi='outgoing_mail_config',
selection=[('none','None'),
('starttls','TLS (STARTTLS)'),
('ssl','SSL/TLS')],
states={'draft': [('readonly', True)]},
help="Choose the connection encryption scheme:\n" help="Choose the connection encryption scheme:\n"
"- none: SMTP sessions are done in cleartext.\n" "- none: SMTP sessions are done in cleartext.\n"
"- starttls: TLS encryption is requested at start of SMTP session (Recommended)\n" "- starttls: TLS encryption is requested at start of SMTP session (Recommended)\n"
"- ssl: SMTP sessions are encrypted with SSL/TLS through a dedicated port (default: 465)", "- ssl: SMTP sessions are encrypted with SSL/TLS through a dedicated port (default: 465)",)
size=64)} }
class FetchmailServer(orm.Model): class FetchmailServer(orm.Model):
@ -158,64 +161,65 @@ class FetchmailServer(orm.Model):
_columns = { _columns = {
'server': fields.function( 'server': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='Server', string='Server',
type="char", type="char",
multi='income_mail_config', multi='income_mail_config',
size=256, help="Hostname or IP of the mail server"), states={'draft': [('readonly', True)]},
help="Hostname or IP of the mail server"),
'port': fields.function( 'port': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='Port', string='Port',
type="integer", type="integer",
multi='income_mail_config', states={'draft': [('readonly', True)]},
help="Hostname or IP of the mail server"), multi='income_mail_config'),
'type': fields.function( 'type': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='Type', string='Type',
type="char", type="selection",
selection=[('pop', 'POP Server'),
('imap', 'IMAP Server'),
('local', 'Local Server'),
],
multi='income_mail_config', multi='income_mail_config',
fnct_search=_type_search, fnct_search=_type_search,
size=64, states={'draft': [('readonly', True)]},
help="pop, imap, local"), help="pop, imap, local"),
'is_ssl': fields.function( 'is_ssl': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='Is SSL', string='Is SSL',
type="boolean", type="boolean",
multi='income_mail_config', multi='income_mail_config',
states={'draft': [('readonly', True)]},
help='Connections are encrypted with SSL/TLS through' help='Connections are encrypted with SSL/TLS through'
' a dedicated port (default: IMAPS=993, POP3S=995)'), ' a dedicated port (default: IMAPS=993, POP3S=995)'),
'attach': fields.function( 'attach': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='Keep Attachments', string='Keep Attachments',
type="boolean", type="boolean",
multi='income_mail_config', multi='income_mail_config',
states={'draft': [('readonly', True)]},
help="Whether attachments should be downloaded. " help="Whether attachments should be downloaded. "
"If not enabled, incoming emails will be stripped of any " "If not enabled, incoming emails will be stripped of any "
"attachments before being processed"), "attachments before being processed"),
'original': fields.function( 'original': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='Keep Original', string='Keep Original',
type="boolean", type="boolean",
multi='income_mail_config', multi='income_mail_config',
states={'draft': [('readonly', True)]},
help="Whether a full original copy of each email should be kept " help="Whether a full original copy of each email should be kept "
"for reference and attached to each processed message. This " "for reference and attached to each processed message. This "
"will usually double the size of your message database."), "will usually double the size of your message database."),
'user': fields.function( 'user': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='Username', string='Username',
type="char", type="char",
multi='income_mail_config', states={'draft': [('readonly', True)]},
size=64), multi='income_mail_config'),
'password': fields.function( 'password': fields.function(
_get_incom_conf, _get_incom_conf,
method=True,
string='password', string='password',
type="char", type="char",
multi='income_mail_config', states={'draft': [('readonly', True)]},
size=64)} multi='income_mail_config')
}