From f93cb5aad52767fa05956667664645fed39b1920 Mon Sep 17 00:00:00 2001 From: okalintu Date: Thu, 30 Mar 2017 15:24:08 +0300 Subject: [PATCH 1/7] Remove boilerplate from infoadmin controllers --- .../html/generic_external_image_create.html | 2 +- infoscreen/static/js/infoadmin_controllers.js | 63 +++++++------------ .../static/js/infoscreen_controllers.js | 5 +- 3 files changed, 24 insertions(+), 46 deletions(-) diff --git a/infoscreen/static/html/generic_external_image_create.html b/infoscreen/static/html/generic_external_image_create.html index a20359c..fecff8c 100644 --- a/infoscreen/static/html/generic_external_image_create.html +++ b/infoscreen/static/html/generic_external_image_create.html @@ -1,4 +1,4 @@ -
+
Create new image. Enter name and full url for any image available in internet (eg. https://i.imgur.com/XXSSqDG.gif)
diff --git a/infoscreen/static/js/infoadmin_controllers.js b/infoscreen/static/js/infoadmin_controllers.js index d6b3515..512bd6e 100644 --- a/infoscreen/static/js/infoadmin_controllers.js +++ b/infoscreen/static/js/infoadmin_controllers.js @@ -123,43 +123,6 @@ app.controller('infoadmin_ctrl', function($scope, $http, $window, ItemList, Inst }); ItemList.loadItems(); }); -app.controller('infoadmin_externalimage_create', function($scope, $http,ItemList){ - $scope.item = {} - $scope.send = function(){ - $http.post("/infoscreen/create_external_image", $scope.item).then(ItemList.loadItems) - } -}); -app.controller('infoadmin_abbitem_create', function($scope, $http,ItemList){ - $scope.item = {} - $scope.send = function(){ - $http.post("/infoscreen/create_abbitem", $scope.item).then(ItemList.loadItems) - } -}); -app.controller('infoadmin_sossoitem_create', function($scope, $http,ItemList){ - $scope.item = {} - $scope.send = function(){ - $http.post("/infoscreen/create_sossoitem", $scope.item).then(ItemList.loadItems) - } -}); -app.controller('infoadmin_eventitem_create', function($scope, $http,ItemList){ - $scope.item = {} - $scope.send = function(){ - $http.post("/infoscreen/create_eventitem", $scope.item).then(ItemList.loadItems) - } -}); - -app.controller('infoadmin_hslitem_create', function($scope, $http,ItemList){ - $scope.item = {} - $scope.send = function(){ - $http.post("/infoscreen/create_hslitem", $scope.item).then(ItemList.loadItems) - } -}); -app.controller('infoadmin_websiteitem_create', function($scope, $http,ItemList){ - $scope.item = {} - $scope.send = function(){ - $http.post("/infoscreen/create_websiteitem", $scope.item).then(ItemList.loadItems) - } -}); app.controller('infoadmin_image_create', ['$scope', 'Upload', '$timeout',"ItemList", function ($scope, Upload, $timeout,ItemList) { $scope.send = function(file) { @@ -182,9 +145,25 @@ app.controller('infoadmin_image_create', ['$scope', 'Upload', '$timeout',"ItemLi } }]); -app.controller('infoadmin_apyitem_create', function($scope, $http,ItemList){ - $scope.item = {} - $scope.send = function(){ - $http.post("/infoscreen/create_apyitem", $scope.item).then(ItemList.loadItems) +function itemGenerator(create_url){ + return function($scope, $http, ItemList){ + $scope.item = {} + $scope.send = function(){ + $http.post(create_url, $scope.item).then(ItemList.loadItems) + } } -}); +} +function controllerGenerator(name){ + app.controller("infoadmin_" + name + "_create", + itemGenerator("/infoscreen/create_" + name)); +} +var simple_controllers = [ + "external_image", + "abbitem", + "sossoitem", + "eventitem", + "hslitem", + "websiteitem", + "apyitem", +]; +_.each(simple_controllers, controllerGenerator); diff --git a/infoscreen/static/js/infoscreen_controllers.js b/infoscreen/static/js/infoscreen_controllers.js index 7af5069..f9a2e58 100644 --- a/infoscreen/static/js/infoscreen_controllers.js +++ b/infoscreen/static/js/infoscreen_controllers.js @@ -129,7 +129,7 @@ app.controller('timetableCtrl', objects=data['data']; for(var objectIndex in objects){ var stop = objects[objectIndex]; - + var lineIndex; for (lineIndex in stop['lines']){ var elem=stop['lines'][lineIndex].split(":"); @@ -165,7 +165,7 @@ app.controller('timetableCtrl', departure['stop']="A. A. puisto" var trigger = true; for (var arrIndex = $scope.arr.length - 1; arrIndex >= 0; arrIndex--) { - if ($scope.arr[arrIndex]['bus'] == departure['bus'] && + if ($scope.arr[arrIndex]['bus'] == departure['bus'] && $scope.arr[arrIndex]['laststop'] == departure['laststop']) { if ($scope.arr[arrIndex]['dist'] == departure['dist']){ @@ -226,4 +226,3 @@ app.controller('timetableCtrl', var inter3=$interval(updateTime, 1000); } ); - From 274ab6ec5b1e150cdd5667c8c6d33bc6b78092bd Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Thu, 30 Mar 2017 18:17:36 +0300 Subject: [PATCH 2/7] Fix createdefaultadmin.py output --- webapp/management/commands/createdefaultadmin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/webapp/management/commands/createdefaultadmin.py b/webapp/management/commands/createdefaultadmin.py index 9bca0de..e7cc682 100644 --- a/webapp/management/commands/createdefaultadmin.py +++ b/webapp/management/commands/createdefaultadmin.py @@ -17,4 +17,4 @@ class Command(BaseCommand): u.is_staff = True u.save() - self.stdout.write("Created default user {} with password {}.") + self.stdout.write("Created default user {} with password {}.".format(user_name, password)) From 3855fb5179ab2e30aa936f217730f65173c88061 Mon Sep 17 00:00:00 2001 From: Juhana Luomanen Date: Fri, 31 Mar 2017 00:19:20 +0300 Subject: [PATCH 3/7] Fix add_many_member footer problem --- global_static/css/footer.css | 13 +++++++++---- members/templates/add_many_members.html | 5 ++++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/global_static/css/footer.css b/global_static/css/footer.css index 6022105..8c5e91e 100644 --- a/global_static/css/footer.css +++ b/global_static/css/footer.css @@ -1,3 +1,6 @@ +#footer-div { + height:10vh; +} .footer { position: fixed; bottom: 0; @@ -6,6 +9,8 @@ text-align: center; background-color: #cfcfcf; padding: 1rem; + max-height: 10vh; + font-size: 3vh; } #fi-button { @@ -19,8 +24,8 @@ } .lang-button { - height: 20px; - width: 30px; - margin-left: 10px; - margin-right: 10px; + height: 4vh; + width: 6vh; + margin-left: 1vh; + margin-right: 1vh; } diff --git a/members/templates/add_many_members.html b/members/templates/add_many_members.html index 510d42d..72449ec 100644 --- a/members/templates/add_many_members.html +++ b/members/templates/add_many_members.html @@ -15,7 +15,7 @@
- +
@@ -23,6 +23,9 @@
+ {% endblock content %} From 56f8a17b679dbf691477ddf22277a8cac5cedf8a Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Thu, 6 Apr 2017 18:18:23 +0300 Subject: [PATCH 4/7] Refine automation scripts --- .gitlab-ci.yml | 1 - scripts/autoinstall.sh | 33 +++++++++++++++------------------ 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 687c1db..e86e8d2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,6 +5,5 @@ all_tests: - sh ./scripts/autoinstall.sh - docker-compose run web python manage.py test after_script: - - docker-compose exec -T web find . -path '*/migrations*' -delete - docker-compose exec -T web find . -type f -name '*.pyc' -delete when: on_success diff --git a/scripts/autoinstall.sh b/scripts/autoinstall.sh index 657f689..5ab9ef5 100755 --- a/scripts/autoinstall.sh +++ b/scripts/autoinstall.sh @@ -1,5 +1,8 @@ #!/bin/bash +echo "SIKWEB 2.0 Dockerific install script" +echo "====================================" + echo "Checking if docker is installed..." docker --version if [ "$?" -ne 0 ] @@ -9,7 +12,7 @@ then fi echo "Starting docker daemon and sleeping for 10 seconds..." -dockerd & +dockerd & 2>/dev/null || { echo "Docker daemon failed to start!"; exit 1; } sleep 10 echo "Checking if docker-compose is installed..." @@ -21,40 +24,34 @@ then chmod +x /usr/local/bin/docker-compose fi +PROJECT="web20_site" + echo "Building db container..." -docker-compose build db +docker-compose -p "$PROJECT" build db || { echo "Failed to build db!"; exit 1; } echo "Starting db container..." -docker-compose up -d db +docker-compose -p "$PROJECT" up -d db || { echo "Failed to start db container!"; exit 1; } echo "Waiting 10 seconds..." sleep 10 echo "Importing database settings..." -docker-compose exec -T db sh /db/install.sh -if [ "$?" -eq 0 ] -then - echo "Success!" -else - echo "Failure!" - exit 1 -fi +docker-compose -p "$PROJECT" exec -T db sh /db/install.sh || { echo "Failed to import database settings!"; exit 1; } echo "Shutting down db container..." +docker-compose -p "$PROJECT" down db echo "Copying settings..." -cp sikweb/settings-docker-sample.py sikweb/settings.py +cp sikweb/settings-docker-sample.py sikweb/settings.py || { echo "Failed to copy settings!"; exit 1; } echo "Building web container..." -docker-compose build web +docker-compose -p "$PROJECT" build web echo "Running manage.py commands..." -docker-compose run web python manage.py migrate -docker-compose run web python manage.py makemigrations infoscreen members webapp -docker-compose run web python manage.py migrate -docker-compose run web python manage.py createdefaultadmin +docker-compose -p "$PROJECT" run web python manage.py migrate || { echo "Failed to apply migrations!"; exit 1; } +docker-compose -p "$PROJECT" run web python manage.py createdefaultadmin || { echo "Failed to create default admin user."; } echo "Starting all containers..." -docker-compose up -d +docker-compose -p "$PROJECT" up -d || { echo "Failed to start containers!"; exit 1; } echo "Done." From 3f406b0f05a0480a1e59f91c002038ee4e9c204f Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Thu, 6 Apr 2017 18:22:03 +0300 Subject: [PATCH 5/7] Fix DOCKER_OPTS --- scripts/autoinstall.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/autoinstall.sh b/scripts/autoinstall.sh index 5ab9ef5..3a4a7f5 100755 --- a/scripts/autoinstall.sh +++ b/scripts/autoinstall.sh @@ -1,5 +1,8 @@ #!/bin/bash +export DOCKER_OPTS="" +PROJECT="web20" + echo "SIKWEB 2.0 Dockerific install script" echo "====================================" @@ -24,7 +27,6 @@ then chmod +x /usr/local/bin/docker-compose fi -PROJECT="web20_site" echo "Building db container..." docker-compose -p "$PROJECT" build db || { echo "Failed to build db!"; exit 1; } From c37aca50bdffbfe108526ae994dd4f481fa58fbf Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Thu, 6 Apr 2017 19:04:59 +0300 Subject: [PATCH 6/7] Do not attempt to start docker daemon --- scripts/autoinstall.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/scripts/autoinstall.sh b/scripts/autoinstall.sh index 3a4a7f5..7a5bcf6 100755 --- a/scripts/autoinstall.sh +++ b/scripts/autoinstall.sh @@ -14,9 +14,7 @@ then curl -fsSL https://get.docker.com/ | sh fi -echo "Starting docker daemon and sleeping for 10 seconds..." -dockerd & 2>/dev/null || { echo "Docker daemon failed to start!"; exit 1; } -sleep 10 +systemctl status docker.service || { echo "Docker daemon is not running. Please start it!"; exit 1; } echo "Checking if docker-compose is installed..." docker-compose --version From d028612d5593e45aee83e70ff02e1c9ce5f86a2e Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Thu, 6 Apr 2017 19:13:18 +0300 Subject: [PATCH 7/7] Minor script fixes --- scripts/autoinstall.sh | 4 ++-- webapp/management/commands/createdefaultadmin.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/autoinstall.sh b/scripts/autoinstall.sh index 7a5bcf6..6ca4d6d 100755 --- a/scripts/autoinstall.sh +++ b/scripts/autoinstall.sh @@ -14,7 +14,7 @@ then curl -fsSL https://get.docker.com/ | sh fi -systemctl status docker.service || { echo "Docker daemon is not running. Please start it!"; exit 1; } +systemctl status docker.service >/dev/null || { echo "Docker daemon is not running. Please start it!"; exit 1; } echo "Checking if docker-compose is installed..." docker-compose --version @@ -39,7 +39,7 @@ echo "Importing database settings..." docker-compose -p "$PROJECT" exec -T db sh /db/install.sh || { echo "Failed to import database settings!"; exit 1; } echo "Shutting down db container..." -docker-compose -p "$PROJECT" down db +docker-compose down db echo "Copying settings..." cp sikweb/settings-docker-sample.py sikweb/settings.py || { echo "Failed to copy settings!"; exit 1; } diff --git a/webapp/management/commands/createdefaultadmin.py b/webapp/management/commands/createdefaultadmin.py index e7cc682..d19c288 100644 --- a/webapp/management/commands/createdefaultadmin.py +++ b/webapp/management/commands/createdefaultadmin.py @@ -17,4 +17,4 @@ class Command(BaseCommand): u.is_staff = True u.save() - self.stdout.write("Created default user {} with password {}.".format(user_name, password)) + self.stdout.write("Created default user {} with password {}.".format(self.user_name, self.password))