- further implementation of the event parser and view

- clean up of qml and c++ code
This commit is contained in:
Dorian Zedler 2018-12-24 21:37:32 +01:00
parent 4e1edbe11a
commit 7f127b0feb
17 changed files with 1734 additions and 898 deletions

View file

@ -42,9 +42,7 @@ public:
Q_INVOKABLE int checkConn(); Q_INVOKABLE int checkConn();
Q_INVOKABLE float getProgress(); Q_INVOKABLE float getProgress();
Q_INVOKABLE int getFoodPlan(); Q_INVOKABLE int getFoodPlan();
Q_INVOKABLE QVariantMap getEventData(int index);
Q_INVOKABLE int getEvents(QString day); Q_INVOKABLE int getEvents(QString day);
Q_INVOKABLE int getEventCount();
ReturnData_t senddata(QUrl serviceUrl, QUrlQuery postData); ReturnData_t senddata(QUrl serviceUrl, QUrlQuery postData);
QList<QList<QString>> m_weekplan; QList<QList<QString>> m_weekplan;

View file

@ -1,156 +0,0 @@
import QtQuick 2.9
import QtQuick.Controls 2.4
import Backend 1.0
Item {
id: control
/*
ScrollView {
id:scroll
anchors.fill: parent
ListView {
id: listView
//width: 514
model: _cppServerConn.getEventCount()
spacing: 0
property var today: new Date
anchors {
right: parent.right
left: parent.left
top: parent.top
bottom: parent.bottom
leftMargin: 5
rightMargin: 5
topMargin: 3
}
delegate: Button {
width: listView.width
id: delegate
height: visible ? cookteam.height + date.height + text.height + cust_spacing*9 + 5:0
visible: listView.isDayVisible(index)
property int cust_spacing: 5
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: parent.top
anchors.topMargin: 10
font.bold: true
font.pixelSize: date.font.pixelSize * 1.5
id: cookteam
text: _cppServerConn.getEventData(index).grade
width: parent.width - 10
wrapMode: Label.Wrap
height: text!==""? undefined:0
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: cookteam.bottom
id: date
text: _cppServerConn.getEventData(index).hour + " | "
+ _cppServerConn.getEventData(index).replace + " | "
+ _cppServerConn.getEventData(index).subject + " | "
+ _cppServerConn.getEventData(index).room + " | "
width: parent.width - 10
wrapMode: Label.Wrap
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: date.bottom
anchors.topMargin: cust_spacing
font.pixelSize: date.font.pixelSize * 2
font.bold: true
id: text
text: _cppServerConn.getEventData(index).to + " " + _cppServerConn.getEventData(index).text
}
}
function getDateString(index){
var date = _cppServerConn.getEventData(index).date
console.log(date.getTime())
console.log(today.getTime())
if(date.getDate() === today.getDate()){
return("Heute")
}
else if(date.getTime() < (today.getTime() + (24 * 60 * 60 * 1000) )){
return("Morgen")
}
else {
return(Qt.formatDateTime(_cppServerConn.getEventData(index).date, "dddd, d.M.yy"))
}
}
function isDayVisible(index){
return(true)
}
}
}
*/
ListView {
id: eventList
anchors.fill: parent
anchors.margins: 10
model: EventModel {
id: foodPlanModel
}
delegate: Button {
width: listView.width
id: delegate
height: visible ? cookteam.height + date.height + text.height + cust_spacing*9 + 5:0
visible: listView.isDayVisible(index)
property int cust_spacing: 5
Label {
id: cookteam
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: parent.top
anchors.topMargin: 10
font.bold: true
font.pixelSize: date.font.pixelSize * 1.5
text: _cppServerConn.getEventData(index).grade
width: parent.width - 10
wrapMode: Label.Wrap
height: text!==""? undefined:0
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: cookteam.bottom
id: date
text: _cppServerConn.getEventData(index).hour + " | "
+ _cppServerConn.getEventData(index).replace + " | "
+ _cppServerConn.getEventData(index).subject + " | "
+ _cppServerConn.getEventData(index).room + " | "
width: parent.width - 10
wrapMode: Label.Wrap
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: date.bottom
anchors.topMargin: cust_spacing
font.pixelSize: date.font.pixelSize * 2
font.bold: true
id: text
text: _cppServerConn.getEventData(index).to + " " + _cppServerConn.getEventData(index).text
}
}
}
}

View file

@ -0,0 +1,76 @@
import Backend 1.0
import QtQuick 2.9
import QtQuick.Controls 2.4
ListView {
id: eventList
anchors.fill: parent
anchors.margins: 10
model: EventModel {
id: foodPlanModel
}
delegate: Button {
id: delegate
width: eventList.width
height: contentCol.height + 10
Column {
id: contentCol
anchors {
top: parent.top
left: parent.left
right: parent.right
margins: 10
}
height: childrenRect.height + 10
spacing: 1
Label {
id: gradeLa
// label for the grade
font.bold: true
font.pixelSize: hourReplaceSubjectRoomLa.font.pixelSize * 1.5
width: parent.width - 10
wrapMode: Label.Wrap
text: grade
}
Label {
id: hourReplaceSubjectRoomLa
// label for the hour, replacement, subject and room
width: parent.width - 10
wrapMode: Label.Wrap
text: hour + " | "
+ replace + " | "
+ subject + " | "
+ room + " | "
}
Label {
id: toTextLa
// label for the new room (to) and the additional text (text)
width: parent.width - 10
wrapMode: Label.Wrap
font.pixelSize: gradeLa.font.pixelSize
font.bold: true
text: to !== "" && model.text !== "" ? to + " | " + model.text:model.to + model.text
}
}
}
}

View file

@ -1,157 +0,0 @@
import QtQuick 2.9
import QtQuick.Controls 2.4
import QtQuick.Layouts 1.3
import Backend 1.0
Item {
id: control
ListView {
id: foodList
anchors.fill: parent
anchors.margins: 10
model: FoodPlanModel {
id: foodPlanModel
}
delegate: Button {
width: foodList.width
id: delegate
height: visible ? cookteamLa.height + dateLa.height + mainDishLa.height + mainDishVegLa.height + garnishLa.height + dessertLa.height + spacer.height + cust_spacing*9 + 5:0
visible: true//listView.isDayVisible(index)
property int cust_spacing: 5
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: parent.top
anchors.topMargin: 10
font.bold: true
id: cookteamLa
text: cookteam
width: parent.width - 10
wrapMode: Label.Wrap
height: text!=""? undefined:0
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: cookteamLa.bottom
font.bold: true
id: dateLa
text: date
width: parent.width - 10
wrapMode: Label.Wrap
}
Rectangle {
anchors.top: dateLa.bottom
anchors.topMargin: cust_spacing
anchors.left: parent.left
anchors.leftMargin: 10
anchors.right: parent.right
anchors.rightMargin: 10
height: 2
color: "grey"
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: dateLa.bottom
anchors.topMargin: cust_spacing * 2
width: parent.width - 10
wrapMode: Label.Wrap
id: mainDishLa
text: mainDish
height: text!=""? undefined:0
}
Rectangle {
anchors.top: mainDishLa.bottom
anchors.topMargin: cust_spacing
anchors.left: parent.left
anchors.leftMargin: 10
width: parent.width / 10
height: mainDishVegLa.text!=""? 1:0
color: "grey"
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: mainDishLa.bottom
anchors.topMargin: cust_spacing * 2
id: mainDishVegLa
text: mainDishVeg
width: parent.width - 10
wrapMode: Label.Wrap
height: text!=""? undefined:0
}
Rectangle {
anchors.top: mainDishVegLa.bottom
anchors.topMargin: cust_spacing
anchors.left: parent.left
anchors.leftMargin: 10
width: parent.width / 10
height: garnishLa.text!=""? 1:0
color: "grey"
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: mainDishVegLa.bottom
anchors.topMargin: cust_spacing * 2
id: garnishLa
text: garnish
width: parent.width - 10
wrapMode: Label.Wrap
height: text!=""? undefined:0
}
Rectangle {
anchors.top: garnishLa.bottom
anchors.topMargin: cust_spacing
anchors.left: parent.left
anchors.leftMargin: 10
width: parent.width / 10
height: dessertLa.text!=""? 1:0
color: "grey"
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: garnishLa.bottom
anchors.topMargin: cust_spacing * 2
id: dessertLa
text: dessert
width: parent.width - 10
wrapMode: Label.Wrap
height: text!=""? undefined:0
}
Label {
anchors.left: parent.left
anchors.leftMargin: 10
anchors.top: dessertLa.bottom
anchors.topMargin: cust_spacing
id: spacer
text: ""
}
}
}
}

