Created member application form, reload page doesn't work
This commit is contained in:
@@ -100,3 +100,6 @@ Pekka,Pöytä,pekka.p.pouta@mosh.pit,Tuska,1,0
|
||||
{"status": "success", "errors": []}
|
||||
// example response on failure (code will be 400)
|
||||
{"status": "failure", "errors": ["failure adding item Pekka, P\u00f6yt\u00e42, pekka.p.pouta@mosh.pit, Tuska, Eip"]}
|
||||
|
||||
//member request from official page
|
||||
POST /members/api/request
|
||||
@@ -0,0 +1,43 @@
|
||||
//app
|
||||
|
||||
app = angular.module('applicationApp', []);
|
||||
|
||||
//tokens
|
||||
|
||||
app.config(['$httpProvider', function ($httpProvider) {
|
||||
$httpProvider.defaults.xsrfCookieName = 'csrftoken';
|
||||
$httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
|
||||
}]);
|
||||
|
||||
//helpers
|
||||
|
||||
function notyfication(type,timeout){
|
||||
return function(msg){
|
||||
noty({
|
||||
'text': msg,
|
||||
'layout': "bottomRight",
|
||||
'type': type,
|
||||
'timeout': timeout
|
||||
});
|
||||
};
|
||||
}
|
||||
var notyError = notyfication('error',2500);
|
||||
var notySuccess = notyfication('success',2500);
|
||||
|
||||
//controllers
|
||||
|
||||
app.controller("applicationController", function($scope, $http, $location) {
|
||||
$scope.firstName = "";
|
||||
$scope.lastName = "";
|
||||
$scope.email = "";
|
||||
//$scope.year = "1";
|
||||
$scope.AYY = "";
|
||||
$scope.JAS = "";
|
||||
$scope.POR = "";
|
||||
$scope.send = function() {
|
||||
$http.post("/members/api/request", {"first_name":$scope.firstName, "last_name":$scope.lastName, "email":$scope.email, /*"year":$scope.year,*/ "AYY":$scope.AYY, "jas":$scope.JAS, "POR":$scope.POR}).then(function(data){
|
||||
notySuccess("Hakemus lähetetty!");
|
||||
$location.path("application/");
|
||||
});
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,65 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en" ng-app="applicationApp" ng-controller="applicationController">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="description" content="uli uli">
|
||||
<meta name="author" content="veedeeämkoo">
|
||||
|
||||
<title>Jäseneksi Aalto-yliopiston Sähköinsinöörikiltaan</title>
|
||||
|
||||
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
|
||||
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
|
||||
<link href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.css" rel = "stylesheet">
|
||||
<script src = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.6/angular.js"></script>
|
||||
<script src = "http://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min.js"></script>
|
||||
{%load staticfiles %}
|
||||
<script src="/static/js/jquery.noty.packaged.js"></script>
|
||||
<script src="/static/js/application_controllers.js"></script>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<h2>Killan jäseneksi liittyminen on helppoa ja hauskaa. Täytä vain alla oleva lomake.</h2>
|
||||
<h2>Muista myös maksaa jäsenmaksusi!</h2>
|
||||
<div id="input_form">
|
||||
<form name="applicationForm">
|
||||
<div class="form-group">
|
||||
<label>Etunimi: </label>
|
||||
<input id="firstNameField" required type="text" placeholder="Sähkö" class="form-control" ng-model="firstName"></input>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>Sukunimi: </label>
|
||||
<input id="lastNameField" required type="text" placeholder="Insinööri" class="form-control" ng-model="lastName"></input>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>Sähköposti: </label>
|
||||
<input id="emailField" required type="text" placeholder="sahko.insinoori@aalto.fi" class="form-control" ng-model="email"></input>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<!--<label>Vuosikurssi: </label>
|
||||
<select name="year" ng-model="year">
|
||||
<option value="1">1</option>
|
||||
<option value="2">2</option>
|
||||
<option value="3">3</option>
|
||||
<option value="4">4</option>
|
||||
<option value="n">N</option>
|
||||
</select>
|
||||
</div>-->
|
||||
<div class="form-group">
|
||||
<label>Olen AYY:n jäsen: </label>
|
||||
<input type="checkbox" id="AYY" value="0" ng-model="AYY"></input>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>Haluan saada viikottaisia jäsenmaileja: </label>
|
||||
<input type="checkbox" id="JAS" value="0" ng-model="JAS"></input>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>Asuinkunta: </label>
|
||||
<input id="PORField" required type="text" placeholder="Otaniemi" class="form-control" ng-model="POR"></input>
|
||||
</div>
|
||||
<button ng-click="applicationForm.$valid && send()" type="submit" class="btn btn-success" id="sendmember">Tallenna</button>
|
||||
</form>
|
||||
</div>
|
||||
</body>
|
||||
@@ -13,6 +13,10 @@ import json
|
||||
def index(request, *args, **kwargs):
|
||||
return render(request, 'members_index.html',{})
|
||||
|
||||
@ensure_csrf_cookie
|
||||
def applicationindex(request, *args, **kwargs):
|
||||
return render(request, 'application_index.html',{})
|
||||
|
||||
@ensure_csrf_cookie
|
||||
@require_http_methods(["GET"])
|
||||
@permission_required('members.change_member', login_url='/login')
|
||||
|
||||
+4
-1
@@ -32,7 +32,8 @@ from members.views import member_requests
|
||||
#infoscreen
|
||||
from infoscreen.views import index as infoindex
|
||||
from infoscreen.views import abb_job_list
|
||||
|
||||
#application
|
||||
from members.views import applicationindex
|
||||
|
||||
urlpatterns = [
|
||||
# main
|
||||
@@ -54,4 +55,6 @@ urlpatterns = [
|
||||
#infoscreen
|
||||
url(r'^infoscreen/$', infoindex),
|
||||
url(r'^infoscreen/abbjobs$', abb_job_list),
|
||||
#application
|
||||
url(r'^application/$', applicationindex),
|
||||
]
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
<nav class="navbar navbar-default sidebar" role="navigation">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-sidebar-navbar-collapse-1">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
</div>
|
||||
<div class="collapse navbar-collapse" id="bs-sidebar-navbar-collapse-1">
|
||||
<ul class="nav navbar-nav">
|
||||
<li class="active"><a href="#">Kilta<span style="font-size:16px;" class="pull-right hidden-xs showopacity glyphicon glyphicon-home"></span></a></li>
|
||||
<li class="dropdown">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Yritykset <span class="caret"></span><span style="font-size:16px;" class="pull-right hidden-xs showopacity glyphicon glyphicon-user"></span></a>
|
||||
<ul class="dropdown-menu forAnimate" role="menu">
|
||||
<li><a href="{{URL::to('createusuario')}}">Työpaikat</a></li>
|
||||
<li><a href="#">Yritysdadaa</a></li>
|
||||
<li><a href="#">Lisää yritysdadaa</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Separated link</a></li>
|
||||
<li class="divider"></li>
|
||||
<li><a href="#">Informes</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li ><a href="#">Tapahtumakalenteri<span style="font-size:16px;" class="pull-right hidden-xs showopacity glyphicon glyphicon-th-list"></span></a></li>
|
||||
<li ><a href="#">International<span style="font-size:16px;" class="pull-right hidden-xs showopacity glyphicon glyphicon-tags"></span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
Reference in New Issue
Block a user