Warning, /pim/kube/accounts/imap/qml/AccountSettings.qml is written in an unsupported language. File is not indexed.
0001 /*
0002 Copyright (C) 2016 Michael Bohlender, <michael.bohlender@kdemail.net>
0003 Copyright (C) 2017 Christian Mollekopf, <mollekopf@kolabsys.com>
0004
0005 This program is free software; you can redistribute it and/or modify
0006 it under the terms of the GNU General Public License as published by
0007 the Free Software Foundation; either version 2 of the License, or
0008 (at your option) any later version.
0009
0010 This program is distributed in the hope that it will be useful,
0011 but WITHOUT ANY WARRANTY; without even the implied warranty of
0012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
0013 GNU General Public License for more details.
0014
0015 You should have received a copy of the GNU General Public License along
0016 with this program; if not, write to the Free Software Foundation, Inc.,
0017 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
0018 */
0019
0020 import QtQuick 2.4
0021 import QtQuick.Layouts 1.1
0022 import org.kube.framework 1.0 as Kube
0023 import org.kube.accounts.imap 1.0 as ImapAccount
0024
0025 Item {
0026
0027 property string accountId
0028 property string heading: qsTr("Connect your IMAP account")
0029 property string subheadline: qsTr("To let Kube access your account, fill in email address, username, password and give the account a title that will be displayed inside Kube. For information about which SMTP, IMAP address, which authentication and port to be used, please contact your email provider.")
0030 property bool valid: true
0031 implicitHeight: grid.implicitHeight
0032
0033 ImapAccount.ImapSettings {
0034 id: imapSettings
0035 accountIdentifier: accountId
0036 accountType: "imap"
0037 }
0038
0039 function save(){
0040 imapSettings.save()
0041 }
0042
0043 function remove(){
0044 imapSettings.remove()
0045 }
0046 GridLayout {
0047 id: grid
0048 anchors.fill: parent
0049 columns: 2
0050 columnSpacing: Kube.Units.largeSpacing
0051 rowSpacing: Kube.Units.largeSpacing
0052
0053 Kube.Label {
0054 text: qsTr("Name")
0055 Layout.alignment: Qt.AlignRight
0056 }
0057 Kube.RequiredTextField {
0058 Layout.fillWidth: true
0059 placeholderText: qsTr("Your name")
0060 text: imapSettings.userName
0061 onTextChanged: {
0062 imapSettings.userName = text
0063 }
0064 }
0065
0066 Kube.Label {
0067 text: qsTr("Email address")
0068 Layout.alignment: Qt.AlignRight
0069 }
0070 Kube.RequiredTextField {
0071 Layout.fillWidth: true
0072
0073 text: imapSettings.emailAddress
0074 onTextChanged: {
0075 imapSettings.emailAddress = text
0076 imapSettings.accountName = text
0077 }
0078 placeholderText: qsTr("Your email address")
0079 }
0080 Kube.Label {
0081 text: qsTr("Username")
0082 Layout.alignment: Qt.AlignRight
0083 }
0084 Kube.RequiredTextField {
0085 Layout.fillWidth: true
0086
0087 text: imapSettings.imapUsername
0088 onTextChanged: {
0089 imapSettings.imapUsername = text
0090 imapSettings.smtpUsername = text
0091 }
0092 placeholderText: qsTr("Your username for IMAP and SMTP access.")
0093 }
0094
0095 Kube.Label {
0096 text: qsTr("IMAP server address")
0097 Layout.alignment: Qt.AlignRight
0098 }
0099 Kube.RequiredTextField {
0100 id: imapServer
0101
0102 Layout.fillWidth: true
0103
0104 placeholderText: "imaps://mainserver.example.net:993"
0105 text: imapSettings.imapServer
0106 onTextChanged: {
0107 imapSettings.imapServer = text
0108 }
0109 validator: imapSettings.imapServerValidator
0110 }
0111
0112 Kube.Label {
0113 text: qsTr("SMTP address")
0114 Layout.alignment: Qt.AlignRight
0115 }
0116 Kube.RequiredTextField {
0117 id: smtpServer
0118 Layout.fillWidth: true
0119
0120 placeholderText: "smtps://mainserver.example.net:587"
0121 text: imapSettings.smtpServer
0122 onTextChanged: {
0123 imapSettings.smtpServer = text
0124 }
0125 validator: imapSettings.smtpServerValidator
0126 }
0127 }
0128 }