View file

@ -0,0 +1,134 @@
import Backend 1.0
import QtQuick 2.9
import QtQuick.Controls 2.4
ListView {
id: foodList
anchors.fill: parent
anchors.margins: 10
model: FoodPlanModel {
id: foodPlanModel
}
delegate: Button {
id: delegate
width: foodList.width
height: contentCol.height + 10
Column {
id: contentCol
anchors {
top: parent.top
left: parent.left
right: parent.right
margins: 10
}
height: childrenRect.height + 10
spacing: 2
Label {
id: cookteamLa
// label for the cookteam
width: parent.width
wrapMode: Label.Wrap
font.bold: true
text: cookteam
}
Label {
id: dateLa
// label for the date
width: parent.width
wrapMode: Label.Wrap
font.bold: true
text: date
}
Rectangle {
width: parent.width
height: 2
color: "grey"
}
Label {
id: mainDishLa
// label for the main dish
width: parent.width
wrapMode: Label.Wrap
text: mainDish
}
Rectangle {
width: parent.width / 10
height: mainDishVegLa.text!=""? 1:0
color: "grey"
}
Label {
id: mainDishVegLa
// label for the vegetarian main dish
width: parent.width
height: text!=""? undefined:0
wrapMode: Label.Wrap
text: mainDishVeg
}
Rectangle {
width: parent.width / 10
height: garnishLa.text!=""? 1:0
color: "grey"
}
Label {
id: garnishLa
// label for the garnish
width: parent.width
height: text!=""? undefined:0
wrapMode: Label.Wrap
text: garnish
}
Rectangle {
width: parent.width / 10
height: dessertLa.text!=""? 1:0
color: "grey"
}
Label {
id: dessertLa
// label for the dessert
width: parent.width
height: text!=""? undefined:0
wrapMode: Label.Wrap
text: dessert
}
}
}
}

View file

@ -59,7 +59,7 @@ Page {
repeat: false repeat: false
onTriggered: { onTriggered: {
status = _cppServerConn.getEvents(day) status = _cppServerConn.getEvents(day)
pageLoader.source = "../Components/EventDisplay.qml" pageLoader.source = "../Components/EventView.qml"
} }
} }

View file

@ -60,7 +60,7 @@ Page {
repeat: false repeat: false
onTriggered: { onTriggered: {
root.status = _cppServerConn.getFoodPlan() root.status = _cppServerConn.getFoodPlan()
pageLoader.source = "../Components/FoodPlanDisplay.qml" pageLoader.source = "../Components/FoodPlanView.qml"
} }
} }

View file

@ -9,9 +9,9 @@
<file>Pages/MainPage.qml</file> <file>Pages/MainPage.qml</file>
<file>Components/FancyButton.qml</file> <file>Components/FancyButton.qml</file>
<file>Forms/HomeForm.qml</file> <file>Forms/HomeForm.qml</file>
<file>Components/FoodPlanDisplay.qml</file> <file>Components/FoodPlanView.qml</file>
<file>Forms/LoadingForm.qml</file> <file>Forms/LoadingForm.qml</file>
<file>Components/EventDisplay.qml</file> <file>Components/EventView.qml</file>
<file>Components/InfoArea.qml</file> <file>Components/InfoArea.qml</file>
</qresource> </qresource>
</RCC> </RCC>

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,74 @@
5b 1 Hei D --- Entfall
5b 2 Fu D 114 Hei / Aufgaben, Arbeitsheft!
5b 3 Oe M 114 Ei / Aufgaben
5b 4 Rm M 114 Ei / Aufgaben
6bc 5 Sf EvR 321 Bü / Aufgaben
6bc 5 Dk KR 121 We / Aufgaben
6bc 6 Bü EvR --- Entfall
6bc 6 We KR --- Entfall
6d 6 Ku Ek --- Entfall
7b 2 Ga G 414 KA Fkr
7b 8 Gg BK --- Mi-12.12. / 1
7b 9 Gg BK --- Mi-12.12. / 2
7c 8-9 Gw G --- Entfall
7d 1 Ku D --- Entfall
7d 2 Oz D 416 Ku / Aufgaben
8a 1-2 Ei Ch --- Entfall KEINE KA
9ac 8-9 Lk SpJ --- Entfall
9c 1-2 Jw Gk 322 Raum!
9c 3 Hf D 220 Hei / Aufgaben
9c 4 Bkn D 220 Hei / Aufgaben
9d 1 Rt Gk --- Do-13.12. / 3
9d 2 Rt Gk --- Do-13.12. / 4
9d 3 Rt Gk 218
9d 4 Rt Gk 218
9d 5 Ni BK 126
9d 6 Ni BK 126
9d 8 Ni BK --- Do-13.12. / 5
9d 9 Ni BK --- Do-13.12. / 6
10b 10 - 11 Fe Ph --- Entfall
11 3-4 Ft g4 --- Entfall
11 5 Ei M1 --- Entfall
11 7 Gt sem1 324 geteilte Gruppen Schwimmen /
11 8-9 Ro sem1 ???
11 10 - 11 Lk sp3 --- Entfall
12 1-2 Ni bk1 412 Raum!
12 5 Ku D2 --- Entfall
1112 8-9 Fe vma --- Entfall
5abc 1 We KR --- Entfall
5a 1 Bü EvR --- Entfall
5abc 2 Jw KR 123 We / Aufgaben
5a 2 Ng EvR 321 Bü / Aufgaben
5d 3 Lo D 122 anstatt 17.12., 1. Std.
5d 4 Lo D 122 anstatt 19.12., 1 Std.
6a 6 He E --- Entfall
6acd 7 Ft MF --- Entfall
6c 1 Ku D --- Entfall
6c 2 Sl D 121 Ku / Aufgaben
7a 3 Di D 323 Raum
7a 4 Hhn M 323
7a 5 Hhn M 323
7a 6 Hhn M 323 findet statt!
7b 6 Rt D --- Entfall
8a 1 Ft M --- Entfall
8a 2 Li E 323 statt 18.12.
9c 5-6 Hei D --- Entfall
9d 1-2 Rm NWT 412 Raum
9d 5-6 Ft M --- Entfall
10a 3-4 Smr E 413 Hörverstehensklausur
10ad 3 Ro EvR SH Sport!
10ad 3-4 We KR --- Entfall
10ad 4 Lk EvR SH Sport!
10b 3-4 Ki E 414 Hörverstehensklausur
10b 3-4 He Gk --- Entfall für Lehrer
10bc 5-6 We KR --- Entfall
10c 3-4 Ran M --- Entfall alle bei Oe
10c 3-4 Oe E 422 Hörverstehensklausur
10d 3-4 Wd E 416 Hörverstehensklausur
11 3-4 At D3 121 Raum
11 3-4 Sl D2 415 Raum
12 1-2 Lo Sp1 222 Theorie
12 3-4 Mf E2 218 Raum
12 3-4 Sf M3 322 Raum
12 3-4 Ft M2 --- Entfall
12 5-6 Ku ek1 --- Entfall

View file

