summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drupal_auth/models.py1
-rw-r--r--forums/settings.py3
-rw-r--r--static/website/css/main.css38
-rw-r--r--static/website/images/100x75.gifbin0 -> 326 bytes
-rw-r--r--static/website/images/200px-Latex_logo_bw.gifbin0 -> 3235 bytes
-rw-r--r--static/website/images/400px-LibreOffice_icons_256.pngbin0 -> 68642 bytes
-rw-r--r--static/website/images/Advanced-C++.jpgbin0 -> 1855 bytes
-rw-r--r--static/website/images/Advanced-C++.pngbin0 -> 3972 bytes
-rw-r--r--static/website/images/BASH.jpgbin0 -> 1320 bytes
-rw-r--r--static/website/images/BASH.pngbin0 -> 2738 bytes
-rw-r--r--static/website/images/Blender.jpgbin0 -> 1474 bytes
-rw-r--r--static/website/images/C-and-C++.jpgbin0 -> 1449 bytes
-rw-r--r--static/website/images/CellDesigner.gifbin0 -> 2510 bytes
-rw-r--r--static/website/images/CellDesigner.jpgbin0 -> 1928 bytes
-rw-r--r--static/website/images/Digital-Divide.gifbin0 -> 2851 bytes
-rw-r--r--static/website/images/Digital-Divide.jpgbin0 -> 1911 bytes
-rw-r--r--static/website/images/Drupal.jpgbin0 -> 2052 bytes
-rw-r--r--static/website/images/Firefox.jpgbin0 -> 2328 bytes
-rw-r--r--static/website/images/GChemPaing.jpgbin0 -> 2112 bytes
-rw-r--r--static/website/images/GChemPaint.jpgbin0 -> 2112 bytes
-rw-r--r--static/website/images/GIMP.jpgbin0 -> 1895 bytes
-rw-r--r--static/website/images/GNS3.jpgbin0 -> 2300 bytes
-rw-r--r--static/website/images/GNUstep_logo.svg49
-rw-r--r--static/website/images/GSchem.gifbin0 -> 2230 bytes
-rw-r--r--static/website/images/GSchem.jpgbin0 -> 1553 bytes
-rw-r--r--static/website/images/GeoGebra-for-Engineering-drawing.jpgbin0 -> 1947 bytes
-rw-r--r--static/website/images/Geogebra.jpgbin0 -> 1947 bytes
-rw-r--r--static/website/images/Java-Business-Application.gifbin0 -> 3970 bytes
-rw-r--r--static/website/images/Java-Business-Application.jpgbin0 -> 2153 bytes
-rw-r--r--static/website/images/Java.jpgbin0 -> 1646 bytes
-rw-r--r--static/website/images/Java_logo.pngbin0 -> 41732 bytes
-rw-r--r--static/website/images/KTouch.jpgbin0 -> 1476 bytes
-rw-r--r--static/website/images/KTurtle.jpgbin0 -> 2090 bytes
-rw-r--r--static/website/images/KTurtle_logo.pngbin0 -> 11024 bytes
-rw-r--r--static/website/images/KiCad.jpgbin0 -> 2225 bytes
-rw-r--r--static/website/images/Kicad_logo_new.pngbin0 -> 13962 bytes
-rw-r--r--static/website/images/LaTeX.jpgbin0 -> 1575 bytes
-rw-r--r--static/website/images/LibreOffice-Suite-Base.jpgbin0 -> 1067 bytes
-rw-r--r--static/website/images/LibreOffice-Suite-Calc.jpgbin0 -> 1764 bytes
-rw-r--r--static/website/images/LibreOffice-Suite-Draw.jpgbin0 -> 1712 bytes
-rw-r--r--static/website/images/LibreOffice-Suite-Impress.jpgbin0 -> 1764 bytes
-rw-r--r--static/website/images/LibreOffice-Suite-Math.jpgbin0 -> 1461 bytes
-rw-r--r--static/website/images/LibreOffice-Suite-Writer.jpgbin0 -> 1810 bytes
-rw-r--r--static/website/images/Linux.jpgbin0 -> 1580 bytes
-rw-r--r--static/website/images/Linux_logo.pngbin0 -> 498031 bytes
-rw-r--r--static/website/images/Netbeans.jpgbin0 -> 1379 bytes
-rw-r--r--static/website/images/Ngspice.jpgbin0 -> 1810 bytes
-rw-r--r--static/website/images/OpenFOAM.jpgbin0 -> 1343 bytes
-rw-r--r--static/website/images/OpenFoam-Logo.gifbin0 -> 4018 bytes
-rw-r--r--static/website/images/Orca.jpgbin0 -> 1592 bytes
-rw-r--r--static/website/images/Orca_icon.svg220
-rw-r--r--static/website/images/PERL.jpgbin0 -> 1715 bytes
-rw-r--r--static/website/images/PHP-and-MySQL.jpgbin0 -> 2159 bytes
-rw-r--r--static/website/images/Python-Old-Version.jpgbin0 -> 2165 bytes
-rw-r--r--static/website/images/Python.jpgbin0 -> 1365 bytes
-rw-r--r--static/website/images/QCad.jpgbin0 -> 2027 bytes
-rw-r--r--static/website/images/R.jpgbin0 -> 1635 bytes
-rw-r--r--static/website/images/Rlogo.jpgbin0 -> 3173 bytes
-rw-r--r--static/website/images/Ruby.jpgbin0 -> 1846 bytes
-rw-r--r--static/website/images/Ruby_logo.pngbin0 -> 196597 bytes
-rw-r--r--static/website/images/Scilab.jpgbin0 -> 2150 bytes
-rw-r--r--static/website/images/Selenium.jpgbin0 -> 1927 bytes
-rw-r--r--static/website/images/Single-Board-Heater-System.gifbin0 -> 3583 bytes
-rw-r--r--static/website/images/Single-Board-Heater-System.jpgbin0 -> 2015 bytes
-rw-r--r--static/website/images/Spoken-Tutorial-Technology.jpgbin0 -> 2458 bytes
-rw-r--r--static/website/images/Step.jpgbin0 -> 1336 bytes
-rw-r--r--static/website/images/Thunderbird.jpgbin0 -> 1658 bytes
-rw-r--r--static/website/images/Tux-Typing.jpgbin0 -> 1732 bytes
-rw-r--r--static/website/images/What-is-Spoken-Tutorial.jpgbin0 -> 2458 bytes
-rw-r--r--static/website/images/Xfig.jpgbin0 -> 2049 bytes
-rw-r--r--static/website/images/big-logo.pngbin0 -> 25192 bytes
-rw-r--r--static/website/images/camel_head.v25e738a.pngbin0 -> 2416 bytes
-rw-r--r--static/website/images/druplicon.large_.pngbin0 -> 25329 bytes
-rw-r--r--static/website/images/firefox_logo-only_RGB-300dpi.jpgbin0 -> 814507 bytes
-rw-r--r--static/website/images/gchempaint_logo.pngbin0 -> 115808 bytes
-rw-r--r--static/website/images/geogebra-logo.pngbin0 -> 50865 bytes
-rw-r--r--static/website/images/gimp-logo.pngbin0 -> 35754 bytes
-rw-r--r--static/website/images/ktouch_logo.pngbin0 -> 40752 bytes
-rw-r--r--static/website/images/logo.pngbin0 -> 4166 bytes
-rw-r--r--static/website/images/logo_gns3_small.pngbin0 -> 29034 bytes
-rw-r--r--static/website/images/logo_openfoam.jpgbin0 -> 2083 bytes
-rw-r--r--static/website/images/netbeans-logo.pngbin0 -> 60003 bytes
-rw-r--r--static/website/images/nglogo.jpgbin0 -> 6392 bytes
-rw-r--r--static/website/images/php_mysql_logo.jpgbin0 -> 38312 bytes
-rw-r--r--static/website/images/python-logo.pngbin0 -> 45421 bytes
-rw-r--r--static/website/images/pythonHi.gifbin0 -> 3765 bytes
-rw-r--r--static/website/images/python_logo_no_text.pngbin0 -> 8950 bytes
-rw-r--r--static/website/images/qcad_icon.pngbin0 -> 9644 bytes
-rw-r--r--static/website/images/rrr/Advanced-C++.jpgbin0 -> 1855 bytes
-rw-r--r--static/website/images/rrr/BASH.jpgbin0 -> 1320 bytes
-rw-r--r--static/website/images/rrr/Blender.jpgbin0 -> 1474 bytes
-rw-r--r--static/website/images/rrr/C-and-C++.jpgbin0 -> 1449 bytes
-rw-r--r--static/website/images/rrr/CellDesigner.jpgbin0 -> 1928 bytes
-rw-r--r--static/website/images/rrr/Digital-Divide.jpgbin0 -> 1911 bytes
-rw-r--r--static/website/images/rrr/Drupal.jpgbin0 -> 2052 bytes
-rw-r--r--static/website/images/rrr/Firefox.jpgbin0 -> 2328 bytes
-rw-r--r--static/website/images/rrr/GChemPaint.jpgbin0 -> 2112 bytes
-rw-r--r--static/website/images/rrr/GIMP.jpgbin0 -> 1895 bytes
-rw-r--r--static/website/images/rrr/GNS3.jpgbin0 -> 2300 bytes
-rw-r--r--static/website/images/rrr/GSchem.jpgbin0 -> 1553 bytes
-rw-r--r--static/website/images/rrr/GeoGebra-for-Engineering-drawing.jpgbin0 -> 1947 bytes
-rw-r--r--static/website/images/rrr/Geogebra.jpgbin0 -> 1947 bytes
-rw-r--r--static/website/images/rrr/Java-Business-Application.jpgbin0 -> 2153 bytes
-rw-r--r--static/website/images/rrr/Java.jpgbin0 -> 1646 bytes
-rw-r--r--static/website/images/rrr/KTouch.jpgbin0 -> 1476 bytes
-rw-r--r--static/website/images/rrr/KTurtle.jpgbin0 -> 2090 bytes
-rw-r--r--static/website/images/rrr/KiCad.jpgbin0 -> 2225 bytes
-rw-r--r--static/website/images/rrr/LaTeX.jpgbin0 -> 1575 bytes
-rw-r--r--static/website/images/rrr/LibreOffice-Suite-Base.jpgbin0 -> 1067 bytes
-rw-r--r--static/website/images/rrr/LibreOffice-Suite-Calc.jpgbin0 -> 1764 bytes
-rw-r--r--static/website/images/rrr/LibreOffice-Suite-Draw.jpgbin0 -> 1712 bytes
-rw-r--r--static/website/images/rrr/LibreOffice-Suite-Impress.jpgbin0 -> 1764 bytes
-rw-r--r--static/website/images/rrr/LibreOffice-Suite-Math.jpgbin0 -> 1461 bytes
-rw-r--r--static/website/images/rrr/LibreOffice-Suite-Writer.jpgbin0 -> 1810 bytes
-rw-r--r--static/website/images/rrr/Linux.jpgbin0 -> 1580 bytes
-rw-r--r--static/website/images/rrr/Netbeans.jpgbin0 -> 1379 bytes
-rw-r--r--static/website/images/rrr/Ngspice.jpgbin0 -> 1810 bytes
-rw-r--r--static/website/images/rrr/OpenFOAM.jpgbin0 -> 1343 bytes
-rw-r--r--static/website/images/rrr/Orca.jpgbin0 -> 1592 bytes
-rw-r--r--static/website/images/rrr/PERL.jpgbin0 -> 1715 bytes
-rw-r--r--static/website/images/rrr/PHP-and-MySQL.jpgbin0 -> 2159 bytes
-rw-r--r--static/website/images/rrr/Python-Old-Version.jpgbin0 -> 2165 bytes
-rw-r--r--static/website/images/rrr/Python.jpgbin0 -> 1365 bytes
-rw-r--r--static/website/images/rrr/QCad.jpgbin0 -> 2027 bytes
-rw-r--r--static/website/images/rrr/R.jpgbin0 -> 1635 bytes
-rw-r--r--static/website/images/rrr/Rlogo.jpgbin0 -> 3173 bytes
-rw-r--r--static/website/images/rrr/Ruby.jpgbin0 -> 1846 bytes
-rw-r--r--static/website/images/rrr/Scilab.jpgbin0 -> 2150 bytes
-rw-r--r--static/website/images/rrr/Selenium.jpgbin0 -> 1927 bytes
-rw-r--r--static/website/images/rrr/Single-Board-Heater-System.jpgbin0 -> 2015 bytes
-rw-r--r--static/website/images/rrr/Spoken-Tutorial-Technology.jpgbin0 -> 2458 bytes
-rw-r--r--static/website/images/rrr/Step.jpgbin0 -> 1336 bytes
-rw-r--r--static/website/images/rrr/Thunderbird.jpgbin0 -> 1658 bytes
-rw-r--r--static/website/images/rrr/Tux-Typing.jpgbin0 -> 1732 bytes
-rw-r--r--static/website/images/rrr/What-is-Spoken-Tutorial.jpgbin0 -> 2458 bytes
-rw-r--r--static/website/images/rrr/Xfig.jpgbin0 -> 2049 bytes
-rw-r--r--static/website/images/rrr/logo_openfoam.jpgbin0 -> 2083 bytes
-rw-r--r--static/website/images/scilab.pngbin0 -> 17761 bytes
-rw-r--r--static/website/images/thunderbird.jpgbin0 -> 592011 bytes
-rw-r--r--static/website/images/tux-typing-1.pngbin0 -> 14414 bytes
-rw-r--r--static/website/images/xfig_splash_logo.pngbin0 -> 7648 bytes
-rw-r--r--static/website/js/thread-user.js19
-rw-r--r--static/website/templates/base.html2
-rw-r--r--static/website/templates/get-question.html31
-rw-r--r--static/website/templates/index.html115
-rw-r--r--static/website/templates/recent-questions.html106
-rw-r--r--website/models.py4
-rw-r--r--website/views.py12
148 files changed, 488 insertions, 112 deletions
diff --git a/drupal_auth/models.py b/drupal_auth/models.py
index 3ad6ffb..9e7fe5f 100644
--- a/drupal_auth/models.py
+++ b/drupal_auth/models.py
@@ -10,6 +10,7 @@ class Users(models.Model):
id = models.IntegerField(primary_key=True, db_column='uid')
username = models.CharField(max_length=60L, unique=True, db_column='name')
password = models.CharField(max_length=32L, db_column='pass') # Field renamed because it was a Python reserved word.
+ email = models.CharField(max_length=200L, db_column='mail')
last_login = models.DateTimeField(auto_now_add=True)
USERNAME_FIELD = 'username'
diff --git a/forums/settings.py b/forums/settings.py
index 6ab03c0..2d6d388 100644
--- a/forums/settings.py
+++ b/forums/settings.py
@@ -119,6 +119,8 @@ MIDDLEWARE_CLASSES = (
'django.contrib.messages.middleware.MessageMiddleware',
# Uncomment the next line for simple clickjacking protection:
# 'django.middleware.clickjacking.XFrameOptionsMiddleware',
+ 'htmlmin.middleware.HtmlMinifyMiddleware',
+ 'htmlmin.middleware.MarkRequestMiddleware',
)
ROOT_URLCONF = 'forums.urls'
@@ -186,3 +188,4 @@ DATABASE_ROUTERS = ['drupal_auth.routers.DrupalAuthRouter']
TEMPLATE_CONTEXT_PROCESSORS += ('website.context_processors.admin_processor', )
COMPRESS_ENABLED = True
+HTML_MINIFY = True
diff --git a/static/website/css/main.css b/static/website/css/main.css
index b1317f8..d68d693 100644
--- a/static/website/css/main.css
+++ b/static/website/css/main.css
@@ -12,6 +12,18 @@ hr {
.navbar-default {
margin-bottom: 0;
}
+.thumbnail .caption {
+ padding: 2px 3px;
+}
+.thumbnail .caption h3 {
+ font-size: 0.8em;
+ margin-top: 0;
+ white-space: nowrap;
+ overflow: hidden;
+}
+.thumbnail .caption p{
+ margin: 0;
+}
/* override nicEditor */
#questionInstance {
background: #ffffff !important;
@@ -289,3 +301,29 @@ table .title a {
right: 5px;
bottom: 5px;
}
+#content .comment {
+ min-height: 50px;
+}
+#content .comment .modify-wrapper {
+ display: none;
+}
+#content .comment .meta {
+ position: absolute;
+ right: 0px;
+ bottom: 0px;
+ font-size: small;
+}
+#content .comment .user {
+ padding: 2px 7px;
+ background: #f5f5f5;
+}
+/* expansion */
+.col-lg-2 {
+ position: static;
+}
+.expander {
+ position: absolute;
+ left: 0;
+ width: 100%;
+ height: 300px;
+}
diff --git a/static/website/images/100x75.gif b/static/website/images/100x75.gif
new file mode 100644
index 0000000..b867847
--- /dev/null
+++ b/static/website/images/100x75.gif
Binary files differ
diff --git a/static/website/images/200px-Latex_logo_bw.gif b/static/website/images/200px-Latex_logo_bw.gif
new file mode 100644
index 0000000..89fc6e5
--- /dev/null
+++ b/static/website/images/200px-Latex_logo_bw.gif
Binary files differ
diff --git a/static/website/images/400px-LibreOffice_icons_256.png b/static/website/images/400px-LibreOffice_icons_256.png
new file mode 100644
index 0000000..e689ea0
--- /dev/null
+++ b/static/website/images/400px-LibreOffice_icons_256.png
Binary files differ
diff --git a/static/website/images/Advanced-C++.jpg b/static/website/images/Advanced-C++.jpg
new file mode 100644
index 0000000..4550d61
--- /dev/null
+++ b/static/website/images/Advanced-C++.jpg
Binary files differ
diff --git a/static/website/images/Advanced-C++.png b/static/website/images/Advanced-C++.png
new file mode 100644
index 0000000..5f41a18
--- /dev/null
+++ b/static/website/images/Advanced-C++.png
Binary files differ
diff --git a/static/website/images/BASH.jpg b/static/website/images/BASH.jpg
new file mode 100644
index 0000000..9d29c7e
--- /dev/null
+++ b/static/website/images/BASH.jpg
Binary files differ
diff --git a/static/website/images/BASH.png b/static/website/images/BASH.png
new file mode 100644
index 0000000..95b49c2
--- /dev/null
+++ b/static/website/images/BASH.png
Binary files differ
diff --git a/static/website/images/Blender.jpg b/static/website/images/Blender.jpg
new file mode 100644
index 0000000..14e8734
--- /dev/null
+++ b/static/website/images/Blender.jpg
Binary files differ
diff --git a/static/website/images/C-and-C++.jpg b/static/website/images/C-and-C++.jpg
new file mode 100644
index 0000000..b1e972b
--- /dev/null
+++ b/static/website/images/C-and-C++.jpg
Binary files differ
diff --git a/static/website/images/CellDesigner.gif b/static/website/images/CellDesigner.gif
new file mode 100644
index 0000000..b345547
--- /dev/null
+++ b/static/website/images/CellDesigner.gif
Binary files differ
diff --git a/static/website/images/CellDesigner.jpg b/static/website/images/CellDesigner.jpg
new file mode 100644
index 0000000..17f9d00
--- /dev/null
+++ b/static/website/images/CellDesigner.jpg
Binary files differ
diff --git a/static/website/images/Digital-Divide.gif b/static/website/images/Digital-Divide.gif
new file mode 100644
index 0000000..044a641
--- /dev/null
+++ b/static/website/images/Digital-Divide.gif
Binary files differ
diff --git a/static/website/images/Digital-Divide.jpg b/static/website/images/Digital-Divide.jpg
new file mode 100644
index 0000000..e6595cf
--- /dev/null
+++ b/static/website/images/Digital-Divide.jpg
Binary files differ
diff --git a/static/website/images/Drupal.jpg b/static/website/images/Drupal.jpg
new file mode 100644
index 0000000..a01f8bc
--- /dev/null
+++ b/static/website/images/Drupal.jpg
Binary files differ
diff --git a/static/website/images/Firefox.jpg b/static/website/images/Firefox.jpg
new file mode 100644
index 0000000..189daf4
--- /dev/null
+++ b/static/website/images/Firefox.jpg
Binary files differ
diff --git a/static/website/images/GChemPaing.jpg b/static/website/images/GChemPaing.jpg
new file mode 100644
index 0000000..f1c7d20
--- /dev/null
+++ b/static/website/images/GChemPaing.jpg
Binary files differ
diff --git a/static/website/images/GChemPaint.jpg b/static/website/images/GChemPaint.jpg
new file mode 100644
index 0000000..f1c7d20
--- /dev/null
+++ b/static/website/images/GChemPaint.jpg
Binary files differ
diff --git a/static/website/images/GIMP.jpg b/static/website/images/GIMP.jpg
new file mode 100644
index 0000000..af6b211
--- /dev/null
+++ b/static/website/images/GIMP.jpg
Binary files differ
diff --git a/static/website/images/GNS3.jpg b/static/website/images/GNS3.jpg
new file mode 100644
index 0000000..7656f84
--- /dev/null
+++ b/static/website/images/GNS3.jpg
Binary files differ
diff --git a/static/website/images/GNUstep_logo.svg b/static/website/images/GNUstep_logo.svg
new file mode 100644
index 0000000..4ad5e89
--- /dev/null
+++ b/static/website/images/GNUstep_logo.svg
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Sodipodi ("http://www.sodipodi.com/") -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg888"
+ sodipodi:version="0.31"
+ width="600"
+ height="600"
+ sodipodi:docname="gnustep-logo.svg"
+ version="1.1"
+ inkscape:version="0.48.3.1 r9886">
+ <metadata
+ id="metadata10">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <defs
+ id="defs890" />
+ <sodipodi:namedview
+ id="base"
+ showgrid="false"
+ inkscape:zoom="1.3666667"
+ inkscape:cx="300"
+ inkscape:cy="300"
+ inkscape:window-width="1110"
+ inkscape:window-height="999"
+ inkscape:window-x="66"
+ inkscape:window-y="52"
+ inkscape:window-maximized="0"
+ inkscape:current-layer="svg888" />
+ <path
+ style="font-size:12px;fill-rule:evenodd;stroke-width:1pt"
+ d="M 298.65625,49.999996 C 161.40808,49.999996 50,161.37552 50,298.62499 c 0,63.21343 23.65869,120.92593 62.5625,164.8125 l 102.59375,-0.5625 0.46875,-166.96875 166.5,0 0.90625,-164.68749 99.59375,0.25 C 437.13239,81.437336 371.55407,49.999996 298.65625,49.999996 z M 482.625,131.46875 c 40.15917,44.16586 64.65625,102.80469 64.65625,167.15624 0,137.24504 -111.37572,248.65626 -248.625,248.65626 -74.0333,0 -140.53204,-32.44655 -186.09375,-83.84376 L 51.375,463.78124 52.28125,550 550,549.53125 l -1.8125,-417.875 -65.5625,-0.1875 z"
+ id="path148"
+ inkscape:connector-curvature="0" />
+</svg>
diff --git a/static/website/images/GSchem.gif b/static/website/images/GSchem.gif
new file mode 100644
index 0000000..afc0828
--- /dev/null
+++ b/static/website/images/GSchem.gif
Binary files differ
diff --git a/static/website/images/GSchem.jpg b/static/website/images/GSchem.jpg
new file mode 100644
index 0000000..e0cf4e1
--- /dev/null
+++ b/static/website/images/GSchem.jpg
Binary files differ
diff --git a/static/website/images/GeoGebra-for-Engineering-drawing.jpg b/static/website/images/GeoGebra-for-Engineering-drawing.jpg
new file mode 100644
index 0000000..3ff0a5e
--- /dev/null
+++ b/static/website/images/GeoGebra-for-Engineering-drawing.jpg
Binary files differ
diff --git a/static/website/images/Geogebra.jpg b/static/website/images/Geogebra.jpg
new file mode 100644
index 0000000..3ff0a5e
--- /dev/null
+++ b/static/website/images/Geogebra.jpg
Binary files differ
diff --git a/static/website/images/Java-Business-Application.gif b/static/website/images/Java-Business-Application.gif
new file mode 100644
index 0000000..ae6769a
--- /dev/null
+++ b/static/website/images/Java-Business-Application.gif
Binary files differ
diff --git a/static/website/images/Java-Business-Application.jpg b/static/website/images/Java-Business-Application.jpg
new file mode 100644
index 0000000..e8046e4
--- /dev/null
+++ b/static/website/images/Java-Business-Application.jpg
Binary files differ
diff --git a/static/website/images/Java.jpg b/static/website/images/Java.jpg
new file mode 100644
index 0000000..9934a4a
--- /dev/null
+++ b/static/website/images/Java.jpg
Binary files differ
diff --git a/static/website/images/Java_logo.png b/static/website/images/Java_logo.png
new file mode 100644
index 0000000..2114751
--- /dev/null
+++ b/static/website/images/Java_logo.png
Binary files differ
diff --git a/static/website/images/KTouch.jpg b/static/website/images/KTouch.jpg
new file mode 100644
index 0000000..4221d96
--- /dev/null
+++ b/static/website/images/KTouch.jpg
Binary files differ
diff --git a/static/website/images/KTurtle.jpg b/static/website/images/KTurtle.jpg
new file mode 100644
index 0000000..733e2c1
--- /dev/null
+++ b/static/website/images/KTurtle.jpg
Binary files differ
diff --git a/static/website/images/KTurtle_logo.png b/static/website/images/KTurtle_logo.png
new file mode 100644
index 0000000..5dea09b
--- /dev/null
+++ b/static/website/images/KTurtle_logo.png
Binary files differ
diff --git a/static/website/images/KiCad.jpg b/static/website/images/KiCad.jpg
new file mode 100644
index 0000000..8df8ac0
--- /dev/null
+++ b/static/website/images/KiCad.jpg
Binary files differ
diff --git a/static/website/images/Kicad_logo_new.png b/static/website/images/Kicad_logo_new.png
new file mode 100644
index 0000000..f28742d
--- /dev/null
+++ b/static/website/images/Kicad_logo_new.png
Binary files differ
diff --git a/static/website/images/LaTeX.jpg b/static/website/images/LaTeX.jpg
new file mode 100644
index 0000000..8fb73db
--- /dev/null
+++ b/static/website/images/LaTeX.jpg
Binary files differ
diff --git a/static/website/images/LibreOffice-Suite-Base.jpg b/static/website/images/LibreOffice-Suite-Base.jpg
new file mode 100644
index 0000000..0d9816a
--- /dev/null
+++ b/static/website/images/LibreOffice-Suite-Base.jpg
Binary files differ
diff --git a/static/website/images/LibreOffice-Suite-Calc.jpg b/static/website/images/LibreOffice-Suite-Calc.jpg
new file mode 100644
index 0000000..51d6cc0
--- /dev/null
+++ b/static/website/images/LibreOffice-Suite-Calc.jpg
Binary files differ
diff --git a/static/website/images/LibreOffice-Suite-Draw.jpg b/static/website/images/LibreOffice-Suite-Draw.jpg
new file mode 100644
index 0000000..9c42a88
--- /dev/null
+++ b/static/website/images/LibreOffice-Suite-Draw.jpg
Binary files differ
diff --git a/static/website/images/LibreOffice-Suite-Impress.jpg b/static/website/images/LibreOffice-Suite-Impress.jpg
new file mode 100644
index 0000000..ce82703
--- /dev/null
+++ b/static/website/images/LibreOffice-Suite-Impress.jpg
Binary files differ
diff --git a/static/website/images/LibreOffice-Suite-Math.jpg b/static/website/images/LibreOffice-Suite-Math.jpg
new file mode 100644
index 0000000..b33de64
--- /dev/null
+++ b/static/website/images/LibreOffice-Suite-Math.jpg
Binary files differ
diff --git a/static/website/images/LibreOffice-Suite-Writer.jpg b/static/website/images/LibreOffice-Suite-Writer.jpg
new file mode 100644
index 0000000..adce0fb
--- /dev/null
+++ b/static/website/images/LibreOffice-Suite-Writer.jpg
Binary files differ
diff --git a/static/website/images/Linux.jpg b/static/website/images/Linux.jpg
new file mode 100644
index 0000000..491bddb
--- /dev/null
+++ b/static/website/images/Linux.jpg
Binary files differ
diff --git a/static/website/images/Linux_logo.png b/static/website/images/Linux_logo.png
new file mode 100644
index 0000000..837f706
--- /dev/null
+++ b/static/website/images/Linux_logo.png
Binary files differ
diff --git a/static/website/images/Netbeans.jpg b/static/website/images/Netbeans.jpg
new file mode 100644
index 0000000..66c5753
--- /dev/null
+++ b/static/website/images/Netbeans.jpg
Binary files differ
diff --git a/static/website/images/Ngspice.jpg b/static/website/images/Ngspice.jpg
new file mode 100644
index 0000000..a319e31
--- /dev/null
+++ b/static/website/images/Ngspice.jpg
Binary files differ
diff --git a/static/website/images/OpenFOAM.jpg b/static/website/images/OpenFOAM.jpg
new file mode 100644
index 0000000..7e20f33
--- /dev/null
+++ b/static/website/images/OpenFOAM.jpg
Binary files differ
diff --git a/static/website/images/OpenFoam-Logo.gif b/static/website/images/OpenFoam-Logo.gif
new file mode 100644
index 0000000..baf895f
--- /dev/null
+++ b/static/website/images/OpenFoam-Logo.gif
Binary files differ
diff --git a/static/website/images/Orca.jpg b/static/website/images/Orca.jpg
new file mode 100644
index 0000000..cf7797c
--- /dev/null
+++ b/static/website/images/Orca.jpg
Binary files differ
diff --git a/static/website/images/Orca_icon.svg b/static/website/images/Orca_icon.svg
new file mode 100644
index 0000000..64e6a82
--- /dev/null
+++ b/static/website/images/Orca_icon.svg
@@ -0,0 +1,220 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" width="48" height="48" id="svg5596">
+ <defs id="defs5599">
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient12663" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.984808,0.173648,-0.173648,0.984808,-6.57769,0.52398)"/>
+ <linearGradient id="linearGradient11599">
+ <stop style="stop-color:#5b5b5b;stop-opacity:1" offset="0" id="stop11601"/>
+ <stop style="stop-color:#979797;stop-opacity:1" offset="0.5" id="stop11603"/>
+ <stop style="stop-color:#454545;stop-opacity:1" offset="1" id="stop11605"/>
+ </linearGradient>
+ <linearGradient id="linearGradient11573">
+ <stop style="stop-color:#ef2929;stop-opacity:1" offset="0" id="stop11575"/>
+ <stop style="stop-color:#f79090;stop-opacity:1" offset="0.5" id="stop11585"/>
+ <stop style="stop-color:#ef2929;stop-opacity:1" offset="1" id="stop11577"/>
+ </linearGradient>
+ <linearGradient id="linearGradient3394">
+ <stop style="stop-color:#cc0000;stop-opacity:0.49803922" offset="0" id="stop3402"/>
+ <stop style="stop-color:#cc0000;stop-opacity:1" offset="1" id="stop3404"/>
+ </linearGradient>
+ <linearGradient id="linearGradient3243">
+ <stop style="stop-color:#ef2929;stop-opacity:1" offset="0" id="stop3245"/>
+ <stop style="stop-color:#efc8c8;stop-opacity:1" offset="0.5" id="stop3253"/>
+ <stop style="stop-color:#ef2929;stop-opacity:1" offset="1" id="stop3247"/>
+ </linearGradient>
+ <linearGradient id="linearGradient3229">
+ <stop style="stop-color:#ef2929;stop-opacity:1" offset="0" id="stop3231"/>
+ <stop style="stop-color:#f35e5e;stop-opacity:1" offset="1" id="stop3241"/>
+ </linearGradient>
+ <linearGradient id="linearGradient3197">
+ <stop style="stop-color:#cc0000;stop-opacity:1" offset="0" id="stop3199"/>
+ <stop style="stop-color:#cc0000;stop-opacity:0.49803922" offset="0" id="stop3205"/>
+ <stop style="stop-color:#cc0000;stop-opacity:1" offset="1" id="stop3201"/>
+ </linearGradient>
+ <linearGradient x1="32.169682" y1="32.340691" x2="36.310467" y2="37.614323" id="linearGradient2552" xlink:href="#linearGradient2215" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.955799,0.125613,-0.13219,1.005843,8.433071,-4.87925)"/>
+ <linearGradient x1="16.920895" y1="41.527054" x2="14.717065" y2="27.556486" id="linearGradient4158" xlink:href="#linearGradient4152" gradientUnits="userSpaceOnUse" gradientTransform="translate(-0.386129,-2.59755)"/>
+ <linearGradient id="linearGradient4199">
+ <stop style="stop-color:#ffffff;stop-opacity:0.69072163" offset="0" id="stop4201"/>
+ <stop style="stop-color:#000000;stop-opacity:0" offset="1" id="stop4203"/>
+ </linearGradient>
+ <linearGradient x1="5.5588484" y1="8.7893238" x2="26.936853" y2="48.565983" id="linearGradient4197" xlink:href="#linearGradient4199" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.015688,0,0,1,-0.427129,-2.59755)"/>
+ <linearGradient id="linearGradient4152">
+ <stop style="stop-color:#788492;stop-opacity:1" offset="0" id="stop4154"/>
+ <stop style="stop-color:#fafafa;stop-opacity:1" offset="1" id="stop4156"/>
+ </linearGradient>
+ <linearGradient x1="5.4860573" y1="32.173634" x2="12.296931" y2="27.665829" id="linearGradient4185" xlink:href="#linearGradient4152" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.290919,0,0,1.173295,-3.854317,-8.380223)"/>
+ <linearGradient x1="34.868965" y1="39.944828" x2="34.868965" y2="43.475861" id="linearGradient4273" xlink:href="#linearGradient4242" gradientUnits="userSpaceOnUse" gradientTransform="translate(-0.386129,-2.59755)"/>
+ <linearGradient x1="36.634483" y1="38.124138" x2="36.634483" y2="42.427586" id="linearGradient4265" xlink:href="#linearGradient4242" gradientUnits="userSpaceOnUse" gradientTransform="translate(-0.386129,-2.59755)"/>
+ <linearGradient x1="38.896549" y1="38.482758" x2="42.427586" y2="38.482758" id="linearGradient4256" xlink:href="#linearGradient4242" gradientUnits="userSpaceOnUse" gradientTransform="translate(-0.386129,-2.59755)"/>
+ <linearGradient id="linearGradient4242">
+ <stop style="stop-color:#000000;stop-opacity:1" offset="0" id="stop4244"/>
+ <stop style="stop-color:#000000;stop-opacity:0" offset="1" id="stop4246"/>
+ </linearGradient>
+ <linearGradient x1="40.496552" y1="37.848274" x2="44.193104" y2="37.848274" id="linearGradient4248" xlink:href="#linearGradient4242" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.864739,0,0,0.753105,5.591471,7.01265)"/>
+ <linearGradient x1="-5.2845793" y1="19.362175" x2="33.728188" y2="66.499512" id="linearGradient4146" xlink:href="#linearGradient2949" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.943596,0,0,0.963374,6.792471,4.03365)"/>
+ <linearGradient id="linearGradient2215">
+ <stop style="stop-color:#000000;stop-opacity:1" offset="0" id="stop2217"/>
+ <stop style="stop-color:#505050;stop-opacity:1" offset="1" id="stop2219"/>
+ </linearGradient>
+ <linearGradient x1="26.247757" y1="38.03194" x2="23.782515" y2="36.457325" id="linearGradient4277" xlink:href="#linearGradient2215" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0,0.967422,0.946165,0,-16.09433,2.21785)"/>
+ <linearGradient id="linearGradient2949">
+ <stop style="stop-color:#ffffff;stop-opacity:0.45038167" offset="0" id="stop2951"/>
+ <stop style="stop-color:#ffffff;stop-opacity:0.31297711" offset="1" id="stop2953"/>
+ </linearGradient>
+ <linearGradient x1="29.425014" y1="33.593369" x2="43.14069" y2="38.189564" id="linearGradient4301" xlink:href="#linearGradient2949" gradientUnits="userSpaceOnUse" gradientTransform="translate(-14.76113,-7.34755)"/>
+ <linearGradient id="linearGradient2879">
+ <stop style="stop-color:#000000;stop-opacity:0.17557251" offset="0" id="stop2881"/>
+ <stop style="stop-color:#000000;stop-opacity:0" offset="1" id="stop2883"/>
+ </linearGradient>
+ <radialGradient cx="20.152544" cy="33.636894" r="15.291184" fx="20.152544" fy="33.636894" id="radialGradient4312" xlink:href="#linearGradient2879" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,0.257225,0,24.98463)"/>
+ <linearGradient x1="52.717937" y1="2.3161638" x2="67.465988" y2="2.3161638" id="linearGradient7025" xlink:href="#linearGradient6721" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.862482,0,0,0.580718,-16.25697,11.01348)"/>
+ <linearGradient x1="53.168766" y1="24.244797" x2="69.690994" y2="24.244797" id="linearGradient7020" xlink:href="#linearGradient6651" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.71944,0,0,0.718914,-7.696252,9.471728)"/>
+ <linearGradient x1="61.871845" y1="29.615223" x2="61.871845" y2="41.459263" id="linearGradient7017" xlink:href="#linearGradient6629" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.888619,0,0,0.718914,-18.29768,9.471728)"/>
+ <linearGradient x1="49.853039" y1="64.259621" x2="62.768223" y2="64.259621" id="linearGradient7014" xlink:href="#linearGradient6748" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.718914,0,0,0.718914,-1.897103,-22.42481)"/>
+ <linearGradient x1="60.168766" y1="40.119797" x2="60.440994" y2="43.869797" id="linearGradient7010" xlink:href="#linearGradient6651" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.737307,0,0,0.770854,-8.532023,7.121636)"/>
+ <linearGradient x1="48.25" y1="54.75" x2="48.25" y2="71.25" id="linearGradient7005" xlink:href="#linearGradient6835" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.718914,0,0,0.718914,-1.897103,-20.68606)"/>
+ <radialGradient cx="26.78167" cy="42.343147" r="14.407301" fx="26.78167" fy="42.343147" id="radialGradient6903" xlink:href="#linearGradient6975" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,0.282209,0,30.39355)"/>
+ <linearGradient x1="13.236155" y1="37.752247" x2="7.7521091" y2="42.282146" id="linearGradient2452" xlink:href="#linearGradient2446" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.852298,0,0,0.852298,-1.675107,3.753977)"/>
+ <radialGradient cx="26.78167" cy="42.343147" r="14.407301" fx="26.78167" fy="42.343147" id="radialGradient6981" xlink:href="#linearGradient6975" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,0.282209,0,30.39355)"/>
+ <radialGradient cx="15.415101" cy="35.356506" r="7.5791559" fx="15.415101" fy="35.356506" id="radialGradient6969" xlink:href="#linearGradient6963" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.994655,0,0,0.969322,-4.583017,0.165919)"/>
+ <linearGradient x1="28.058632" y1="18.867767" x2="33.436985" y2="23.742767" id="linearGradient6957" xlink:href="#linearGradient6951" gradientUnits="userSpaceOnUse" gradientTransform="translate(-3.90695,-1.802856)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="23.109331" y2="33.438831" id="linearGradient6945" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(-53.05087,38.14868)"/>
+ <linearGradient id="linearGradient6939">
+ <stop style="stop-color:#dddddd;stop-opacity:1" offset="0" id="stop6941"/>
+ <stop style="stop-color:#ffffff;stop-opacity:1" offset="0.33333334" id="stop6947"/>
+ <stop style="stop-color:#b7b7b7;stop-opacity:1" offset="0.66666669" id="stop6949"/>
+ <stop style="stop-color:#dddddd;stop-opacity:1" offset="1" id="stop6943"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6951">
+ <stop style="stop-color:#6e3d09;stop-opacity:1" offset="0" id="stop6953"/>
+ <stop style="stop-color:#ea8113;stop-opacity:1" offset="0.24242425" id="stop6959"/>
+ <stop style="stop-color:#5c3307;stop-opacity:1" offset="0.62121212" id="stop6961"/>
+ <stop style="stop-color:#e07c12;stop-opacity:1" offset="1" id="stop6955"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6963">
+ <stop style="stop-color:#696969;stop-opacity:1" offset="0" id="stop6965"/>
+ <stop style="stop-color:#000000;stop-opacity:1" offset="1" id="stop6967"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6975">
+ <stop style="stop-color:#000000;stop-opacity:1" offset="0" id="stop6977"/>
+ <stop style="stop-color:#000000;stop-opacity:0" offset="1" id="stop6979"/>
+ </linearGradient>
+ <linearGradient id="linearGradient2446">
+ <stop style="stop-color:#ffffff;stop-opacity:1" offset="0" id="stop2448"/>
+ <stop style="stop-color:#ffffff;stop-opacity:0" offset="1" id="stop2450"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6629">
+ <stop style="stop-color:#aeaeae;stop-opacity:1" offset="0" id="stop6631"/>
+ <stop style="stop-color:#c4c4c4;stop-opacity:0" offset="1" id="stop6633"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6651">
+ <stop style="stop-color:#f2f2f2;stop-opacity:1" offset="0" id="stop6653"/>
+ <stop style="stop-color:#c3c3c3;stop-opacity:1" offset="1" id="stop6655"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6721">
+ <stop style="stop-color:#729fcf;stop-opacity:1" offset="0" id="stop6723"/>
+ <stop style="stop-color:#3c74b1;stop-opacity:1" offset="1" id="stop6725"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6748">
+ <stop style="stop-color:#729fcf;stop-opacity:1" offset="0" id="stop6750"/>
+ <stop style="stop-color:#2b5582;stop-opacity:1" offset="1" id="stop6752"/>
+ </linearGradient>
+ <linearGradient id="linearGradient6835">
+ <stop style="stop-color:#ffffff;stop-opacity:1" offset="0" id="stop6837"/>
+ <stop style="stop-color:#ffffff;stop-opacity:0" offset="1" id="stop6839"/>
+ </linearGradient>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient2282" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(38.07104,6.705107)"/>
+ <linearGradient x1="56.162964" y1="41.83876" x2="54.483982" y2="40.247776" id="linearGradient3203" xlink:href="#linearGradient3197" gradientUnits="userSpaceOnUse"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient3211" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(38.07104,6.705107)"/>
+ <linearGradient x1="56.162964" y1="41.83876" x2="54.483982" y2="40.247776" id="linearGradient3213" xlink:href="#linearGradient3197" gradientUnits="userSpaceOnUse"/>
+ <linearGradient x1="54.837135" y1="39.805828" x2="56.428524" y2="41.308434" id="linearGradient3249" xlink:href="#linearGradient3243" gradientUnits="userSpaceOnUse"/>
+ <linearGradient x1="12.813026" y1="32.056629" x2="15.119371" y2="34.001175" id="linearGradient3263" xlink:href="#linearGradient3243" gradientUnits="userSpaceOnUse"/>
+ <linearGradient x1="54.837135" y1="39.805828" x2="56.428524" y2="41.308434" id="linearGradient3266" xlink:href="#linearGradient3243" gradientUnits="userSpaceOnUse" gradientTransform="translate(-51.85143,3.42342)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient3269" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(-13.78039,10.12853)"/>
+ <linearGradient x1="2.1018243" y1="43.936359" x2="4.1351514" y2="45.880901" id="linearGradient11844" xlink:href="#linearGradient11573" gradientUnits="userSpaceOnUse"/>
+ <linearGradient x1="19.268993" y1="25.539364" x2="21.398565" y2="27.616491" id="linearGradient11846" xlink:href="#linearGradient11573" gradientUnits="userSpaceOnUse" gradientTransform="translate(0.374275,-0.411242)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient11848" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(-13.78039,10.12853)"/>
+ <linearGradient x1="27.847828" y1="16.542765" x2="29.623844" y2="18.266338" id="linearGradient11850" xlink:href="#linearGradient11573" gradientUnits="userSpaceOnUse" gradientTransform="translate(1.117749,-1.179036)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient11852" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(7.629341,-13.05859)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient11854" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(3.014336,-8.04609)"/>
+ <linearGradient x1="27.847828" y1="16.542765" x2="29.623844" y2="18.266338" id="linearGradient11856" xlink:href="#linearGradient11599" gradientUnits="userSpaceOnUse" gradientTransform="translate(11.0575,-11.78)"/>
+ <linearGradient x1="52.717937" y1="2.3161638" x2="67.465988" y2="2.3161638" id="linearGradient14628" xlink:href="#linearGradient6721" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.862482,0,0,0.580718,-16.25697,11.01348)"/>
+ <linearGradient x1="53.168766" y1="24.244797" x2="69.690994" y2="24.244797" id="linearGradient14626" xlink:href="#linearGradient6651" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.71944,0,0,0.718914,-7.696252,9.471728)"/>
+ <linearGradient x1="61.871845" y1="29.615223" x2="61.871845" y2="41.459263" id="linearGradient14624" xlink:href="#linearGradient6629" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.888619,0,0,0.718914,-18.29768,9.471728)"/>
+ <linearGradient x1="49.853039" y1="64.259621" x2="62.768223" y2="64.259621" id="linearGradient14622" xlink:href="#linearGradient6748" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.718914,0,0,0.718914,-1.897103,-22.42481)"/>
+ <linearGradient x1="60.168766" y1="40.119797" x2="60.440994" y2="43.869797" id="linearGradient14620" xlink:href="#linearGradient6651" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.737307,0,0,0.770854,-8.532023,7.121636)"/>
+ <linearGradient x1="48.25" y1="54.75" x2="48.25" y2="71.25" id="linearGradient14618" xlink:href="#linearGradient6835" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.718914,0,0,0.718914,-1.897103,-20.68606)"/>
+ <radialGradient cx="26.78167" cy="42.343147" r="14.407301" fx="26.78167" fy="42.343147" id="radialGradient14616" xlink:href="#linearGradient6975" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,0.282209,0,30.39355)"/>
+ <linearGradient x1="13.236155" y1="37.752247" x2="7.7521091" y2="42.282146" id="linearGradient14614" xlink:href="#linearGradient2446" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.852298,0,0,0.852298,-1.675107,3.753977)"/>
+ <radialGradient cx="26.78167" cy="42.343147" r="14.407301" fx="26.78167" fy="42.343147" id="radialGradient14612" xlink:href="#linearGradient6975" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1,0,0,0.282209,0,30.39355)"/>
+ <radialGradient cx="15.415101" cy="35.356506" r="7.5791559" fx="15.415101" fy="35.356506" id="radialGradient14610" xlink:href="#linearGradient6963" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.994655,0,0,0.969322,-4.583017,0.165919)"/>
+ <linearGradient x1="28.058632" y1="18.867767" x2="33.436985" y2="23.742767" id="linearGradient14608" xlink:href="#linearGradient6951" gradientUnits="userSpaceOnUse" gradientTransform="translate(-3.90695,-1.802856)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="23.109331" y2="33.438831" id="linearGradient14606" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(-3.90695,-1.802856)"/>
+ <linearGradient id="linearGradient14596">
+ <stop style="stop-color:#bdbdbd;stop-opacity:1" offset="0" id="stop14598"/>
+ <stop style="stop-color:#e2e2e2;stop-opacity:1" offset="0.33333334" id="stop14600"/>
+ <stop style="stop-color:#a3a3a3;stop-opacity:1" offset="0.66666669" id="stop14602"/>
+ <stop style="stop-color:#dddddd;stop-opacity:1" offset="1" id="stop14604"/>
+ </linearGradient>
+ <linearGradient id="linearGradient14586">
+ <stop style="stop-color:#6e3d09;stop-opacity:1" offset="0" id="stop14588"/>
+ <stop style="stop-color:#ea8113;stop-opacity:1" offset="0.24242425" id="stop14590"/>
+ <stop style="stop-color:#5c3307;stop-opacity:1" offset="0.62121212" id="stop14592"/>
+ <stop style="stop-color:#e07c12;stop-opacity:1" offset="1" id="stop14594"/>
+ </linearGradient>
+ <linearGradient id="linearGradient14580">
+ <stop style="stop-color:#696969;stop-opacity:1" offset="0" id="stop14582"/>
+ <stop style="stop-color:#000000;stop-opacity:1" offset="1" id="stop14584"/>
+ </linearGradient>
+ <linearGradient id="linearGradient14562">
+ <stop style="stop-color:#aeaeae;stop-opacity:1" offset="0" id="stop14564"/>
+ <stop style="stop-color:#c4c4c4;stop-opacity:0" offset="1" id="stop14566"/>
+ </linearGradient>
+ <linearGradient id="linearGradient14556">
+ <stop style="stop-color:#f2f2f2;stop-opacity:1" offset="0" id="stop14558"/>
+ <stop style="stop-color:#c3c3c3;stop-opacity:1" offset="1" id="stop14560"/>
+ </linearGradient>
+ <linearGradient id="linearGradient14550">
+ <stop style="stop-color:#729fcf;stop-opacity:1" offset="0" id="stop14552"/>
+ <stop style="stop-color:#3c74b1;stop-opacity:1" offset="1" id="stop14554"/>
+ </linearGradient>
+ <linearGradient id="linearGradient14544">
+ <stop style="stop-color:#729fcf;stop-opacity:1" offset="0" id="stop14546"/>
+ <stop style="stop-color:#2b5582;stop-opacity:1" offset="1" id="stop14548"/>
+ </linearGradient>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient14954" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(4.1746,-9.271088)"/>
+ <linearGradient x1="2.1018243" y1="43.936359" x2="4.1351514" y2="45.880901" id="linearGradient3403" xlink:href="#linearGradient11573" gradientUnits="userSpaceOnUse"/>
+ <linearGradient x1="19.268993" y1="25.539364" x2="21.398565" y2="27.616491" id="linearGradient3405" xlink:href="#linearGradient11573" gradientUnits="userSpaceOnUse" gradientTransform="translate(0.374275,-0.411242)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient3407" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(-13.78039,10.12853)"/>
+ <linearGradient x1="27.847828" y1="16.542765" x2="29.623844" y2="18.266338" id="linearGradient3409" xlink:href="#linearGradient11573" gradientUnits="userSpaceOnUse" gradientTransform="translate(1.117749,-1.179036)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient3411" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(7.629341,-13.05859)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient3413" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="translate(4.1746,-9.271088)"/>
+ <linearGradient x1="27.847828" y1="16.542765" x2="29.623844" y2="18.266338" id="linearGradient3415" xlink:href="#linearGradient11599" gradientUnits="userSpaceOnUse" gradientTransform="translate(11.0575,-11.78)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient3417" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.984808,0.173648,-0.173648,0.984808,-6.57769,0.52398)"/>
+ <linearGradient x1="19.394735" y1="30.001331" x2="22.225447" y2="32.643337" id="linearGradient3421" xlink:href="#linearGradient6939" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.984808,0.173648,-0.173648,0.984808,-6.57769,0.52398)"/>
+ </defs>
+ <path d="M 1.7363208,32.76676 C 8.3248508,34.7511 17.971871,31.961 22.133911,29.7435 C 30.287021,25.39957 33.685501,31.30328 34.801441,32.05439 C 36.530681,33.53598 31.237641,37.58917 31.573111,40.88925 C 31.759321,42.72109 32.505111,43.61576 32.505111,43.61576 C 33.965331,39.48164 38.580621,41.17748 38.314881,36.8757 C 41.818991,38.85336 42.570681,35.7035 46.636481,36.33108 C 46.061891,35.45605 45.320271,34.15277 43.725911,33.46963 C 42.026491,32.83221 39.153851,32.92116 38.407801,30.75286 C 38.271601,28.30032 38.308721,15.21709 32.388811,11.21743 C 31.523921,9.4752702 32.457261,6.9929501 34.140491,5.2970101 C 35.662491,3.7635101 37.948761,2.3513201 38.731321,1.4507101 C 35.188721,1.4126301 31.659811,2.5223101 28.205141,4.3913401 C 26.403551,5.3660301 24.817171,6.7674501 23.692801,7.2919301 C 13.541991,5.2789001 2.3520908,13.65739 1.2225508,28.3597 C 1.1314008,29.5462 1.1494908,32.39912 1.7363208,32.76676 z " style="fill:url(#linearGradient2552);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path2498"/>
+ <path d="M 5.2335808,32.81055 C 11.622781,33.50363 18.209491,30.83856 22.270961,28.96994 C 29.345491,25.669 32.552281,29.14676 34.135611,30.66586 C 34.308901,30.89994 34.307271,29.07354 32.433581,27.87203 C 24.899961,24.33752 34.461671,24.30594 33.953881,23.00814 C 33.369651,21.51499 26.991311,22.37165 25.878431,22.75436 C 21.878331,24.12997 20.471841,26.36926 18.438621,26.78615 C 14.693991,27.4985 11.800931,25.476 9.4333807,28.43233 C 5.2947208,33.60023 4.5869808,32.74041 5.2335808,32.81055 z " style="opacity:1;fill:url(#linearGradient4158);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.95343304;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4148"/>
+ <path d="M 2.2770308,32.01551 C 4.8209308,24.64639 13.446641,25.07661 16.854831,21.56745 C 20.208301,18.11463 23.971781,7.3217801 36.560451,18.71166 C 36.606471,18.75329 34.575411,12.91689 31.738591,10.99031 C 30.909681,9.3119602 24.850741,7.3220301 23.773151,7.8273001 C 13.337511,5.8880001 2.9583508,14.66672 1.8758008,28.91892 C 1.7889808,30.062 1.7146108,31.66134 2.2770308,32.01551 z " style="opacity:1;fill:url(#linearGradient4197);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.95343304;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4188"/>
+ <path d="M 8.1097416,25.842531 C 7.4359593,24.884336 10.739306,21.488867 11.911822,22.16946 C 12.628902,23.209751 9.601696,27.066888 8.1097416,25.842531 z " style="fill:url(#linearGradient4185);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" id="path4168"/>
+ <path d="M 34.151781,40.87835 L 34.813841,40.38179 L 34.758671,37.34731 L 34.151781,40.87835 z " style="opacity:0.25628142;fill:url(#linearGradient4273);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" id="path4206"/>
+ <path d="M 35.862121,39.83007 L 36.634531,39.44386 L 36.137981,35.52662 L 35.862121,39.83007 z " style="opacity:0.25125631;fill:url(#linearGradient4265);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" id="path4217"/>
+ <path d="M 41.158671,36.9611 L 42.041431,36.63007 L 38.510401,34.80938 L 41.158671,36.9611 z " style="opacity:0.23115575;fill:url(#linearGradient4256);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" id="path4219"/>
+ <path d="M 42.900461,36.32662 L 43.806951,36.07732 L 40.610401,34.70615 L 42.900461,36.32662 z " style="opacity:0.22613065;fill:url(#linearGradient4248);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" id="path4221"/>
+ <path d="M 2.8895108,32.01551 C 8.8412607,33.57361 17.413831,30.88571 21.341101,28.74943 C 29.034351,24.56461 34.981181,30.34046 35.680621,32.03634 C 36.870381,33.64044 34.470411,35.76668 32.930801,38.8575 C 32.140061,40.44493 32.572791,41.39575 32.572791,41.39575 C 33.919401,39.44691 38.212791,40.2735 37.243291,35.16237 C 41.137221,38.06131 42.424171,35.30807 44.721431,35.32427 C 43.991751,34.38754 43.191931,34.35336 42.406261,34.16399 C 40.802691,33.54991 38.483161,33.60527 37.435441,31.04765 C 37.306931,28.68493 37.929421,17.05318 31.636311,11.87419 C 30.555041,10.54939 30.725551,7.9521601 32.405301,5.7286701 C 32.900791,5.0728001 34.849721,3.5095901 35.588151,2.6419701 C 32.510521,3.2240101 31.213591,3.7627101 27.953781,5.5632901 C 26.253811,6.5022701 25.110451,7.7639701 24.049501,8.2692401 C 14.206081,6.5067201 4.6196108,13.42929 2.4047308,27.23954 C 2.2232108,28.37135 2.0706208,31.66134 2.8895108,32.01551 z " style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4146);stroke-width:0.95343304;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4134"/>
+ <g id="g3432">
+ <g transform="matrix(0.984808,0.173648,-0.173648,0.984808,4.319821,-3.493951)" id="g11820">
+ <g transform="translate(3.782059,-4.305959)" id="g3379">
+ <path d="M 3.6678274,43.136096 L 5.3838174,44.716363 C 6.4337554,43.515919 11.191757,38.438712 11.191757,38.438712 L 9.4548369,36.923036 C 9.4548369,36.923036 4.9455924,41.774015 3.6678274,43.136096 z " style="color:#000000;fill:url(#linearGradient3403);fill-opacity:1;fill-rule:nonzero;stroke:#cc0000;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" id="path2292"/>
+ <path d="M 9.3798921,36.977632 L 11.095882,38.557899 C 12.14582,37.357455 32.719517,15.450785 32.719517,15.450785 L 30.982597,13.935109 C 30.982597,13.935109 10.657657,35.615551 9.3798921,36.977632 z " style="color:#000000;fill:url(#linearGradient3407);fill-opacity:1;fill-rule:nonzero;stroke:#888a85;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" id="path6935"/>
+ </g>
+ <path d="M 34.676553,9.7053399 L 36.455043,11.160607 C 37.504981,9.9601639 41.783263,5.5878763 42.1,5.110676 C 43.214868,4.1209793 41.493403,2.3741139 40.30058,3.72 C 39.73371,4.2605973 35.954318,8.3432589 34.676553,9.7053399 z " style="color:#000000;fill:url(#linearGradient3415);fill-opacity:1;fill-rule:nonzero;stroke:#2e3436;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" id="path11595"/>
+ </g>
+ <path d="M 3.1259863,37.385763 C 1.7298033,38.631621 2.6856953,40.157401 4.5414953,39.24 C 4.8993219,39.067037 6.4911218,37.770435 6.4911218,37.770435 L 5.024554,35.956942 C 5.024554,35.956942 4.6208613,36.266256 3.1259863,37.385763 z " style="color:#000000;fill:url(#linearGradient3421);fill-opacity:1;fill-rule:nonzero;stroke:#888a85;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" id="path4782"/>
+ <path d="M 45.38,7.76 C 45.38,7.76 50.38,17.76 45.38,17.76 C 40.38,17.76 45.630004,12.759996 45.38,7.76 z " style="fill:none;fill-rule:evenodd;stroke:#2e3436;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" id="path4784"/>
+ <path d="M 8.8749989 37.75 A 1.2499999 1.2499999 0 1 1 6.3749992,37.75 A 1.2499999 1.2499999 0 1 1 8.8749989 37.75 z" transform="matrix(0.237867,0,0,0.237867,1.543598,29.32319)" style="opacity:0.53333285;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" id="path2454"/>
+ </g>
+ <path d="M 19.450291,23.22383 C 22.168421,25.03662 28.856191,30.5826 25.680471,31.40984 C 15.059251,31.02011 16.896751,26.26768 14.182961,25.53368 C 12.719161,24.04968 17.982161,22.53604 19.450291,23.22383 z " style="fill:url(#linearGradient4277);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.96744114;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4275"/>
+ <path d="M 19.146461,24.13864 C 21.378451,25.77465 26.563631,29.81803 25.199871,30.60107 C 21.104601,30.05266 19.021051,29.4458 17.949761,28.25613 C 16.602891,26.76044 16.164111,25.40127 15.160761,25.03427 C 14.934401,25.05287 17.678331,23.45085 19.146461,24.13864 z " style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient4301);stroke-width:0.96744114;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4279"/>
+ <path d="M 35.443728 33.636894 A 15.291184 3.9332814 0 1 1 4.8613596,33.636894 A 15.291184 3.9332814 0 1 1 35.443728 33.636894 z" transform="matrix(1.475993,0,0,0.71076,-6.402967,20.77848)" style="opacity:1;color:#000000;fill:url(#radialGradient4312);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" id="path4310"/>
+</svg> \ No newline at end of file
diff --git a/static/website/images/PERL.jpg b/static/website/images/PERL.jpg
new file mode 100644
index 0000000..5159d78
--- /dev/null
+++ b/static/website/images/PERL.jpg
Binary files differ
diff --git a/static/website/images/PHP-and-MySQL.jpg b/static/website/images/PHP-and-MySQL.jpg
new file mode 100644
index 0000000..d8d7efa
--- /dev/null
+++ b/static/website/images/PHP-and-MySQL.jpg
Binary files differ
diff --git a/static/website/images/Python-Old-Version.jpg b/static/website/images/Python-Old-Version.jpg
new file mode 100644
index 0000000..cf40bb8
--- /dev/null
+++ b/static/website/images/Python-Old-Version.jpg
Binary files differ
diff --git a/static/website/images/Python.jpg b/static/website/images/Python.jpg
new file mode 100644
index 0000000..4023cce
--- /dev/null
+++ b/static/website/images/Python.jpg
Binary files differ
diff --git a/static/website/images/QCad.jpg b/static/website/images/QCad.jpg
new file mode 100644
index 0000000..293046b
--- /dev/null
+++ b/static/website/images/QCad.jpg
Binary files differ
diff --git a/static/website/images/R.jpg b/static/website/images/R.jpg
new file mode 100644
index 0000000..b1fb8da
--- /dev/null
+++ b/static/website/images/R.jpg
Binary files differ
diff --git a/static/website/images/Rlogo.jpg b/static/website/images/Rlogo.jpg
new file mode 100644
index 0000000..656a6b1
--- /dev/null
+++ b/static/website/images/Rlogo.jpg
Binary files differ
diff --git a/static/website/images/Ruby.jpg b/static/website/images/Ruby.jpg
new file mode 100644
index 0000000..f1e9245
--- /dev/null
+++ b/static/website/images/Ruby.jpg
Binary files differ
diff --git a/static/website/images/Ruby_logo.png b/static/website/images/Ruby_logo.png
new file mode 100644
index 0000000..797167a
--- /dev/null
+++ b/static/website/images/Ruby_logo.png
Binary files differ
diff --git a/static/website/images/Scilab.jpg b/static/website/images/Scilab.jpg
new file mode 100644
index 0000000..56f6e22
--- /dev/null
+++ b/static/website/images/Scilab.jpg
Binary files differ
diff --git a/static/website/images/Selenium.jpg b/static/website/images/Selenium.jpg
new file mode 100644
index 0000000..756eac4
--- /dev/null
+++ b/static/website/images/Selenium.jpg
Binary files differ
diff --git a/static/website/images/Single-Board-Heater-System.gif b/static/website/images/Single-Board-Heater-System.gif
new file mode 100644
index 0000000..11fc206
--- /dev/null
+++ b/static/website/images/Single-Board-Heater-System.gif
Binary files differ
diff --git a/static/website/images/Single-Board-Heater-System.jpg b/static/website/images/Single-Board-Heater-System.jpg
new file mode 100644
index 0000000..b08dd00
--- /dev/null
+++ b/static/website/images/Single-Board-Heater-System.jpg
Binary files differ
diff --git a/static/website/images/Spoken-Tutorial-Technology.jpg b/static/website/images/Spoken-Tutorial-Technology.jpg
new file mode 100644
index 0000000..8c12ba1
--- /dev/null
+++ b/static/website/images/Spoken-Tutorial-Technology.jpg
Binary files differ
diff --git a/static/website/images/Step.jpg b/static/website/images/Step.jpg
new file mode 100644
index 0000000..a34d275
--- /dev/null
+++ b/static/website/images/Step.jpg
Binary files differ
diff --git a/static/website/images/Thunderbird.jpg b/static/website/images/Thunderbird.jpg
new file mode 100644
index 0000000..91e3723
--- /dev/null
+++ b/static/website/images/Thunderbird.jpg
Binary files differ
diff --git a/static/website/images/Tux-Typing.jpg b/static/website/images/Tux-Typing.jpg
new file mode 100644
index 0000000..4a22d6e
--- /dev/null
+++ b/static/website/images/Tux-Typing.jpg
Binary files differ
diff --git a/static/website/images/What-is-Spoken-Tutorial.jpg b/static/website/images/What-is-Spoken-Tutorial.jpg
new file mode 100644
index 0000000..8c12ba1
--- /dev/null
+++ b/static/website/images/What-is-Spoken-Tutorial.jpg
Binary files differ
diff --git a/static/website/images/Xfig.jpg b/static/website/images/Xfig.jpg
new file mode 100644
index 0000000..3f142aa
--- /dev/null
+++ b/static/website/images/Xfig.jpg
Binary files differ
diff --git a/static/website/images/big-logo.png b/static/website/images/big-logo.png
new file mode 100644
index 0000000..cd765bd
--- /dev/null
+++ b/static/website/images/big-logo.png
Binary files differ
diff --git a/static/website/images/camel_head.v25e738a.png b/static/website/images/camel_head.v25e738a.png
new file mode 100644
index 0000000..25e738a
--- /dev/null
+++ b/static/website/images/camel_head.v25e738a.png
Binary files differ
diff --git a/static/website/images/druplicon.large_.png b/static/website/images/druplicon.large_.png
new file mode 100644
index 0000000..f8ced55
--- /dev/null
+++ b/static/website/images/druplicon.large_.png
Binary files differ
diff --git a/static/website/images/firefox_logo-only_RGB-300dpi.jpg b/static/website/images/firefox_logo-only_RGB-300dpi.jpg
new file mode 100644
index 0000000..8101551
--- /dev/null
+++ b/static/website/images/firefox_logo-only_RGB-300dpi.jpg
Binary files differ
diff --git a/static/website/images/gchempaint_logo.png b/static/website/images/gchempaint_logo.png
new file mode 100644
index 0000000..640fa0c
--- /dev/null
+++ b/static/website/images/gchempaint_logo.png
Binary files differ
diff --git a/static/website/images/geogebra-logo.png b/static/website/images/geogebra-logo.png
new file mode 100644
index 0000000..9af2f87
--- /dev/null
+++ b/static/website/images/geogebra-logo.png
Binary files differ
diff --git a/static/website/images/gimp-logo.png b/static/website/images/gimp-logo.png
new file mode 100644
index 0000000..12b179b
--- /dev/null
+++ b/static/website/images/gimp-logo.png
Binary files differ
diff --git a/static/website/images/ktouch_logo.png b/static/website/images/ktouch_logo.png
new file mode 100644
index 0000000..f2d6d2f
--- /dev/null
+++ b/static/website/images/ktouch_logo.png
Binary files differ
diff --git a/static/website/images/logo.png b/static/website/images/logo.png
new file mode 100644
index 0000000..bdb36a5
--- /dev/null
+++ b/static/website/images/logo.png
Binary files differ
diff --git a/static/website/images/logo_gns3_small.png b/static/website/images/logo_gns3_small.png
new file mode 100644
index 0000000..4ec8d3b
--- /dev/null
+++ b/static/website/images/logo_gns3_small.png
Binary files differ
diff --git a/static/website/images/logo_openfoam.jpg b/static/website/images/logo_openfoam.jpg
new file mode 100644
index 0000000..9ef30e8
--- /dev/null
+++ b/static/website/images/logo_openfoam.jpg
Binary files differ
diff --git a/static/website/images/netbeans-logo.png b/static/website/images/netbeans-logo.png
new file mode 100644
index 0000000..f4a01ab
--- /dev/null
+++ b/static/website/images/netbeans-logo.png
Binary files differ
diff --git a/static/website/images/nglogo.jpg b/static/website/images/nglogo.jpg
new file mode 100644
index 0000000..4cc5638
--- /dev/null
+++ b/static/website/images/nglogo.jpg
Binary files differ
diff --git a/static/website/images/php_mysql_logo.jpg b/static/website/images/php_mysql_logo.jpg
new file mode 100644
index 0000000..36c718a
--- /dev/null
+++ b/static/website/images/php_mysql_logo.jpg
Binary files differ
diff --git a/static/website/images/python-logo.png b/static/website/images/python-logo.png
new file mode 100644
index 0000000..b3c7640
--- /dev/null
+++ b/static/website/images/python-logo.png
Binary files differ
diff --git a/static/website/images/pythonHi.gif b/static/website/images/pythonHi.gif
new file mode 100644
index 0000000..7e7231c
--- /dev/null
+++ b/static/website/images/pythonHi.gif
Binary files differ
diff --git a/static/website/images/python_logo_no_text.png b/static/website/images/python_logo_no_text.png
new file mode 100644
index 0000000..d42c54f
--- /dev/null
+++ b/static/website/images/python_logo_no_text.png
Binary files differ
diff --git a/static/website/images/qcad_icon.png b/static/website/images/qcad_icon.png
new file mode 100644
index 0000000..1439e15
--- /dev/null
+++ b/static/website/images/qcad_icon.png
Binary files differ
diff --git a/static/website/images/rrr/Advanced-C++.jpg b/static/website/images/rrr/Advanced-C++.jpg
new file mode 100644
index 0000000..4550d61
--- /dev/null
+++ b/static/website/images/rrr/Advanced-C++.jpg
Binary files differ
diff --git a/static/website/images/rrr/BASH.jpg b/static/website/images/rrr/BASH.jpg
new file mode 100644
index 0000000..9d29c7e
--- /dev/null
+++ b/static/website/images/rrr/BASH.jpg
Binary files differ
diff --git a/static/website/images/rrr/Blender.jpg b/static/website/images/rrr/Blender.jpg
new file mode 100644
index 0000000..14e8734
--- /dev/null
+++ b/static/website/images/rrr/Blender.jpg
Binary files differ
diff --git a/static/website/images/rrr/C-and-C++.jpg b/static/website/images/rrr/C-and-C++.jpg
new file mode 100644
index 0000000..b1e972b
--- /dev/null
+++ b/static/website/images/rrr/C-and-C++.jpg
Binary files differ
diff --git a/static/website/images/rrr/CellDesigner.jpg b/static/website/images/rrr/CellDesigner.jpg
new file mode 100644
index 0000000..17f9d00
--- /dev/null
+++ b/static/website/images/rrr/CellDesigner.jpg
Binary files differ
diff --git a/static/website/images/rrr/Digital-Divide.jpg b/static/website/images/rrr/Digital-Divide.jpg
new file mode 100644
index 0000000..e6595cf
--- /dev/null
+++ b/static/website/images/rrr/Digital-Divide.jpg
Binary files differ
diff --git a/static/website/images/rrr/Drupal.jpg b/static/website/images/rrr/Drupal.jpg
new file mode 100644
index 0000000..a01f8bc
--- /dev/null
+++ b/static/website/images/rrr/Drupal.jpg
Binary files differ
diff --git a/static/website/images/rrr/Firefox.jpg b/static/website/images/rrr/Firefox.jpg
new file mode 100644
index 0000000..189daf4
--- /dev/null
+++ b/static/website/images/rrr/Firefox.jpg
Binary files differ
diff --git a/static/website/images/rrr/GChemPaint.jpg b/static/website/images/rrr/GChemPaint.jpg
new file mode 100644
index 0000000..f1c7d20
--- /dev/null
+++ b/static/website/images/rrr/GChemPaint.jpg
Binary files differ
diff --git a/static/website/images/rrr/GIMP.jpg b/static/website/images/rrr/GIMP.jpg
new file mode 100644
index 0000000..af6b211
--- /dev/null
+++ b/static/website/images/rrr/GIMP.jpg
Binary files differ
diff --git a/static/website/images/rrr/GNS3.jpg b/static/website/images/rrr/GNS3.jpg
new file mode 100644
index 0000000..7656f84
--- /dev/null
+++ b/static/website/images/rrr/GNS3.jpg
Binary files differ
diff --git a/static/website/images/rrr/GSchem.jpg b/static/website/images/rrr/GSchem.jpg
new file mode 100644
index 0000000..e0cf4e1
--- /dev/null
+++ b/static/website/images/rrr/GSchem.jpg
Binary files differ
diff --git a/static/website/images/rrr/GeoGebra-for-Engineering-drawing.jpg b/static/website/images/rrr/GeoGebra-for-Engineering-drawing.jpg
new file mode 100644
index 0000000..3ff0a5e
--- /dev/null
+++ b/static/website/images/rrr/GeoGebra-for-Engineering-drawing.jpg
Binary files differ
diff --git a/static/website/images/rrr/Geogebra.jpg b/static/website/images/rrr/Geogebra.jpg
new file mode 100644
index 0000000..3ff0a5e
--- /dev/null
+++ b/static/website/images/rrr/Geogebra.jpg
Binary files differ
diff --git a/static/website/images/rrr/Java-Business-Application.jpg b/static/website/images/rrr/Java-Business-Application.jpg
new file mode 100644
index 0000000..e8046e4
--- /dev/null
+++ b/static/website/images/rrr/Java-Business-Application.jpg
Binary files differ
diff --git a/static/website/images/rrr/Java.jpg b/static/website/images/rrr/Java.jpg
new file mode 100644
index 0000000..9934a4a
--- /dev/null
+++ b/static/website/images/rrr/Java.jpg
Binary files differ
diff --git a/static/website/images/rrr/KTouch.jpg b/static/website/images/rrr/KTouch.jpg
new file mode 100644
index 0000000..4221d96
--- /dev/null
+++ b/static/website/images/rrr/KTouch.jpg
Binary files differ
diff --git a/static/website/images/rrr/KTurtle.jpg b/static/website/images/rrr/KTurtle.jpg
new file mode 100644
index 0000000..733e2c1
--- /dev/null
+++ b/static/website/images/rrr/KTurtle.jpg
Binary files differ
diff --git a/static/website/images/rrr/KiCad.jpg b/static/website/images/rrr/KiCad.jpg
new file mode 100644
index 0000000..8df8ac0
--- /dev/null
+++ b/static/website/images/rrr/KiCad.jpg
Binary files differ
diff --git a/static/website/images/rrr/LaTeX.jpg b/static/website/images/rrr/LaTeX.jpg
new file mode 100644
index 0000000..8fb73db
--- /dev/null
+++ b/static/website/images/rrr/LaTeX.jpg
Binary files differ
diff --git a/static/website/images/rrr/LibreOffice-Suite-Base.jpg b/static/website/images/rrr/LibreOffice-Suite-Base.jpg
new file mode 100644
index 0000000..0d9816a
--- /dev/null
+++ b/static/website/images/rrr/LibreOffice-Suite-Base.jpg
Binary files differ
diff --git a/static/website/images/rrr/LibreOffice-Suite-Calc.jpg b/static/website/images/rrr/LibreOffice-Suite-Calc.jpg
new file mode 100644
index 0000000..51d6cc0
--- /dev/null
+++ b/static/website/images/rrr/LibreOffice-Suite-Calc.jpg
Binary files differ
diff --git a/static/website/images/rrr/LibreOffice-Suite-Draw.jpg b/static/website/images/rrr/LibreOffice-Suite-Draw.jpg
new file mode 100644
index 0000000..9c42a88
--- /dev/null
+++ b/static/website/images/rrr/LibreOffice-Suite-Draw.jpg
Binary files differ
diff --git a/static/website/images/rrr/LibreOffice-Suite-Impress.jpg b/static/website/images/rrr/LibreOffice-Suite-Impress.jpg
new file mode 100644
index 0000000..ce82703
--- /dev/null
+++ b/static/website/images/rrr/LibreOffice-Suite-Impress.jpg
Binary files differ
diff --git a/static/website/images/rrr/LibreOffice-Suite-Math.jpg b/static/website/images/rrr/LibreOffice-Suite-Math.jpg
new file mode 100644
index 0000000..b33de64
--- /dev/null
+++ b/static/website/images/rrr/LibreOffice-Suite-Math.jpg
Binary files differ
diff --git a/static/website/images/rrr/LibreOffice-Suite-Writer.jpg b/static/website/images/rrr/LibreOffice-Suite-Writer.jpg
new file mode 100644
index 0000000..adce0fb
--- /dev/null
+++ b/static/website/images/rrr/LibreOffice-Suite-Writer.jpg
Binary files differ
diff --git a/static/website/images/rrr/Linux.jpg b/static/website/images/rrr/Linux.jpg
new file mode 100644
index 0000000..491bddb
--- /dev/null
+++ b/static/website/images/rrr/Linux.jpg
Binary files differ
diff --git a/static/website/images/rrr/Netbeans.jpg b/static/website/images/rrr/Netbeans.jpg
new file mode 100644
index 0000000..66c5753
--- /dev/null
+++ b/static/website/images/rrr/Netbeans.jpg
Binary files differ
diff --git a/static/website/images/rrr/Ngspice.jpg b/static/website/images/rrr/Ngspice.jpg
new file mode 100644
index 0000000..a319e31
--- /dev/null
+++ b/static/website/images/rrr/Ngspice.jpg
Binary files differ
diff --git a/static/website/images/rrr/OpenFOAM.jpg b/static/website/images/rrr/OpenFOAM.jpg
new file mode 100644
index 0000000..7e20f33
--- /dev/null
+++ b/static/website/images/rrr/OpenFOAM.jpg
Binary files differ
diff --git a/static/website/images/rrr/Orca.jpg b/static/website/images/rrr/Orca.jpg
new file mode 100644
index 0000000..cf7797c
--- /dev/null
+++ b/static/website/images/rrr/Orca.jpg
Binary files differ
diff --git a/static/website/images/rrr/PERL.jpg b/static/website/images/rrr/PERL.jpg
new file mode 100644
index 0000000..5159d78
--- /dev/null
+++ b/static/website/images/rrr/PERL.jpg
Binary files differ
diff --git a/static/website/images/rrr/PHP-and-MySQL.jpg b/static/website/images/rrr/PHP-and-MySQL.jpg
new file mode 100644
index 0000000..d8d7efa
--- /dev/null
+++ b/static/website/images/rrr/PHP-and-MySQL.jpg
Binary files differ
diff --git a/static/website/images/rrr/Python-Old-Version.jpg b/static/website/images/rrr/Python-Old-Version.jpg
new file mode 100644
index 0000000..cf40bb8
--- /dev/null
+++ b/static/website/images/rrr/Python-Old-Version.jpg
Binary files differ
diff --git a/static/website/images/rrr/Python.jpg b/static/website/images/rrr/Python.jpg
new file mode 100644
index 0000000..4023cce
--- /dev/null
+++ b/static/website/images/rrr/Python.jpg
Binary files differ
diff --git a/static/website/images/rrr/QCad.jpg b/static/website/images/rrr/QCad.jpg
new file mode 100644
index 0000000..293046b
--- /dev/null
+++ b/static/website/images/rrr/QCad.jpg
Binary files differ
diff --git a/static/website/images/rrr/R.jpg b/static/website/images/rrr/R.jpg
new file mode 100644
index 0000000..b1fb8da
--- /dev/null
+++ b/static/website/images/rrr/R.jpg
Binary files differ
diff --git a/static/website/images/rrr/Rlogo.jpg b/static/website/images/rrr/Rlogo.jpg
new file mode 100644
index 0000000..656a6b1
--- /dev/null
+++ b/static/website/images/rrr/Rlogo.jpg
Binary files differ
diff --git a/static/website/images/rrr/Ruby.jpg b/static/website/images/rrr/Ruby.jpg
new file mode 100644
index 0000000..f1e9245
--- /dev/null
+++ b/static/website/images/rrr/Ruby.jpg
Binary files differ
diff --git a/static/website/images/rrr/Scilab.jpg b/static/website/images/rrr/Scilab.jpg
new file mode 100644
index 0000000..56f6e22
--- /dev/null
+++ b/static/website/images/rrr/Scilab.jpg
Binary files differ
diff --git a/static/website/images/rrr/Selenium.jpg b/static/website/images/rrr/Selenium.jpg
new file mode 100644
index 0000000..756eac4
--- /dev/null
+++ b/static/website/images/rrr/Selenium.jpg
Binary files differ
diff --git a/static/website/images/rrr/Single-Board-Heater-System.jpg b/static/website/images/rrr/Single-Board-Heater-System.jpg
new file mode 100644
index 0000000..b08dd00
--- /dev/null
+++ b/static/website/images/rrr/Single-Board-Heater-System.jpg
Binary files differ
diff --git a/static/website/images/rrr/Spoken-Tutorial-Technology.jpg b/static/website/images/rrr/Spoken-Tutorial-Technology.jpg
new file mode 100644
index 0000000..8c12ba1
--- /dev/null
+++ b/static/website/images/rrr/Spoken-Tutorial-Technology.jpg
Binary files differ
diff --git a/static/website/images/rrr/Step.jpg b/static/website/images/rrr/Step.jpg
new file mode 100644
index 0000000..a34d275
--- /dev/null
+++ b/static/website/images/rrr/Step.jpg
Binary files differ
diff --git a/static/website/images/rrr/Thunderbird.jpg b/static/website/images/rrr/Thunderbird.jpg
new file mode 100644
index 0000000..91e3723
--- /dev/null
+++ b/static/website/images/rrr/Thunderbird.jpg
Binary files differ
diff --git a/static/website/images/rrr/Tux-Typing.jpg b/static/website/images/rrr/Tux-Typing.jpg
new file mode 100644
index 0000000..4a22d6e
--- /dev/null
+++ b/static/website/images/rrr/Tux-Typing.jpg
Binary files differ
diff --git a/static/website/images/rrr/What-is-Spoken-Tutorial.jpg b/static/website/images/rrr/What-is-Spoken-Tutorial.jpg
new file mode 100644
index 0000000..8c12ba1
--- /dev/null
+++ b/static/website/images/rrr/What-is-Spoken-Tutorial.jpg
Binary files differ
diff --git a/static/website/images/rrr/Xfig.jpg b/static/website/images/rrr/Xfig.jpg
new file mode 100644
index 0000000..3f142aa
--- /dev/null
+++ b/static/website/images/rrr/Xfig.jpg
Binary files differ
diff --git a/static/website/images/rrr/logo_openfoam.jpg b/static/website/images/rrr/logo_openfoam.jpg
new file mode 100644
index 0000000..9ef30e8
--- /dev/null
+++ b/static/website/images/rrr/logo_openfoam.jpg
Binary files differ
diff --git a/static/website/images/scilab.png b/static/website/images/scilab.png
new file mode 100644
index 0000000..c6f5c84
--- /dev/null
+++ b/static/website/images/scilab.png
Binary files differ
diff --git a/static/website/images/thunderbird.jpg b/static/website/images/thunderbird.jpg
new file mode 100644
index 0000000..39f0384
--- /dev/null
+++ b/static/website/images/thunderbird.jpg
Binary files differ
diff --git a/static/website/images/tux-typing-1.png b/static/website/images/tux-typing-1.png
new file mode 100644
index 0000000..335b18e
--- /dev/null
+++ b/static/website/images/tux-typing-1.png
Binary files differ
diff --git a/static/website/images/xfig_splash_logo.png b/static/website/images/xfig_splash_logo.png
new file mode 100644
index 0000000..9f104cb
--- /dev/null
+++ b/static/website/images/xfig_splash_logo.png
Binary files differ
diff --git a/static/website/js/thread-user.js b/static/website/js/thread-user.js
index 0e3ef02..d2c8f22 100644
--- a/static/website/js/thread-user.js
+++ b/static/website/js/thread-user.js
@@ -34,13 +34,13 @@ $(document).ready(function() {
function modify(thisObj){
thisObj.hide();
thisObj.next().css("display", "block");
-
+
$question_title.hide();
$question_title_edit_input.val($.trim($($question_title).text()));
$question_title_edit.show();
$question_edit.hide();
$question_save.show();
-
+
$questionNicPanel.show();
$questionInstance.focus();
$question_details_edit.show();
@@ -63,7 +63,7 @@ $(document).ready(function() {
$questionNicPanel.hide();
$question_details_edit.hide();
$(this).prev().css("display", "block");
-
+
/* make the ajax call */
//var id_length = $question_save.attr("id").length;
//var question_id = parseInt($question_save.attr("id").substr(id_length-1));
@@ -104,7 +104,7 @@ $(document).ready(function() {
var tutorial = $question_tutorial.val();
var minute_range = $question_minute_range.val();
var second_range = $question_second_range.val();
-
+
$.ajax({
url: "/ajax-details-update/",
data: {
@@ -185,7 +185,7 @@ $(document).ready(function() {
var answer_id = parseInt($(this).data("aid"));
var answer_body = $("#"+target).html();
-
+
$.ajax({
url: "/ajax-answer-update/",
type: "POST",
@@ -205,10 +205,17 @@ $(document).ready(function() {
* comment edit section
* set the dom variables
*/
+ $comment = $(".comment");
$comment_edit = $(".comment .edit");
$comment_save = $(".comment .save");
$commentPanelWrapper = $("#commentPanelWrapper");
+ $comment.mouseover(function(){
+ $(this).find(".modify-wrapper").show();
+ });
+ $comment.mouseout(function(){
+ $(this).find(".modify-wrapper").hide();
+ });
var commentNicEditor = new nicEditor({
buttonList : ['fontSize','bold','italic','underline','strikeThrough','subscript','superscript','html','image', 'link'],
iconsPath: "/static/website/js/nicEditorIcons.gif",
@@ -267,7 +274,7 @@ $(document).ready(function() {
$(this).hide();
$(this).siblings(".cancel-comment").show();
$(this).siblings(".post-comment").show();
-
+
var target = $(this).data("target");
$("#"+target).show();
nics[target] = new nicEditor({
diff --git a/static/website/templates/base.html b/static/website/templates/base.html
index 286a2ec..97b9194 100644
--- a/static/website/templates/base.html
+++ b/static/website/templates/base.html
@@ -23,7 +23,7 @@
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="{% url 'website:home' %}">
- <img id="logo" src="http://spoken-tutorial.org/sites/all/themes/spoken/images/logo.png">
+ <img id="logo" src="{% static 'website/images/logo.png' %}">
Spoken Tutorial Forums
</a>
</div> <!-- /.navbar-header -->
diff --git a/static/website/templates/get-question.html b/static/website/templates/get-question.html
index 3d2d3f0..48aa427 100644
--- a/static/website/templates/get-question.html
+++ b/static/website/templates/get-question.html
@@ -73,7 +73,7 @@
<span class="meta">
<small>
<i>
- {{ question.date_created|date:"y-d-m" }}, {{ question.date_created|time }}
+ {{ question.date_created|date:"d-m-y" }}, {{ question.date_created|time }}
</i>
</small>
@@ -125,15 +125,31 @@
{{ comment.body|safe }}
</div>
- <span class="modify" style="display:block">
- <a class="edit btn btn-xs btn-info vs" href="#cbody{{ comment.id }}" data-target="cbody{{ comment.id }}">Edit</a>
- <a class="save btn btn-xs btn-success vs" data-target="cbody{{ comment.id }}" data-cid="{{ comment.id }}" href="#">Save</a>
+ <span class="meta">
+ <small>
+ <i>
+ {{ question.date_created|date:"d-m-y" }}, {{ question.date_created|time }}
+ </i>
+ </small>
+
+ <span class="user">
+ {{ question.user }}
+ </span>
</span>
+ {% if user|can_edit:comment %}
+ <div class="modify-wrapper">
+ <span class="modify" style="display:block">
+ <a class="edit btn btn-xs btn-info vs" href="#cbody{{ comment.id }}" data-target="cbody{{ comment.id }}">Edit</a>
+ <a class="save btn btn-xs btn-success vs" data-target="cbody{{ comment.id }}" data-cid="{{ comment.id }}" href="#">Save</a>
+ </span>
+ </div>
+ {% endif %}
</div> <!-- /.comment -->
{% endfor %}
<!-- form to add comment -->
+ {% if user.is_authenticated %}
<form id="form{{ answer.id }}" method="post" action="/answer-comment/"> {% csrf_token %}
<input type="hidden" name="answer_id" value="{{answer.id}}">
<textarea name="body" class="new-comment form-control" id="comment{{ answer.id }}" rows="2"></textarea>
@@ -147,6 +163,12 @@
<a class="cancel-comment" href="#" data-target="comment{{ answer.id }}">
<small>cancel comment</small>
</a>
+ {% else %}
+ <br>
+ <a class="btn btn-xs btn-success vs" href="/accounts/login">
+ Login to add comment
+ </a>
+ {% endif %}
</div> <!-- comments -->
</div> <!-- /.row -->
<br> <hr>
@@ -246,6 +268,7 @@
<option value="Tux-Typing">Tux-Typing</option>
<option value="What-is-Spoken-Tutorial">What-is-Spoken-Tutorial</option>
<option value="Xfig">Xfig</option>
+ <option value="General">General FOSS</option>
</select>
</div>
<div class="col-lg-4 col-md-4 col-sm-4">
diff --git a/static/website/templates/index.html b/static/website/templates/index.html
index af97707..6e7af78 100644
--- a/static/website/templates/index.html
+++ b/static/website/templates/index.html
@@ -1,104 +1,19 @@
{% extends 'website/templates/base.html' %}
+{% load static %}
{% block content %}
-{% load count_tags %}
-<h4><u>Recent Questions</u></h4>
-<table class="table table-bordered table-hover">
- <th> FOSS </th>
- <th> Tutorial</th>
- <th> Min </th>
- <th> Sec </th>
- <th> Question</th>
- <th> Date</th>
- <th> Views</th>
- <th> Answers</th>
- <th> User</th>
- {% for question in questions %}
- <tr>
- <td>
- <span href="#" class="category" data-toggle="tooltip" data-placement="top" title="{{ question.category}}">
- {{ question.category|truncatechars:12 }}
- </span>
- <a class="pull-right" href="{% url 'website:filter' question.category %}?qid={{ question.id }}">
- <span class="glyphicon glyphicon-search"></span>
- </a>
- </td>
-
- <td>
- <span class="tutorial" data-toggle="tooltip" data-placement="top" title="{{ question.tutorial}}">
- {{ question.tutorial|truncatechars:12 }}
- </span>
- <a class="pull-right" href="{% url 'website:filter' question.category question.tutorial %}?qid={{ question.id }}">
- <span class="glyphicon glyphicon-search"></span>
- </a>
- </td>
-
- <td>
- <span>
- <a href="{% url 'website:filter' question.category question.tutorial question.minute_range %}?qid={{ question.id }}">
- {{ question.minute_range }}
- </a>
- </span>
- </td>
-
- <td>
- <span>
- <a href="{% url 'website:filter' question.category question.tutorial question.minute_range question.second_range%}?qid={{ question.id }}">
- {{ question.second_range }}
- </a>
- </span>
- </td>
-
- <td>
- <span class="title" data-toggle="tooltip" data-placement="top" title="{{ question.title }}">
- <a href="{% url 'website:get_question' question.id %}">{{ question.title|truncatechars:40 }}</a>
- </span>
- </td>
-
- <td>
- <span>
- <i>
- {{ question.date_created|date:"d-m-y" }}
- </i>
- </span>
- </td>
-
- <td>
- {{ question.views}}
- </td>
-
- <td>
- {{ question.answer_set.count }}
- </td>
-
- <td>
- <span class="title" data-toggle="tooltip" data-placement="top" title="{{ question.user }}">
- {{ question.user|truncatechars:10 }}
- </span>
- </td>
- </tr>
+<div class="row">
+ {% for category in categories %}
+ <div class="col-lg-2 col-md-2 col-sm-2">
+ <div class="thumbnail">
+ <img src="{% static "website/images/" %}{{ category }}.jpg" height="75px" width="100%">
+ <div class="caption">
+ <h3>{{ category }}</h3>
+ <p>
+ <a class="btn btn-xs btn-default btn-block vs" href="/filter/{{ category }}">View Questions</a>
+ </p>
+ </div>
+ </div>
+ </div>
{% endfor %}
-
-</table>
- {% if total > 25 %}
- <ul class="pagination pull-right">
- {% for i in total|get_range:"0,10" %}
- <li>
- <a href="{% url 'website:home' %}?marker={{ i }}">
- {% if i == marker %}
- <strong>{{ i|div:"10"|inc }}</strong>
- {% else %}
- {{ i|div:"10"|inc }}
- {% endif %}
- </a>
- </li>
- {% endfor %}
- </ul>
- {% endif %}
-
-{% endblock %}
-
-{% block javascript %}
-<script>
- $('span').tooltip();
-</script>
+</div>
{% endblock %}
diff --git a/static/website/templates/recent-questions.html b/static/website/templates/recent-questions.html
new file mode 100644
index 0000000..e5661c1
--- /dev/null
+++ b/static/website/templates/recent-questions.html
@@ -0,0 +1,106 @@
+{% endblock content %}
+{% extends 'website/templates/base.html' %}
+{% load static %}
+{% block content %}
+{% load count_tags %}
+<h4><u>Recent Questions</u></h4>
+<table class="table table-bordered table-hover">
+ <th> FOSS </th>
+ <th> Tutorial</th>
+ <th> Min </th>
+ <th> Sec </th>
+ <th> Question</th>
+ <th> Date</th>
+ <th> Views</th>
+ <th> Answers</th>
+ <th> User</th>
+ {% for question in questions %}
+ <tr>
+ <td>
+ <span href="#" class="category" data-toggle="tooltip" data-placement="top" title="{{ question.category}}">
+ {{ question.category|truncatechars:12 }}
+ </span>
+ <a class="pull-right" href="{% url 'website:filter' question.category %}?qid={{ question.id }}">
+ <span class="glyphicon glyphicon-search"></span>
+ </a>
+ </td>
+
+ <td>
+ <span class="tutorial" data-toggle="tooltip" data-placement="top" title="{{ question.tutorial}}">
+ {{ question.tutorial|truncatechars:12 }}
+ </span>
+ <a class="pull-right" href="{% url 'website:filter' question.category question.tutorial %}?qid={{ question.id }}">
+ <span class="glyphicon glyphicon-search"></span>
+ </a>
+ </td>
+
+ <td>
+ <span>
+ <a href="{% url 'website:filter' question.category question.tutorial question.minute_range %}?qid={{ question.id }}">
+ {{ question.minute_range }}
+ </a>
+ </span>
+ </td>
+
+ <td>
+ <span>
+ <a href="{% url 'website:filter' question.category question.tutorial question.minute_range question.second_range%}?qid={{ question.id }}">
+ {{ question.second_range }}
+ </a>
+ </span>
+ </td>
+
+ <td>
+ <span class="title" data-toggle="tooltip" data-placement="top" title="{{ question.title }}">
+ <a href="{% url 'website:get_question' question.id %}">{{ question.title|truncatechars:40 }}</a>
+ </span>
+ </td>
+
+<td>
+ <span>
+ <i>
+ {{ question.date_created|date:"d-m-y" }}
+ </i>
+ </span>
+ </td>
+
+ <td>
+ {{ question.views}}
+ </td>
+
+ <td>
+ {{ question.answer_set.count }}
+ </td>
+
+ <td>
+ <span class="title" data-toggle="tooltip" data-placement="top" title="{{ question.user }}">
+ {{ question.user|truncatechars:10 }}
+ </span>
+ </td>
+ </tr>
+ {% endfor %}
+
+</table>
+ {% if total > 25 %}
+ <ul class="pagination pull-right">
+ {% for i in total|get_range:"0,10" %}
+ <li>
+ <a href="{% url 'website:home' %}?marker={{ i }}">
+ {% if i == marker %}
+ <strong>{{ i|div:"10"|inc }}</strong>
+ {% else %}
+ {{ i|div:"10"|inc }}
+ {% endif %}
+ </a>
+ </li>
+ {% endfor %}
+ </ul>
+ {% endif %}
+
+{% endblock %}
+
+{% block javascript %}
+<script>
+ $('span').tooltip();
+</script>
+{% endblock %}
diff --git a/website/models.py b/website/models.py
index a995af7..7157ee5 100644
--- a/website/models.py
+++ b/website/models.py
@@ -56,6 +56,10 @@ class AnswerComment(models.Model):
date_created = models.DateTimeField(auto_now_add=True)
date_modified = models.DateTimeField(auto_now=True)
+ def user(self):
+ user = User.objects.get(id=self.uid)
+ return user.username
+
class Notification(models.Model):
uid = models.IntegerField()
pid = models.IntegerField()
diff --git a/website/views.py b/website/views.py
index f5d0180..e368feb 100644
--- a/website/views.py
+++ b/website/views.py
@@ -7,10 +7,11 @@ from django.views.decorators.csrf import csrf_exempt
from django.contrib.auth.decorators import login_required
from django.db.models import Q
from django.core.mail import EmailMultiAlternatives
-
from website.models import Question, Answer, Notification, TutorialDetails, TutorialResources, AnswerComment
from website.forms import NewQuestionForm, AnswerQuesitionForm
from website.helpers import get_video_info
+from django.contrib.auth import get_user_model
+User = get_user_model()
admins = (
9, 4376, 4915, 14595, 12329, 22467, 5518
@@ -34,6 +35,12 @@ categories = (
)
def home(request):
+ context = {
+ 'categories': categories
+ }
+ return render(request, "website/templates/index.html", context)
+
+def recent_questions(request):
marker = 0
if 'marker' in request.GET:
marker = int(request.GET['marker'])
@@ -84,6 +91,9 @@ def question_answer(request):
notification.qid = qid
notification.aid = answer.id
notification.save()
+ #CONTINUE continue
+ # foo = User.objects.get(pk=)
+ return HttpResponse(foo)
return HttpResponseRedirect('/question/'+str(qid))
@login_required