Merge branch 'cart' of git.2li.ch:ibz/web_AI-5 into cart
* 'cart' of git.2li.ch:ibz/web_AI-5: change some code correct the html templates remove todo tags resize the mockup picture so it doesn't use a whole page add a page break to move the interface section to it's own page add captions and centering to the tikz figures make the swot table a bit smaller update readme
This commit is contained in:
commit
c74438904c
14
README.md
14
README.md
|
@ -13,9 +13,10 @@ Inspiration falls jemand ähnlich Schulprojekte hat.
|
||||||
|
|
||||||
##### Installation
|
##### Installation
|
||||||
|
|
||||||
To get started with this repository make sure that you have Virtualbox
|
To get started with this repository make sure that you have
|
||||||
5.1.30 and Vagrant 2.0.0 installed. Vagrant 2.0.0 currently doesn't
|
[Virtualbox](https://www.virtualbox.org/) and
|
||||||
support Virtualbox 5.2.
|
[Vagrant](https://www.vagrantup.com/) installed.
|
||||||
|
|
||||||
|
|
||||||
After you have installed Vagrant and Virtualbox run this command in a
|
After you have installed Vagrant and Virtualbox run this command in a
|
||||||
terminal to make sure that you have installed the Virtualbox plugin
|
terminal to make sure that you have installed the Virtualbox plugin
|
||||||
|
@ -37,9 +38,10 @@ specifications in the "Vagrantfile" file. After it's finished you
|
||||||
should be able to access the web page under http://localhost:8080
|
should be able to access the web page under http://localhost:8080
|
||||||
|
|
||||||
To access the admin panel visit http://localhost:8080/admin the
|
To access the admin panel visit http://localhost:8080/admin the
|
||||||
default login is admin and the corresponding password is
|
default login is "admin" and the corresponding password is "password".
|
||||||
"password". By default the application contains no data, you can enter
|
By default the application contains some example categories and
|
||||||
whatever you need.
|
articles as well as a test user. The username of the test user is
|
||||||
|
"test_user" and the password is "password".
|
||||||
|
|
||||||
### Support
|
### Support
|
||||||
|
|
||||||
|
|
|
@ -73,7 +73,7 @@
|
||||||
target='_blank'
|
target='_blank'
|
||||||
href='http://www.ibz.ch'
|
href='http://www.ibz.ch'
|
||||||
>This is a case study project of Ivan Hörler and Andreas Zweili.
|
>This is a case study project of Ivan Hörler and Andreas Zweili.
|
||||||
</br>
|
<br>
|
||||||
It is a school project/excercise and has no commercial intent.
|
It is a school project/excercise and has no commercial intent.
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{% extends "webshop/base.html" %}
|
{% extends "webshop/base.html" %}
|
||||||
{% block section_title %}<h1>CHECKOUT</h1>{% endblock %}
|
{% block section_title %}CHECKOUT{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<h3>Preview your Purchase:</h3>
|
<h3>Preview your Purchase:</h3>
|
||||||
</br>
|
<br>
|
||||||
<h4>Shipping Address:</h4>
|
<h4>Shipping Address:</h4>
|
||||||
{% if person %}
|
{% if person %}
|
||||||
<p><b>Salutation: </b>{{ person.salutation }}</p>
|
<p><b>Salutation: </b>{{ person.salutation }}</p>
|
||||||
|
@ -19,7 +19,7 @@
|
||||||
</p>
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if cart_position_list %}
|
{% if cart_position_list %}
|
||||||
</br>
|
<br>
|
||||||
<h4>Your Items:</h4>
|
<h4>Your Items:</h4>
|
||||||
<table class="table price-table">
|
<table class="table price-table">
|
||||||
<tr class="table_header">
|
<tr class="table_header">
|
||||||
|
@ -52,15 +52,15 @@
|
||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
<tr>
|
<tr>
|
||||||
<td scope="col" colspan="5"class="text-right">
|
<td scope="col" colspan="5" class="text-right">
|
||||||
<td scope="col" class="price-value">
|
<td scope="col" class="price-value">
|
||||||
<dl><dt>Total:</dl></dt></td>
|
<dt><dl>Total:</dl></dt></td>
|
||||||
<td scope="col" class="price-value">
|
<td scope="col" class="price-value">
|
||||||
<dl><dt>{{ total }} {{ currency_name }}</dl></dt>
|
<dt><dl>{{ total }} {{ currency_name }}</dl></dt>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<form id="checkout_form" action="{% url 'order' %}" method="post">
|
<form id="checkout_form" action="" method="POST">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
{{ checkout_form.as_p }}
|
{{ checkout_form.as_p }}
|
||||||
<input type="submit" value="Order" class="btn btn-success" role="button"/>
|
<input type="submit" value="Order" class="btn btn-success" role="button"/>
|
||||||
|
@ -76,6 +76,6 @@
|
||||||
<p class="alert text-danger">
|
<p class="alert text-danger">
|
||||||
<strong>
|
<strong>
|
||||||
{{ message }}
|
{{ message }}
|
||||||
<strong>
|
</strong>
|
||||||
</p>
|
</p>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
@ -402,10 +402,8 @@ def checkout(request):
|
||||||
|
|
||||||
# Here we handle all POST Operations:
|
# Here we handle all POST Operations:
|
||||||
if request.method == 'POST':
|
if request.method == 'POST':
|
||||||
print('checkout post', request.POST)
|
|
||||||
# here we react to a change of amount per item in the Cart:
|
# here we react to a change of amount per item in the Cart:
|
||||||
if 'checkout' in request.POST:
|
if 'checkout' in request.POST:
|
||||||
print('checkout post request.POST = checkout_form')
|
|
||||||
checkout_form = CheckoutForm(request.POST)
|
checkout_form = CheckoutForm(request.POST)
|
||||||
if checkout_form.is_valid():
|
if checkout_form.is_valid():
|
||||||
orderstatus = OrderStatus.objects.get(name='ordered')
|
orderstatus = OrderStatus.objects.get(name='ordered')
|
||||||
|
@ -425,8 +423,7 @@ def checkout(request):
|
||||||
amount=position.amount,
|
amount=position.amount,
|
||||||
price_in_chf=position.article.price_in_chf
|
price_in_chf=position.article.price_in_chf
|
||||||
)
|
)
|
||||||
cart.delete()
|
return HttpResponseRedirect('/order/')
|
||||||
cart = False
|
|
||||||
|
|
||||||
return render(request, 'webshop/checkout.html',
|
return render(request, 'webshop/checkout.html',
|
||||||
{'cart_position_list': cart_position_list,
|
{'cart_position_list': cart_position_list,
|
||||||
|
|
|
@ -118,17 +118,15 @@ geeignet erscheinenden Frameworks. Jede noch so kleine Zeiteinsparung
|
||||||
durch vorgefertigte Entwicklungen werden angenommen und dennoch wollen
|
durch vorgefertigte Entwicklungen werden angenommen und dennoch wollen
|
||||||
wir keine fertigen Software Produkte einsetzen.
|
wir keine fertigen Software Produkte einsetzen.
|
||||||
|
|
||||||
** TODO SWOT-Analyse
|
** SWOT-Analyse
|
||||||
|
|
||||||
Die SWOT-Analyse ist eine Methode, die Stärken, Schwächen, Chancen und
|
Die SWOT-Analyse ist eine Methode, die Stärken, Schwächen, Chancen und
|
||||||
Gefahren zu erkennen, indem eine 4-Felder-Matrix ausgefüllt wird.
|
Gefahren zu erkennen, indem eine 4-Felder-Matrix ausgefüllt wird.
|
||||||
|
|
||||||
Wichtig vor dem Ausfüllen der SWOT-Analyse ist es, ein klares Ziel zu
|
Wichtig vor dem Ausfüllen der SWOT-Analyse ist es, ein klares Ziel zu
|
||||||
haben. Die ausgefüllte SWOT-Analyse für dieses Projekt ist in der
|
haben. Die ausgefüllte SWOT-Analyse für dieses Projekt ist in der
|
||||||
Tabelle:([[tab:swot]]) zu sehen.
|
Abbildung:(\ref{fig:swot}) zu sehen.
|
||||||
|
|
||||||
#+CAPTION: SWOT-Analyse
|
|
||||||
#+NAME: tab:swot
|
|
||||||
#+BEGIN_EXPORT latex
|
#+BEGIN_EXPORT latex
|
||||||
%--Beginn SWOT Analyse
|
%--Beginn SWOT Analyse
|
||||||
%---Used for SWOT Analysys Chart
|
%---Used for SWOT Analysys Chart
|
||||||
|
@ -143,11 +141,13 @@ Tabelle:([[tab:swot]]) zu sehen.
|
||||||
\colorlet{T}{schwaechen!50!risiken}
|
\colorlet{T}{schwaechen!50!risiken}
|
||||||
% implemented this in doc instead as in preamble:
|
% implemented this in doc instead as in preamble:
|
||||||
\def\bigfont#1#{\fontsize{120}{130}\selectfont #1}
|
\def\bigfont#1#{\fontsize{120}{130}\selectfont #1}
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
\begin{tikzpicture}[scale=0.9,
|
\begin{tikzpicture}[scale=0.9,
|
||||||
any/.style={
|
any/.style={
|
||||||
minimum width=8cm,
|
minimum width=7cm,
|
||||||
minimum height=8cm,%
|
minimum height=7cm,%
|
||||||
text width=7.5cm,
|
text width=6.5cm,
|
||||||
align=center,
|
align=center,
|
||||||
outer sep=1pt
|
outer sep=1pt
|
||||||
},
|
},
|
||||||
|
@ -192,6 +192,7 @@ Tabelle:([[tab:swot]]) zu sehen.
|
||||||
any,
|
any,
|
||||||
anchor=center
|
anchor=center
|
||||||
] at (SWOT-2-2) { % Interne Stärken/Externe Chancen feld:
|
] at (SWOT-2-2) { % Interne Stärken/Externe Chancen feld:
|
||||||
|
\footnotesize{
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Know-How in Webtechnologien.
|
\item Know-How in Webtechnologien.
|
||||||
\item Quelloffene Software ist leichter zu unterhalten.
|
\item Quelloffene Software ist leichter zu unterhalten.
|
||||||
|
@ -199,12 +200,13 @@ Tabelle:([[tab:swot]]) zu sehen.
|
||||||
stark reduziert werden.
|
stark reduziert werden.
|
||||||
\item Wir als Programmierer haben ein gutes Know-How
|
\item Wir als Programmierer haben ein gutes Know-How
|
||||||
im Bereich Datenbanken.
|
im Bereich Datenbanken.
|
||||||
\end{itemize}
|
\end{itemize}}
|
||||||
};
|
};
|
||||||
\node[
|
\node[
|
||||||
any,
|
any,
|
||||||
anchor=center
|
anchor=center
|
||||||
] at (SWOT-2-3) { % Interne Schwächen/Externe Chancen feld:
|
] at (SWOT-2-3) { % Interne Schwächen/Externe Chancen feld:
|
||||||
|
\footnotesize{
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Das Framework ist nicht vollkommen. Teile davon müssten
|
\item Das Framework ist nicht vollkommen. Teile davon müssten
|
||||||
eventuell selber konzipiert/erarbeitet werden.
|
eventuell selber konzipiert/erarbeitet werden.
|
||||||
|
@ -221,6 +223,7 @@ Tabelle:([[tab:swot]]) zu sehen.
|
||||||
any,
|
any,
|
||||||
anchor=center
|
anchor=center
|
||||||
] at (SWOT-3-2) { % Interne Stärken/ Externe Risiken feld:
|
] at (SWOT-3-2) { % Interne Stärken/ Externe Risiken feld:
|
||||||
|
\footnotesize{
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Quelloffene Software kann unkontrolliert kopiert werden.
|
\item Quelloffene Software kann unkontrolliert kopiert werden.
|
||||||
\item Die Implementierung von Währungsänderungen ist
|
\item Die Implementierung von Währungsänderungen ist
|
||||||
|
@ -232,15 +235,19 @@ Tabelle:([[tab:swot]]) zu sehen.
|
||||||
any,
|
any,
|
||||||
anchor=center
|
anchor=center
|
||||||
] at (SWOT-3-3) { % Interne Schwächen/ Externe Risiken feld:
|
] at (SWOT-3-3) { % Interne Schwächen/ Externe Risiken feld:
|
||||||
|
\footnotesize{
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Wir als Programmierer haben keine Erfahrung im
|
\item Wir als Programmierer haben keine Erfahrung im
|
||||||
Konsumsegment unseres Nutzers.
|
Konsumsegment unseres Nutzers.
|
||||||
\item Die Umsetzung der graphischen Anwendungsoberfläche
|
\item Die Umsetzung der graphischen Anwendungsoberfläche
|
||||||
könnte sich als schwierig erweisen.
|
könnte sich als schwierig erweisen.
|
||||||
\item Die Umsetzungszeit ist knapp bemessen.
|
\item Die Umsetzungszeit ist knapp bemessen.
|
||||||
\end{itemize}
|
\end{itemize}}
|
||||||
};
|
};
|
||||||
\end{tikzpicture}
|
\end{tikzpicture}
|
||||||
|
\caption{SWOT-Analyse}
|
||||||
|
\label{fig:swot}
|
||||||
|
\end{figure}
|
||||||
%--Ende SWOT Analyse
|
%--Ende SWOT Analyse
|
||||||
#+END_EXPORT
|
#+END_EXPORT
|
||||||
|
|
||||||
|
@ -286,7 +293,7 @@ Abbildung:([[fig:umweltgrafik]]) grafisch dargestellt.
|
||||||
#+NAME: fig:umweltgrafik
|
#+NAME: fig:umweltgrafik
|
||||||
[[file:diagrammes/stakeholder_diagramm.eps]]
|
[[file:diagrammes/stakeholder_diagramm.eps]]
|
||||||
|
|
||||||
** TODO Risikomanagement
|
** Risikomanagement
|
||||||
*** Risikobeschreibung
|
*** Risikobeschreibung
|
||||||
|
|
||||||
#+CAPTION: Risikobeschreibung
|
#+CAPTION: Risikobeschreibung
|
||||||
|
@ -339,12 +346,14 @@ Am Ende des Projekts die nicht lauffähigen Teile ausgrenzen. :-)
|
||||||
* Projektmanagement
|
* Projektmanagement
|
||||||
** Organigramm
|
** Organigramm
|
||||||
|
|
||||||
#+NAME: fig:Organigramm
|
|
||||||
#+BEGIN_EXPORT latex
|
#+BEGIN_EXPORT latex
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
\begin{tikzpicture}[
|
\begin{tikzpicture}[
|
||||||
auto,
|
auto,
|
||||||
node distance = 0.4cm,
|
node distance = 0.4cm,
|
||||||
thick,
|
thick,
|
||||||
|
align=center,
|
||||||
every node/.style = {
|
every node/.style = {
|
||||||
rectangle,
|
rectangle,
|
||||||
font = \sffamily,
|
font = \sffamily,
|
||||||
|
@ -357,8 +366,8 @@ Am Ende des Projekts die nicht lauffähigen Teile ausgrenzen. :-)
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
\node (CH) {\textbf{CH}\\Christian Herren};
|
\node (CH) {\textbf{CH}\\Christian Herren};
|
||||||
\coordinate [below = 0.9cm of CH] (Mitte);
|
\coordinate [below = 1.2cm of CH] (Mitte);
|
||||||
\coordinate [below = 1.6cm of CH] (Unten);
|
\coordinate [below = 2.2cm of CH] (Unten);
|
||||||
\node (CV) [right = 2mm of Mitte] {\textbf{CV}\\Christian Vögeli};
|
\node (CV) [right = 2mm of Mitte] {\textbf{CV}\\Christian Vögeli};
|
||||||
\node (AZ) [below = of CV] {\textbf{AZ}\\Andreas Zweili};
|
\node (AZ) [below = of CV] {\textbf{AZ}\\Andreas Zweili};
|
||||||
\node (IH) [left = of AZ] {\textbf{IH}\\Ivan Hörler};
|
\node (IH) [left = of AZ] {\textbf{IH}\\Ivan Hörler};
|
||||||
|
@ -368,8 +377,9 @@ Am Ende des Projekts die nicht lauffähigen Teile ausgrenzen. :-)
|
||||||
(Unten) -| (IH)
|
(Unten) -| (IH)
|
||||||
(Unten) -| (AZ);
|
(Unten) -| (AZ);
|
||||||
\end{tikzpicture}
|
\end{tikzpicture}
|
||||||
|
\caption{Organigramm}
|
||||||
|
\end{figure}
|
||||||
#+END_EXPORT
|
#+END_EXPORT
|
||||||
#+CAPTION: Organigramm
|
|
||||||
|
|
||||||
** Projektstrukturplan
|
** Projektstrukturplan
|
||||||
** Varianten
|
** Varianten
|
||||||
|
@ -1628,6 +1638,7 @@ die Datenbank mit zusätzlichen Anfragen belastet werden kann.
|
||||||
#+NAME: fig:person
|
#+NAME: fig:person
|
||||||
[[file:pictures/class_person.png]]
|
[[file:pictures/class_person.png]]
|
||||||
|
|
||||||
|
#+LATEX:\newpage
|
||||||
** Benutzerinterface
|
** Benutzerinterface
|
||||||
*** Mockup Skizze
|
*** Mockup Skizze
|
||||||
|
|
||||||
|
@ -1637,7 +1648,7 @@ wir eine Diskusionsgrundlage wie wir das Interface weiter entwickeln
|
||||||
könnten.
|
könnten.
|
||||||
|
|
||||||
#+CAPTION: Ein frühes Mockup des Shop
|
#+CAPTION: Ein frühes Mockup des Shop
|
||||||
#+ATTR_LATEX: :width \textwidth
|
#+ATTR_LATEX: :height 15cm
|
||||||
#+NAME: mockup
|
#+NAME: mockup
|
||||||
[[file:pictures/mockup-full-snipet.png]]
|
[[file:pictures/mockup-full-snipet.png]]
|
||||||
#+LATEX:\newpage
|
#+LATEX:\newpage
|
||||||
|
|
Loading…
Reference in New Issue