@ -0,0 +1,455 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pdf2xml SYSTEM "pdf2xml.dtd">
<pdf2xml producer="poppler" version="0.68.0">
<page number="1" position="absolute" top="0" left="0" height="1262" width="893">
<fontspec id="0" size="17" family="Times" color="#000000"/>
<fontspec id="1" size="16" family="Times" color="#000000"/>
<fontspec id="2" size="25" family="Times" color="#000000"/>
<fontspec id="3" size="14" family="Times" color="#000000"/>
<fontspec id="4" size="16" family="Times" color="#000000"/>
<text top="10" left="3" width="297" height="19" font="0"><b>D-70563 FANNY-LEICHT-GYMN.</b></text>
<text top="32" left="3" width="275" height="17" font="1">STUTTGART, F.-LEICHT-STR. 13</text>
<text top="9" left="332" width="248" height="17" font="1">Schuljahr 2018/19 - 1. Halbjahr</text>
<text top="32" left="332" width="236" height="17" font="1">gültig ab 10. September 2018</text>
<text top="10" left="708" width="99" height="19" font="0"><b>Untis 2017</b></text>
<text top="32" left="671" width="135" height="17" font="1">13.12.2018 9:04</text>
<text top="64" left="3" width="473" height="25" font="2"><b>Klasse 13.12. / Donnerstag Woche-A</b></text>
<text top="111" left="3" width="203" height="15" font="3">Ordnungsdienst: Klasse 10a</text>
<text top="172" left="3" width="21" height="17" font="1">Kl.</text>
<text top="172" left="55" width="32" height="17" font="1">Std.</text>
<text top="172" left="123" width="191" height="17" font="1">Vertr. Fach Rau nach</text>
<text top="172" left="391" width="134" height="17" font="1">Vertretungs-Text</text>
<text top="194" left="3" width="20" height="17" font="1">5b</text>
<text top="194" left="55" width="10" height="17" font="1">1</text>
<text top="194" left="123" width="27" height="17" font="4"><i>Hei</i></text>
<text top="194" left="178" width="13" height="17" font="4"><i>D</i></text>
<text top="194" left="233" width="18" height="17" font="1">---</text>
<text top="194" left="275" width="50" height="17" font="1">Entfall</text>
<text top="217" left="3" width="20" height="17" font="1">5b</text>
<text top="217" left="55" width="10" height="17" font="1">2</text>
<text top="217" left="123" width="21" height="17" font="1">Fu</text>
<text top="217" left="178" width="13" height="17" font="1">D</text>
<text top="217" left="233" width="30" height="17" font="1">114</text>
<text top="217" left="391" width="220" height="17" font="1">Hei / Aufgaben, Arbeitsheft!</text>
<text top="240" left="3" width="20" height="17" font="1">5b</text>
<text top="240" left="55" width="10" height="17" font="1">3</text>
<text top="240" left="123" width="24" height="17" font="1">Oe</text>
<text top="240" left="178" width="15" height="17" font="1">M</text>
<text top="240" left="233" width="30" height="17" font="1">114</text>
<text top="240" left="391" width="108" height="17" font="1">Ei / Aufgaben</text>
<text top="263" left="3" width="20" height="17" font="1">5b</text>
<text top="263" left="55" width="10" height="17" font="1">4</text>
<text top="263" left="123" width="28" height="17" font="1">Rm</text>
<text top="263" left="178" width="15" height="17" font="1">M</text>
<text top="263" left="233" width="30" height="17" font="1">114</text>
<text top="263" left="391" width="108" height="17" font="1">Ei / Aufgaben</text>
<text top="285" left="3" width="29" height="17" font="1">6bc</text>
<text top="285" left="55" width="10" height="17" font="1">5</text>
<text top="285" left="123" width="17" height="17" font="1">Sf</text>
<text top="285" left="178" width="34" height="17" font="1">EvR</text>
<text top="285" left="233" width="30" height="17" font="1">321</text>
<text top="285" left="391" width="114" height="17" font="1">Bü / Aufgaben</text>
<text top="306" left="3" width="29" height="17" font="1">6bc</text>
<text top="306" left="55" width="10" height="17" font="1">5</text>
<text top="306" left="123" width="22" height="17" font="1">Dk</text>
<text top="306" left="178" width="25" height="17" font="1">KR</text>
<text top="306" left="233" width="30" height="17" font="1">121</text>
<text top="306" left="391" width="119" height="17" font="1">We / Aufgaben</text>
<text top="328" left="3" width="29" height="17" font="1">6bc</text>
<text top="328" left="55" width="10" height="17" font="1">6</text>
<text top="328" left="123" width="22" height="17" font="4"><i></i></text>
<text top="328" left="178" width="34" height="17" font="4"><i>EvR</i></text>
<text top="328" left="233" width="18" height="17" font="1">---</text>
<text top="328" left="275" width="50" height="17" font="1">Entfall</text>
<text top="349" left="3" width="29" height="17" font="1">6bc</text>
<text top="349" left="55" width="10" height="17" font="1">6</text>
<text top="349" left="123" width="27" height="17" font="4"><i>We</i></text>
<text top="349" left="178" width="25" height="17" font="4"><i>KR</i></text>
<text top="349" left="233" width="18" height="17" font="1">---</text>
<text top="349" left="275" width="50" height="17" font="1">Entfall</text>
<text top="372" left="3" width="20" height="17" font="1">6d</text>
<text top="372" left="55" width="10" height="17" font="1">6</text>
<text top="371" left="123" width="22" height="17" font="4"><i>Ku</i></text>
<text top="371" left="178" width="21" height="17" font="4"><i>Ek</i></text>
<text top="372" left="233" width="18" height="17" font="1">---</text>
<text top="372" left="275" width="50" height="17" font="1">Entfall</text>
<text top="394" left="3" width="20" height="17" font="1">7b</text>
<text top="394" left="55" width="10" height="17" font="1">2</text>
<text top="394" left="123" width="24" height="17" font="1">Ga</text>
<text top="394" left="178" width="14" height="17" font="1">G</text>
<text top="394" left="233" width="30" height="17" font="1">414</text>
<text top="394" left="391" width="55" height="17" font="1">KA Fkr</text>
<text top="417" left="3" width="20" height="17" font="1">7b</text>
<text top="417" left="55" width="10" height="17" font="1">8</text>
<text top="417" left="123" width="24" height="17" font="4"><i>Gg</i></text>
<text top="417" left="178" width="24" height="17" font="4"><i>BK</i></text>
<text top="417" left="233" width="18" height="17" font="1">---</text>
<text top="417" left="275" width="100" height="17" font="1">Mi-12.12. / 1</text>
<text top="440" left="3" width="20" height="17" font="1">7b</text>
<text top="440" left="55" width="10" height="17" font="1">9</text>
<text top="439" left="123" width="24" height="17" font="4"><i>Gg</i></text>
<text top="439" left="178" width="24" height="17" font="4"><i>BK</i></text>
<text top="440" left="233" width="18" height="17" font="1">---</text>
<text top="440" left="275" width="100" height="17" font="1">Mi-12.12. / 2</text>
<text top="462" left="3" width="19" height="17" font="1">7c</text>
<text top="462" left="55" width="36" height="17" font="1">8 - 9</text>
<text top="462" left="123" width="27" height="17" font="4"><i>Gw</i></text>
<text top="462" left="178" width="14" height="17" font="4"><i>G</i></text>
<text top="462" left="233" width="18" height="17" font="1">---</text>
<text top="462" left="275" width="50" height="17" font="1">Entfall</text>
<text top="485" left="3" width="20" height="17" font="1">7d</text>
<text top="485" left="55" width="10" height="17" font="1">1</text>
<text top="485" left="123" width="22" height="17" font="4"><i>Ku</i></text>
<text top="485" left="178" width="13" height="17" font="4"><i>D</i></text>
<text top="485" left="233" width="18" height="17" font="1">---</text>
<text top="485" left="275" width="50" height="17" font="1">Entfall</text>
<text top="508" left="3" width="20" height="17" font="1">7d</text>
<text top="508" left="55" width="10" height="17" font="1">2</text>
<text top="508" left="123" width="23" height="17" font="1">Oz</text>
<text top="508" left="178" width="13" height="17" font="1">D</text>
<text top="508" left="233" width="30" height="17" font="1">416</text>
<text top="508" left="391" width="114" height="17" font="1">Ku / Aufgaben</text>
<text top="530" left="3" width="20" height="17" font="1">8a</text>
<text top="530" left="55" width="36" height="17" font="1">1 - 2</text>
<text top="530" left="123" width="16" height="17" font="4"><i>Ei</i></text>
<text top="530" left="178" width="23" height="17" font="4"><i>Ch</i></text>
<text top="530" left="233" width="18" height="17" font="1">---</text>
<text top="530" left="275" width="50" height="17" font="1">Entfall</text>
<text top="530" left="391" width="83" height="17" font="1">KEINE KA</text>
<text top="553" left="3" width="29" height="17" font="1">9ac</text>
<text top="553" left="55" width="36" height="17" font="1">8 - 9</text>
<text top="553" left="123" width="19" height="17" font="4"><i>Lk</i></text>
<text top="553" left="178" width="31" height="17" font="4"><i>SpJ</i></text>
<text top="553" left="233" width="18" height="17" font="1">---</text>
<text top="553" left="275" width="50" height="17" font="1">Entfall</text>
<text top="576" left="3" width="19" height="17" font="1">9c</text>
<text top="576" left="55" width="36" height="17" font="1">1 - 2</text>
<text top="576" left="123" width="22" height="17" font="1">Jw</text>
<text top="576" left="178" width="23" height="17" font="1">Gk</text>
<text top="576" left="233" width="30" height="17" font="1">322</text>
<text top="576" left="391" width="53" height="17" font="1">Raum!</text>
<text top="599" left="3" width="19" height="17" font="1">9c</text>
<text top="599" left="55" width="10" height="17" font="1">3</text>
<text top="599" left="123" width="18" height="17" font="1">Hf</text>
<text top="599" left="178" width="13" height="17" font="1">D</text>
<text top="599" left="233" width="30" height="17" font="1">220</text>
<text top="599" left="391" width="119" height="17" font="1">Hei / Aufgaben</text>
<text top="621" left="3" width="19" height="17" font="1">9c</text>
<text top="621" left="55" width="10" height="17" font="1">4</text>
<text top="621" left="123" width="31" height="17" font="1">Bkn</text>
<text top="621" left="178" width="13" height="17" font="1">D</text>
<text top="621" left="233" width="30" height="17" font="1">220</text>
<text top="621" left="391" width="119" height="17" font="1">Hei / Aufgaben</text>
<text top="644" left="3" width="20" height="17" font="1">9d</text>
<text top="644" left="55" width="10" height="17" font="1">1</text>
<text top="644" left="123" width="18" height="17" font="4"><i>Rt</i></text>
<text top="644" left="178" width="23" height="17" font="4"><i>Gk</i></text>
<text top="644" left="233" width="18" height="17" font="1">---</text>
<text top="644" left="275" width="104" height="17" font="1">Do-13.12. / 3</text>
<text top="667" left="3" width="20" height="17" font="1">9d</text>
<text top="667" left="55" width="10" height="17" font="1">2</text>
<text top="666" left="123" width="18" height="17" font="4"><i>Rt</i></text>
<text top="666" left="178" width="23" height="17" font="4"><i>Gk</i></text>
<text top="667" left="233" width="18" height="17" font="1">---</text>
<text top="667" left="275" width="104" height="17" font="1">Do-13.12. / 4</text>
<text top="689" left="3" width="20" height="17" font="1">9d</text>
<text top="689" left="55" width="10" height="17" font="1">3</text>
<text top="689" left="123" width="18" height="17" font="1">Rt</text>
<text top="689" left="178" width="23" height="17" font="1">Gk</text>
<text top="689" left="233" width="30" height="17" font="1">218</text>
<text top="712" left="3" width="20" height="17" font="1">9d</text>
<text top="712" left="55" width="10" height="17" font="1">4</text>
<text top="712" left="123" width="18" height="17" font="1">Rt</text>
<text top="712" left="178" width="23" height="17" font="1">Gk</text>
<text top="712" left="233" width="30" height="17" font="1">218</text>
<text top="735" left="3" width="20" height="17" font="1">9d</text>
<text top="735" left="55" width="10" height="17" font="1">5</text>
<text top="735" left="123" width="17" height="17" font="1">Ni</text>
<text top="735" left="178" width="24" height="17" font="1">BK</text>
<text top="735" left="233" width="30" height="17" font="1">126</text>
<text top="757" left="3" width="20" height="17" font="1">9d</text>
<text top="757" left="55" width="10" height="17" font="1">6</text>
<text top="757" left="123" width="17" height="17" font="1">Ni</text>
<text top="757" left="178" width="24" height="17" font="1">BK</text>
<text top="757" left="233" width="30" height="17" font="1">126</text>
<text top="780" left="3" width="20" height="17" font="1">9d</text>
<text top="780" left="55" width="10" height="17" font="1">8</text>
<text top="780" left="123" width="17" height="17" font="4"><i>Ni</i></text>
<text top="780" left="178" width="24" height="17" font="4"><i>BK</i></text>
<text top="780" left="233" width="18" height="17" font="1">---</text>
<text top="780" left="275" width="104" height="17" font="1">Do-13.12. / 5</text>
<text top="803" left="3" width="20" height="17" font="1">9d</text>
<text top="803" left="55" width="10" height="17" font="1">9</text>
<text top="802" left="123" width="17" height="17" font="4"><i>Ni</i></text>
<text top="802" left="178" width="24" height="17" font="4"><i>BK</i></text>
<text top="803" left="233" width="18" height="17" font="1">---</text>
<text top="803" left="275" width="104" height="17" font="1">Do-13.12. / 6</text>
<text top="825" left="3" width="30" height="17" font="1">10b</text>
<text top="825" left="55" width="56" height="17" font="1">10 - 11</text>
<text top="825" left="123" width="21" height="17" font="4"><i>Fe</i></text>
<text top="825" left="178" width="22" height="17" font="4"><i>Ph</i></text>
<text top="825" left="233" width="18" height="17" font="1">---</text>
<text top="825" left="275" width="50" height="17" font="1">Entfall</text>
<text top="848" left="3" width="20" height="17" font="1">11</text>
<text top="848" left="55" width="36" height="17" font="1">3 - 4</text>
<text top="848" left="123" width="16" height="17" font="4"><i>Ft</i></text>
<text top="848" left="178" width="20" height="17" font="4"><i>g4</i></text>
<text top="848" left="233" width="18" height="17" font="1">---</text>
<text top="848" left="275" width="50" height="17" font="1">Entfall</text>
<text top="871" left="3" width="20" height="17" font="1">11</text>
<text top="871" left="55" width="10" height="17" font="1">5</text>
<text top="870" left="123" width="16" height="17" font="4"><i>Ei</i></text>
<text top="870" left="178" width="25" height="17" font="4"><i>M1</i></text>
<text top="871" left="233" width="18" height="17" font="1">---</text>
<text top="871" left="275" width="50" height="17" font="1">Entfall</text>
<text top="893" left="3" width="20" height="17" font="1">11</text>
<text top="893" left="55" width="10" height="17" font="1">7</text>
<text top="893" left="123" width="19" height="17" font="1">Gt</text>
<text top="893" left="178" width="85" height="17" font="1">sem1 324</text>
<text top="893" left="391" width="250" height="17" font="1">geteilte Gruppen Schwimmen / </text>
<text top="916" left="3" width="20" height="17" font="1">11</text>
<text top="916" left="55" width="36" height="17" font="1">8 - 9</text>
<text top="916" left="123" width="23" height="17" font="1">Ro</text>
<text top="916" left="178" width="85" height="17" font="1">sem1 ???</text>
<text top="939" left="3" width="20" height="17" font="1">11</text>
<text top="939" left="55" width="56" height="17" font="1">10 - 11</text>
<text top="939" left="123" width="19" height="17" font="4"><i>Lk</i></text>
<text top="939" left="178" width="29" height="17" font="4"><i>sp3</i></text>
<text top="939" left="233" width="18" height="17" font="1">---</text>
<text top="939" left="275" width="50" height="17" font="1">Entfall</text>
<text top="962" left="3" width="20" height="17" font="1">12</text>
<text top="962" left="55" width="36" height="17" font="1">1 - 2</text>
<text top="962" left="123" width="17" height="17" font="1">Ni</text>
<text top="962" left="178" width="29" height="17" font="1">bk1</text>
<text top="962" left="233" width="30" height="17" font="1">412</text>
<text top="962" left="391" width="53" height="17" font="1">Raum!</text>
<text top="984" left="3" width="20" height="17" font="1">12</text>
<text top="984" left="55" width="10" height="17" font="1">5</text>
<text top="984" left="123" width="22" height="17" font="4"><i>Ku</i></text>
<text top="984" left="178" width="23" height="17" font="4"><i>D2</i></text>
<text top="984" left="233" width="18" height="17" font="1">---</text>
<text top="984" left="275" width="50" height="17" font="1">Entfall</text>
<text top="1007" left="3" width="88" height="17" font="1">1112 8 - 9</text>
<text top="1007" left="123" width="21" height="17" font="4"><i>Fe</i></text>
<text top="1007" left="178" width="34" height="17" font="4"><i>vma</i></text>
<text top="1007" left="233" width="18" height="17" font="1">---</text>
<text top="1007" left="275" width="50" height="17" font="1">Entfall</text>
</page>
<page number="2" position="absolute" top="0" left="0" height="1262" width="893">
<text top="10" left="3" width="297" height="19" font="0"><b>D-70563 FANNY-LEICHT-GYMN.</b></text>
<text top="32" left="3" width="275" height="17" font="1">STUTTGART, F.-LEICHT-STR. 13</text>
<text top="9" left="332" width="248" height="17" font="1">Schuljahr 2018/19 - 1. Halbjahr</text>
<text top="32" left="332" width="236" height="17" font="1">gültig ab 10. September 2018</text>
<text top="10" left="708" width="99" height="19" font="0"><b>Untis 2017</b></text>
<text top="32" left="671" width="135" height="17" font="1">13.12.2018 8:11</text>
<text top="64" left="3" width="413" height="25" font="2"><b>Klasse 14.12. / Freitag Woche-A</b></text>
<text top="111" left="3" width="203" height="15" font="3">Ordnungsdienst: Klasse 10a</text>
<text top="172" left="3" width="21" height="17" font="1">Kl.</text>
<text top="172" left="55" width="235" height="17" font="1">Std. Vertr. Fach Rau nach</text>
<text top="172" left="398" width="134" height="17" font="1">Vertretungs-Text</text>
<text top="194" left="3" width="62" height="17" font="1">5abc 1</text>
<text top="194" left="102" width="27" height="17" font="4"><i>We</i></text>
<text top="194" left="157" width="25" height="17" font="4"><i>KR</i></text>
<text top="194" left="209" width="18" height="17" font="1">---</text>
<text top="194" left="251" width="50" height="17" font="1">Entfall</text>
<text top="215" left="3" width="20" height="17" font="1">5a</text>
<text top="215" left="55" width="10" height="17" font="1">1</text>
<text top="215" left="102" width="22" height="17" font="4"><i></i></text>
<text top="215" left="157" width="34" height="17" font="4"><i>EvR</i></text>
<text top="215" left="209" width="18" height="17" font="1">---</text>
<text top="215" left="251" width="50" height="17" font="1">Entfall</text>
<text top="238" left="3" width="62" height="17" font="1">5abc 2</text>
<text top="238" left="102" width="22" height="17" font="1">Jw</text>
<text top="238" left="157" width="25" height="17" font="1">KR</text>
<text top="238" left="209" width="30" height="17" font="1">123</text>
<text top="238" left="398" width="119" height="17" font="1">We / Aufgaben</text>
<text top="258" left="3" width="20" height="17" font="1">5a</text>
<text top="258" left="55" width="10" height="17" font="1">2</text>
<text top="258" left="102" width="23" height="17" font="1">Ng</text>
<text top="258" left="157" width="34" height="17" font="1">EvR</text>
<text top="258" left="209" width="30" height="17" font="1">321</text>
<text top="258" left="398" width="114" height="17" font="1">Bü / Aufgaben</text>
<text top="281" left="3" width="20" height="17" font="1">5d</text>
<text top="281" left="55" width="10" height="17" font="1">3</text>
<text top="281" left="102" width="20" height="17" font="1">Lo</text>
<text top="281" left="157" width="13" height="17" font="1">D</text>
<text top="281" left="209" width="30" height="17" font="1">122</text>
<text top="281" left="398" width="171" height="17" font="1">anstatt 17.12., 1. Std.</text>
<text top="304" left="3" width="20" height="17" font="1">5d</text>
<text top="304" left="55" width="10" height="17" font="1">4</text>
<text top="304" left="102" width="20" height="17" font="1">Lo</text>
<text top="304" left="157" width="13" height="17" font="1">D</text>
<text top="304" left="209" width="30" height="17" font="1">122</text>
<text top="304" left="398" width="166" height="17" font="1">anstatt 19.12., 1 Std.</text>
<text top="326" left="3" width="20" height="17" font="1">6a</text>
<text top="326" left="55" width="10" height="17" font="1">6</text>
<text top="326" left="102" width="23" height="17" font="4"><i>He</i></text>
<text top="326" left="157" width="12" height="17" font="4"><i>E</i></text>
<text top="326" left="209" width="18" height="17" font="1">---</text>
<text top="326" left="251" width="50" height="17" font="1">Entfall</text>
<text top="349" left="3" width="62" height="17" font="1">6acd 7</text>
<text top="349" left="102" width="16" height="17" font="4"><i>Ft</i></text>
<text top="349" left="157" width="26" height="17" font="4"><i>MF</i></text>
<text top="349" left="209" width="18" height="17" font="1">---</text>
<text top="349" left="251" width="50" height="17" font="1">Entfall</text>
<text top="372" left="3" width="19" height="17" font="1">6c</text>
<text top="372" left="55" width="10" height="17" font="1">1</text>
<text top="371" left="102" width="22" height="17" font="4"><i>Ku</i></text>
<text top="371" left="157" width="13" height="17" font="4"><i>D</i></text>
<text top="372" left="209" width="18" height="17" font="1">---</text>
<text top="372" left="251" width="50" height="17" font="1">Entfall</text>
<text top="394" left="3" width="19" height="17" font="1">6c</text>
<text top="394" left="55" width="10" height="17" font="1">2</text>
<text top="394" left="102" width="16" height="17" font="1">Sl</text>
<text top="394" left="157" width="13" height="17" font="1">D</text>
<text top="394" left="209" width="30" height="17" font="1">121</text>
<text top="394" left="398" width="114" height="17" font="1">Ku / Aufgaben</text>
<text top="417" left="3" width="20" height="17" font="1">7a</text>
<text top="417" left="55" width="10" height="17" font="1">3</text>
<text top="417" left="102" width="17" height="17" font="1">Di</text>
<text top="417" left="157" width="13" height="17" font="1">D</text>
<text top="417" left="209" width="30" height="17" font="1">323</text>
<text top="417" left="398" width="48" height="17" font="1">Raum</text>
<text top="440" left="3" width="20" height="17" font="1">7a</text>
<text top="440" left="55" width="10" height="17" font="1">4</text>
<text top="440" left="102" width="33" height="17" font="1">Hhn</text>
<text top="440" left="157" width="15" height="17" font="1">M</text>
<text top="440" left="209" width="30" height="17" font="1">323</text>
<text top="462" left="3" width="20" height="17" font="1">7a</text>
<text top="462" left="55" width="10" height="17" font="1">5</text>
<text top="462" left="102" width="33" height="17" font="1">Hhn</text>
<text top="462" left="157" width="15" height="17" font="1">M</text>
<text top="462" left="209" width="30" height="17" font="1">323</text>
<text top="485" left="3" width="20" height="17" font="1">7a</text>
<text top="485" left="55" width="10" height="17" font="1">6</text>
<text top="485" left="102" width="33" height="17" font="1">Hhn</text>
<text top="485" left="157" width="15" height="17" font="1">M</text>
<text top="485" left="209" width="30" height="17" font="1">323</text>
<text top="485" left="398" width="88" height="17" font="1">findet statt!</text>
<text top="508" left="3" width="20" height="17" font="1">7b</text>
<text top="508" left="55" width="10" height="17" font="1">6</text>
<text top="507" left="102" width="18" height="17" font="4"><i>Rt</i></text>
<text top="507" left="157" width="13" height="17" font="4"><i>D</i></text>
<text top="508" left="209" width="18" height="17" font="1">---</text>
<text top="508" left="251" width="50" height="17" font="1">Entfall</text>
<text top="530" left="3" width="20" height="17" font="1">8a</text>
<text top="530" left="55" width="10" height="17" font="1">1</text>
<text top="530" left="102" width="16" height="17" font="4"><i>Ft</i></text>
<text top="530" left="157" width="15" height="17" font="4"><i>M</i></text>
<text top="530" left="209" width="18" height="17" font="1">---</text>
<text top="530" left="251" width="50" height="17" font="1">Entfall</text>
<text top="553" left="3" width="20" height="17" font="1">8a</text>
<text top="553" left="55" width="10" height="17" font="1">2</text>
<text top="553" left="102" width="14" height="17" font="1">Li</text>
<text top="553" left="157" width="12" height="17" font="1">E</text>
<text top="553" left="209" width="30" height="17" font="1">323</text>
<text top="553" left="398" width="89" height="17" font="1">statt 18.12.</text>
<text top="576" left="3" width="19" height="17" font="1">9c</text>
<text top="576" left="55" width="36" height="17" font="1">5 - 6</text>
<text top="576" left="102" width="27" height="17" font="4"><i>Hei</i></text>
<text top="576" left="157" width="13" height="17" font="4"><i>D</i></text>
<text top="576" left="209" width="18" height="17" font="1">---</text>
<text top="576" left="251" width="50" height="17" font="1">Entfall</text>
<text top="599" left="3" width="20" height="17" font="1">9d</text>
<text top="599" left="55" width="75" height="17" font="1">1 - 2 Rm</text>
<text top="599" left="157" width="82" height="17" font="1">NWT 412</text>
<text top="599" left="398" width="48" height="17" font="1">Raum</text>
<text top="621" left="3" width="20" height="17" font="1">9d</text>
<text top="621" left="55" width="36" height="17" font="1">5 - 6</text>
<text top="621" left="102" width="16" height="17" font="4"><i>Ft</i></text>
<text top="621" left="157" width="15" height="17" font="4"><i>M</i></text>
<text top="621" left="209" width="18" height="17" font="1">---</text>
<text top="621" left="251" width="50" height="17" font="1">Entfall</text>
<text top="644" left="3" width="30" height="17" font="1">10a</text>
<text top="644" left="55" width="80" height="17" font="1">3 - 4 Smr</text>
<text top="644" left="157" width="12" height="17" font="1">E</text>
<text top="644" left="209" width="30" height="17" font="1">413</text>
<text top="644" left="398" width="175" height="17" font="1">Hörverstehensklausur</text>
<text top="664" left="3" width="62" height="17" font="1">10ad 3</text>
<text top="664" left="102" width="23" height="17" font="1">Ro</text>
<text top="664" left="157" width="34" height="17" font="1">EvR</text>
<text top="664" left="209" width="25" height="17" font="1">SH</text>
<text top="664" left="398" width="48" height="17" font="1">Sport!</text>
<text top="685" left="3" width="88" height="17" font="1">10ad 3 - 4</text>
<text top="685" left="102" width="27" height="17" font="4"><i>We</i></text>
<text top="685" left="157" width="25" height="17" font="4"><i>KR</i></text>
<text top="685" left="209" width="18" height="17" font="1">---</text>
<text top="685" left="251" width="50" height="17" font="1">Entfall</text>
<text top="708" left="3" width="62" height="17" font="1">10ad 4</text>
<text top="708" left="102" width="19" height="17" font="1">Lk</text>
<text top="708" left="157" width="34" height="17" font="1">EvR</text>
<text top="708" left="209" width="25" height="17" font="1">SH</text>
<text top="708" left="398" width="48" height="17" font="1">Sport!</text>
<text top="730" left="3" width="30" height="17" font="1">10b</text>
<text top="730" left="55" width="63" height="17" font="1">3 - 4 Ki</text>
<text top="730" left="157" width="12" height="17" font="1">E</text>
<text top="730" left="209" width="30" height="17" font="1">414</text>
<text top="730" left="398" width="175" height="17" font="1">Hörverstehensklausur</text>
<text top="751" left="3" width="30" height="17" font="1">10b</text>
<text top="751" left="55" width="36" height="17" font="1">3 - 4</text>
<text top="751" left="102" width="23" height="17" font="4"><i>He</i></text>
<text top="751" left="157" width="23" height="17" font="4"><i>Gk</i></text>
<text top="751" left="209" width="18" height="17" font="1">---</text>
<text top="751" left="251" width="133" height="17" font="1">Entfall für Lehrer</text>
<text top="774" left="3" width="88" height="17" font="1">10bc 5 - 6</text>
<text top="773" left="102" width="27" height="17" font="4"><i>We</i></text>
<text top="773" left="157" width="25" height="17" font="4"><i>KR</i></text>
<text top="774" left="209" width="18" height="17" font="1">---</text>
<text top="774" left="251" width="50" height="17" font="1">Entfall</text>
<text top="796" left="3" width="29" height="17" font="1">10c</text>
<text top="796" left="55" width="36" height="17" font="1">3 - 4</text>
<text top="796" left="102" width="33" height="17" font="4"><i>Ran</i></text>
<text top="796" left="157" width="15" height="17" font="4"><i>M</i></text>
<text top="796" left="209" width="18" height="17" font="1">---</text>
<text top="796" left="251" width="50" height="17" font="1">Entfall</text>
<text top="796" left="398" width="86" height="17" font="1">alle bei Oe</text>
<text top="817" left="3" width="29" height="17" font="1">10c</text>
<text top="817" left="55" width="71" height="17" font="1">3 - 4 Oe</text>
<text top="817" left="157" width="12" height="17" font="1">E</text>
<text top="817" left="209" width="30" height="17" font="1">422</text>
<text top="817" left="398" width="175" height="17" font="1">Hörverstehensklausur</text>
<text top="839" left="3" width="30" height="17" font="1">10d</text>
<text top="839" left="55" width="74" height="17" font="1">3 - 4 Wd</text>
<text top="839" left="157" width="12" height="17" font="1">E</text>
<text top="839" left="209" width="30" height="17" font="1">416</text>
<text top="839" left="398" width="175" height="17" font="1">Hörverstehensklausur</text>
<text top="862" left="3" width="20" height="17" font="1">11</text>
<text top="862" left="55" width="64" height="17" font="1">3 - 4 At</text>
<text top="862" left="157" width="23" height="17" font="1">D3</text>
<text top="862" left="209" width="30" height="17" font="1">121</text>
<text top="862" left="398" width="48" height="17" font="1">Raum</text>
<text top="883" left="3" width="20" height="17" font="1">11</text>
<text top="883" left="55" width="63" height="17" font="1">3 - 4 Sl</text>
<text top="883" left="157" width="23" height="17" font="1">D2</text>
<text top="883" left="209" width="30" height="17" font="1">415</text>
<text top="883" left="398" width="48" height="17" font="1">Raum</text>
<text top="905" left="3" width="20" height="17" font="1">12</text>
<text top="905" left="55" width="67" height="17" font="1">1 - 2 Lo</text>
<text top="905" left="157" width="32" height="17" font="1">Sp1</text>
<text top="905" left="209" width="30" height="17" font="1">222</text>
<text top="905" left="398" width="61" height="17" font="1">Theorie</text>
<text top="928" left="3" width="20" height="17" font="1">12</text>
<text top="928" left="55" width="67" height="17" font="1">3 - 4 Mf</text>
<text top="928" left="157" width="22" height="17" font="1">E2</text>
<text top="928" left="209" width="30" height="17" font="1">218</text>
<text top="928" left="398" width="48" height="17" font="1">Raum</text>
<text top="949" left="3" width="20" height="17" font="1">12</text>
<text top="949" left="55" width="64" height="17" font="1">3 - 4 Sf</text>
<text top="949" left="157" width="25" height="17" font="1">M3</text>
<text top="949" left="209" width="30" height="17" font="1">322</text>
<text top="949" left="398" width="48" height="17" font="1">Raum</text>
<text top="969" left="3" width="20" height="17" font="1">12</text>
<text top="969" left="55" width="36" height="17" font="1">3 - 4</text>
<text top="969" left="102" width="16" height="17" font="4"><i>Ft</i></text>
<text top="969" left="157" width="25" height="17" font="4"><i>M2</i></text>
<text top="969" left="209" width="18" height="17" font="1">---</text>
<text top="969" left="251" width="50" height="17" font="1">Entfall</text>
<text top="992" left="3" width="20" height="17" font="1">12</text>
<text top="992" left="55" width="36" height="17" font="1">5 - 6</text>
<text top="991" left="102" width="22" height="17" font="4"><i>Ku</i></text>
<text top="991" left="157" width="29" height="17" font="4"><i>ek1</i></text>
<text top="992" left="209" width="18" height="17" font="1">---</text>
<text top="992" left="251" width="50" height="17" font="1">Entfall</text>
</page>
</pdf2xml>

