First changes for the upcoming server login.
This commit is contained in:
parent
73990602dd
commit
811bb27a09
6 changed files with 91 additions and 7 deletions
|
@ -14,7 +14,7 @@ The [Sailfish OS SDK](https://sailfishos.org/wiki/Application_SDK) is used to wr
|
|||
## Planned features
|
||||
|
||||
(The ordering represents the priority for the implementation)
|
||||
- Login screen for the nextcloud account (using the [Login Flow](https://docs.nextcloud.com/server/14/developer_manual/client_apis/LoginFlow/index.html))
|
||||
- Login screen for the nextcloud account (using the [Login Flow](https://docs.nextcloud.com/server/14/developer_manual/client_apis/LoginFlow/index.html) if possible)
|
||||
- Create new notes
|
||||
- Delete notes
|
||||
- Edit notes
|
||||
|
|
|
@ -26,7 +26,8 @@ DISTFILES += qml/harbour-nextcloudnotes.qml \
|
|||
rpm/harbour-nextcloudnotes.yaml \
|
||||
translations/*.ts \
|
||||
harbour-nextcloudnotes.desktop \
|
||||
qml/pages/NotePage.qml
|
||||
qml/pages/NotePage.qml \
|
||||
qml/pages/LoginPage.qml
|
||||
|
||||
SAILFISHAPP_ICONS = 86x86 108x108 128x128 172x172
|
||||
|
||||
|
|
|
@ -11,7 +11,7 @@ ApplicationWindow
|
|||
id: appSettings
|
||||
path: "/apps/harbour-nextcloudnotes/settings"
|
||||
property string lastUpdate: qsTr("never")
|
||||
property url server: "https://127.0.0.1" + "/index.php/apps/notes/api/v0.2/notes"
|
||||
property url server: "https://127.0.0.1"
|
||||
property string username: "test"
|
||||
property string password // TODO provide password before testing. Just use revocable passwords for testing!
|
||||
}
|
||||
|
|
48
qml/pages/LoginPage.qml
Normal file
48
qml/pages/LoginPage.qml
Normal file
|
@ -0,0 +1,48 @@
|
|||
import QtQuick 2.0
|
||||
import Sailfish.Silica 1.0
|
||||
|
||||
Page {
|
||||
id: page
|
||||
|
||||
allowedOrientations: Orientation.Portrait
|
||||
|
||||
SilicaFlickable {
|
||||
id: webView
|
||||
anchors.fill: parent
|
||||
|
||||
PullDownMenu {
|
||||
MenuItem {
|
||||
text: qsTr("Reload")
|
||||
onClicked: webView.reload()
|
||||
}
|
||||
}
|
||||
|
||||
PageHeader {
|
||||
title: qsTr("Login")
|
||||
}
|
||||
|
||||
Column {
|
||||
TextField {
|
||||
focus: true
|
||||
width: parent.width
|
||||
placeholderText: qsTr("https://cloud.nextcloud.com")
|
||||
label: qsTr("Nextcloud server")
|
||||
inputMethodHints: Qt.ImhUrlCharactersOnly
|
||||
}
|
||||
|
||||
TextField {
|
||||
width: parent.width
|
||||
placeholderText: qsTr("Username")
|
||||
label: qsTr("Nextcloud user")
|
||||
inputMethodHints: Qt.ImhUrlCharactersOnly
|
||||
}
|
||||
|
||||
TextField {
|
||||
width: parent.width
|
||||
placeholderText: qsTr("Password")
|
||||
label: qsTr("Nextcloud App-Password")
|
||||
inputMethodHints: Qt.ImhUrlCharactersOnly
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -14,16 +14,16 @@ Item {
|
|||
function callApi(method, data) {
|
||||
busy = true
|
||||
|
||||
var endpoint = ""
|
||||
var endpoint = appSettings.server + "/index.php/apps/notes/api/v0.2/notes"
|
||||
if (data && (method === "GET" || method === "PUT" || method === "DELETE"))
|
||||
if (data.id)
|
||||
endpoint = "/" + data.id
|
||||
endpoint = endpoint + "/" + data.id
|
||||
|
||||
var apiReq = new XMLHttpRequest
|
||||
apiReq.open(method, appSettings.server + endpoint, true)
|
||||
apiReq.open(method, endpoint, true)
|
||||
apiReq.setRequestHeader('User-Agent', 'SailfishOS/harbour-nextcloudnotes')
|
||||
apiReq.setRequestHeader('OCS-APIRequest', 'true')
|
||||
apiReq.setRequestHeader("Content-Type", "application/json");
|
||||
apiReq.setRequestHeader("Content-Type", "application/json")
|
||||
apiReq.setRequestHeader("Authorization", "Basic " + Qt.btoa(appSettings.username + ":" + appSettings.password))
|
||||
apiReq.onreadystatechange = function() {
|
||||
if (apiReq.readyState === XMLHttpRequest.DONE) {
|
||||
|
|
|
@ -43,6 +43,41 @@
|
|||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>LoginFlow</name>
|
||||
<message>
|
||||
<source>Reload</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Login</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>https://cloud.nextcloud.com</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Nextcloud server</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Username</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Nextcloud user</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Nextcloud App-Password</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>harbour-nextcloudnotes</name>
|
||||
<message>
|
||||
|
|
Loading…
Reference in a new issue