View file

@ -23,5 +23,6 @@
<file>graphics/icons/logoutRed.png</file> <file>graphics/icons/logoutRed.png</file>
<file>graphics/icons/settingsBlack.png</file> <file>graphics/icons/settingsBlack.png</file>
<file>graphics/icons/backDark.png</file> <file>graphics/icons/backDark.png</file>
<file>samplehtml/Download File.txt</file>
</qresource> </qresource>
</RCC> </RCC>

View file

@ -1,6 +1,6 @@
#include "headers/appsettings.h" #include "headers/appsettings.h"
AppSettings * pGlobalAppSettings = NULL; AppSettings * pGlobalAppSettings = nullptr;
AppSettings::AppSettings(QObject* parent) AppSettings::AppSettings(QObject* parent)
:QObject(parent) :QObject(parent)

View file

@ -2,13 +2,13 @@
EventModel::EventModel(QObject *parent) : QAbstractListModel(parent) EventModel::EventModel(QObject *parent) : QAbstractListModel(parent)
{ {
// foodplan constructor // event constructor
// is called when the Foodplan Display is loaded // is called when the EventView is loaded
// list // list
m_events.clear(); m_events.clear();
// convert the stringlist from the serverconn to a Dish-list // convert the stringlist from the serverconn to a Day-list
foreach(QList<QString>day, pGlobalServConn->m_events){ foreach(QList<QString>day, pGlobalServConn->m_events){
m_events.append({day[0], day[1], day[2], day[3], day[4], day[5], day[6]}); m_events.append({day[0], day[1], day[2], day[3], day[4], day[5], day[6]});
} }

View file

@ -3,7 +3,7 @@
FoodPlanModel::FoodPlanModel(QObject *parent) : QAbstractListModel(parent) FoodPlanModel::FoodPlanModel(QObject *parent) : QAbstractListModel(parent)
{ {
// foodplan constructor // foodplan constructor
// is called when the Foodplan Display is loaded // is called when the FoodplanView is loaded
// list // list
m_foodPlan.clear(); m_foodPlan.clear();

View file

@ -21,7 +21,6 @@ ServerConn::~ServerConn()
dir.removeRecursively(); dir.removeRecursively();
} }
QString ServerConn::login(QString username, QString password, bool permanent) QString ServerConn::login(QString username, QString password, bool permanent)
{ {
// QUrlQuery pdata; // QUrlQuery pdata;
@ -89,7 +88,6 @@ QString ServerConn::getDay(QString day)
QNetworkRequest request; QNetworkRequest request;
request.setUrl( QUrl( "http://www.fanny-leicht.de/static15/http.intern/" + day + ".pdf" ) ); request.setUrl( QUrl( "http://www.fanny-leicht.de/static15/http.intern/" + day + ".pdf" ) );
// Pack in credentials
// Pack in credentials // Pack in credentials
QString concatenatedCredentials = this->username + ":" + this->password; QString concatenatedCredentials = this->username + ":" + this->password;
QByteArray data = concatenatedCredentials.toLocal8Bit().toBase64(); QByteArray data = concatenatedCredentials.toLocal8Bit().toBase64();
@ -138,7 +136,6 @@ QString ServerConn::getDay(QString day)
} }
} }
int ServerConn::checkConn() int ServerConn::checkConn()
{ {
// Create request // Create request
@ -184,6 +181,7 @@ float ServerConn::getProgress()
} }
int ServerConn::getEvents(QString day){ int ServerConn::getEvents(QString day){
/* /*
this->progress = 0; this->progress = 0;
ReturnData_t ret; //this is a custom type to store the returned data ReturnData_t ret; //this is a custom type to store the returned data
@ -216,6 +214,59 @@ int ServerConn::getEvents(QString day){
QString eventString = reply->readAll(); QString eventString = reply->readAll();
*/ */
qDebug() << "reading text file";
QFile * textFile = new QFile(":/samplehtml/Download File.txt");
if (!textFile->open(QIODevice::ReadOnly | QIODevice::Text)) {
qDebug() << "Load XML File Problem Couldn't open xmlfile.xml to load settings for download";
return 900;
}
QString eventString = textFile->readAll();
QStringList events = eventString.split("\n");
QList<QStringList> tmpEvents;
// 8a 1-2 Ei Ch --- Entfall KEINE KA
foreach(QString event, events){
int spaceCount = 0;
QStringList dayList;
QString tmpString;
for(int i = 0;i < event.length(); i++){
QCharRef tmpChar = event[i];
if(tmpChar == " "){
spaceCount ++;
}
else {
if(spaceCount == 1){
tmpString.append(" ");
}
spaceCount = 0;
tmpString.append(tmpChar);
}
if(spaceCount == 2){
dayList.append(tmpString);
tmpString = "";
}
qDebug() << "char= " << tmpChar << " string= " << tmpString << " list= " << dayList;
}
dayList.append(tmpString);
while (dayList.length() < 7) {
dayList.append("");
}
tmpEvents.append(dayList);
}
this->m_events = tmpEvents;
qDebug() << tmpEvents;
/*
qDebug() << "reading xml file"; qDebug() << "reading xml file";
QFile * xmlFile = new QFile(":/samplehtml/Download File.xml"); QFile * xmlFile = new QFile(":/samplehtml/Download File.xml");
if (!xmlFile->open(QIODevice::ReadOnly | QIODevice::Text)) { if (!xmlFile->open(QIODevice::ReadOnly | QIODevice::Text)) {
@ -228,6 +279,10 @@ int ServerConn::getEvents(QString day){
//qDebug() << xmlFile->readAll(); //qDebug() << xmlFile->readAll();
QList<QStringList> tmpEvents; QList<QStringList> tmpEvents;
QStringList dayList; QStringList dayList;
while (dayList.length() < 7) {
dayList.append("");
}
int currTop = 0; int currTop = 0;
/* /*
@ -238,16 +293,24 @@ int ServerConn::getEvents(QString day){
<text top="530" left="233" width="18" height="17" font="1">---</text> <text top="530" left="233" width="18" height="17" font="1">---</text>
<text top="530" left="275" width="50" height="17" font="1">Entfall</text> <text top="530" left="275" width="50" height="17" font="1">Entfall</text>
<text top="530" left="391" width="83" height="17" font="1">KEINE KA</text> <text top="530" left="391" width="83" height="17" font="1">KEINE KA</text>
*/
#define eventXmlPosGrade 3 <text top="194" left="3" width="62" height="17" font="1">5abc 1</text>
#define eventXmlPosHour 55 <text top="194" left="102" width="27" height="17" font="4"><i>We</i></text>
#define eventXmlPosReplace 123 <text top="194" left="157" width="25" height="17" font="4"><i>KR</i></text>
#define eventXmlPosSubject 178 <text top="194" left="209" width="18" height="17" font="1">---</text>
#define eventXmlPosRoom 233 <text top="194" left="251" width="50" height="17" font="1">Entfall</text>
#define eventXmlPosTo 275
#define eventXmlPosText 391
#define eventXmlPosGrade 3
#define eventXmlPosHour 55
#define eventXmlPosReplace 123
#define eventXmlPosSubject 178
#define eventXmlPosRoom 233
#define eventXmlPosTo 275
#define eventXmlPosText 391
QList<int> eventXmlPositions = {eventXmlPosGrade,eventXmlPosHour,eventXmlPosReplace,eventXmlPosSubject,eventXmlPosRoom,eventXmlPosTo,eventXmlPosText};
qDebug() << "start xml parsing";
//Parse the XML until we reach end of it //Parse the XML until we reach end of it
while(!xmlReader->atEnd()) { while(!xmlReader->atEnd()) {
if (xmlReader->readNextStartElement()) { if (xmlReader->readNextStartElement()) {
@ -272,7 +335,7 @@ int ServerConn::getEvents(QString day){
// new line started // new line started
if(currTop > 175){ if(currTop > 175){
// ignore the header // if not header -> append
qDebug() << dayList; qDebug() << dayList;
tmpEvents.append(dayList); tmpEvents.append(dayList);
} }
@ -283,48 +346,54 @@ int ServerConn::getEvents(QString day){
} }
currTop = top; currTop = top;
} }
else {
// no new line
if(attributes.hasAttribute("left")){ if(attributes.hasAttribute("left")){
int left = attributes.value("left").toInt(); int left = attributes.value("left").toInt();
QString text = xmlReader->readElementText(QXmlStreamReader::IncludeChildElements); QString text = xmlReader->readElementText(QXmlStreamReader::IncludeChildElements);
if(abs(left - eventXmlPosGrade) < 3){ qDebug() << text;
// position tells the text is the grade for(int i = 0;i<7;i++){
dayList[0] = text; //qDebug() << i << left << abs(left - eventXmlPositions[i]);
if(abs(left - eventXmlPositions[i]) < 30){
dayList[i] = text;
//qDebug() << i << left << text << dayList << left << abs(left - eventXmlPositions[i]);
} }
else if (abs(left - eventXmlPosHour) < 3) {
// position tells the text is the grade
dayList[1] = text;
} }
} }
else {
qDebug() << " no left";
}
}
else {
qDebug() << " no top";
}
} }
} }
} }
//qDebug() << qPrintable(xmlReader->name().toString()) << text << attribute_value << dayList; this->m_events = tmpEvents;
}
}
}
qDebug() << tmpEvents; if(xmlReader->hasError()) {
this->m_events = tmpEvents;
if(xmlReader->hasError()) {
qDebug() << "xmlFile.xml Parse Error" << xmlReader->errorString(); qDebug() << "xmlFile.xml Parse Error" << xmlReader->errorString();
//return(900); //return(900);
} }
//close reader and flush file //close reader and flush file
xmlReader->clear(); xmlReader->clear();
//xmlFile->close(); xmlFile->close();
*/
return(200); foreach(QList<QString>day, this->m_events){
qDebug() << day;
}
return(200);
} }
int ServerConn::getFoodPlan() int ServerConn::getFoodPlan()
{ {
// set the progress to 0
this->progress = 0; this->progress = 0;
// Call the webservice // Call the webservice
@ -332,30 +401,35 @@ int ServerConn::getFoodPlan()
request.setHeader(QNetworkRequest::ContentTypeHeader, request.setHeader(QNetworkRequest::ContentTypeHeader,
"application/x-www-form-urlencoded"); "application/x-www-form-urlencoded");
// send a POST request with the given url and data to the server // send a GET request to the treffpunkt fanny server
QNetworkReply* reply; QNetworkReply* reply;
reply = this->networkManager->get(request);
QUrlQuery pdata; // update the progress during the request
reply = this->networkManager->post(request, pdata.toString(QUrl::FullyEncoded).toUtf8());
connect(reply, SIGNAL(downloadProgress(qint64, qint64)), connect(reply, SIGNAL(downloadProgress(qint64, qint64)),
this, SLOT(updateProgress(qint64, qint64))); this, SLOT(updateProgress(qint64, qint64)));
// wait until the request has finished // loop to wait until the request has finished before processing the data
QEventLoop loop; QEventLoop loop;
// timer to cancel the request after 3 seconds
QTimer timer; QTimer timer;
timer.setSingleShot(true); timer.setSingleShot(true);
// quit the loop when the timer times out
loop.connect(&timer, SIGNAL(timeout()), &loop, SLOT(quit())); // quit the loop when the request finised
loop.connect(this->networkManager, SIGNAL(finished(QNetworkReply*)), SLOT(quit())); loop.connect(this->networkManager, SIGNAL(finished(QNetworkReply*)), SLOT(quit()));
// or the timer timed out
loop.connect(&timer, SIGNAL(timeout()), &loop, SLOT(quit()));
// start the timer
timer.start(2000); timer.start(2000);
// start the loop
loop.exec(); loop.exec();
// get the status code // get the status code
QVariant status_code = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute); QVariant status_code = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute);
// set the progress to 1
this->progress = 1; this->progress = 1;
if(status_code != 200){ if(status_code != 200){
// if the request didn't result in a success, return the error code
return(status_code.toInt()); return(status_code.toInt());
} }
@ -539,43 +613,6 @@ int ServerConn::getFoodPlan()
return(200); return(200);
} }
QVariantMap ServerConn::getEventData(int index)
{
//cookteam, date, main dish, vagi main dish, garnish(Beilage) and Dessert.
QStringList ret; //list to return
//qDebug() << index;
for(int i=0;i<=6;i++){
if(m_events.size() > index){
//qDebug() << i << m_weekplan[index].size();
if(m_events[index].size() > i){
ret.append(m_events[index][i]);
//qDebug() << i << m_weekplan[index][i];
}
else {
ret.append(nullptr);
}
}
else {
ret.append(nullptr);
}
}
if(ret.length() < 7){
ret.append("");
}
QString date_string_on_db = ret[1];
QDate Date = QDate::fromString(date_string_on_db," dd.MM.yyyy");
//date_string_on_db
qDebug() << Date;
qDebug() << ret;
return { {"grade", ret[0]}, {"hour", ret[1]}, {"replace", ret[2]}, {"subject", ret[3]}, {"room", ret[4]}, {"to", ret[5]}, {"text", ret[6]} };
}
int ServerConn::getEventCount(){
return (m_events.length());
}
ReturnData_t ServerConn::senddata(QUrl serviceUrl, QUrlQuery pdata) ReturnData_t ServerConn::senddata(QUrl serviceUrl, QUrlQuery pdata)
{ {