Commit bbba33088188129d4d637d565c3c738752f6383a

Authored by Andrew Buss
1 parent 4fc1728b4a

Added addclass stuff with autocomplete prototype

Showing 7 changed files with 87 additions and 29 deletions Inline Diff

angular.module('flashy', [ 1 1 angular.module('flashy', [
'flashy.LogoutController', 2 2 'flashy.LogoutController',
'flashy.LoginController', 3 3 'flashy.LoginController',
'flashy.HomeController', 4 4 'flashy.HomeController',
'flashy.FeedController', 5 5 'flashy.FeedController',
'flashy.DeckController', 6 6 'flashy.DeckController',
'flashy.RequestResetController', 7 7 'flashy.ClassAddController',
8 'flashy.RequestResetController',
'ngCookies']). 8 9 'ngCookies']).
config(['$stateProvider', '$urlRouterProvider', '$httpProvider', 9 10 config(['$stateProvider', '$urlRouterProvider', '$httpProvider',
'$locationProvider', 10 11 '$locationProvider',
function($stateProvider, $urlRouterProvider, $httpProvider, $locationProvider) { 11 12 function ($stateProvider, $urlRouterProvider, $httpProvider, $locationProvider) {
'use strict'; 12 13 'use strict';
$httpProvider.defaults.withCredentials = true; 13 14 $httpProvider.defaults.withCredentials = true;
$httpProvider.defaults.xsrfCookieName = 'csrftoken'; 14 15 $httpProvider.defaults.xsrfCookieName = 'csrftoken';
$httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken'; 15 16 $httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
$locationProvider.html5Mode(true); 16 17 $locationProvider.html5Mode(true);
$urlRouterProvider.otherwise('/home'); 17 18 $urlRouterProvider.otherwise('/home');
$stateProvider. 18 19 $stateProvider.
state('home', { 19 20 state('home', {
url: '/home', 20 21 url: '/home',
templateUrl: 'home.html', 21 22 templateUrl: 'home.html',
controller: 'HomeController' 22 23 controller: 'HomeController'
}). 23 24 }).
state('login', { 24 25 state('login', {
url: '/login', 25 26 url: '/login',
templateUrl: 'templates/login.html', 26 27 templateUrl: 'templates/login.html',
controller: 'LoginController' 27 28 controller: 'LoginController'
}). 28 29 }).
state('logout', { 29 30 state('logout', {
url: '/logout', 30 31 url: '/logout',
templateUrl: 'templates/logout.html', 31 32 templateUrl: 'templates/logout.html',
controller: 'LogoutController' 32 33 controller: 'LogoutController'
}). 33 34 }).
state('dashboard', { 34 35 state('dashboard', {
url: '/dashboard', 35 36 url: '/dashboard',
templateUrl: 'templates/dashboard.html', 36 37 templateUrl: 'templates/dashboard.html',
controller: 'DashboardController' 37 38 controller: 'DashboardController'
}). 38 39 }).
state('feed', { 39 40 state('feed', {
url: '/feed', 40 41 url: '/feed',
templateUrl: 'templates/feed.html', 41 42 templateUrl: 'templates/feed.html',
controller: 'FeedController' 42 43 controller: 'FeedController'
}). 43 44 }).
45 state('addclass', {
46 url: '/classes/add',
47 templateUrl: 'templates/addclass.html',
48 controller: 'ClassAddController'
49 }).
state('deck', { 44 50 state('deck', {
url: '/deck', 45 51 url: '/deck',
templateUrl: 'templates/deck.html', 46 52 templateUrl: 'templates/deck.html',
controller: 'DeckController' 47 53 controller: 'DeckController'
}). 48 54 }).
state('requestpasswordreset', { 49 55 state('requestpasswordreset', {
url: '/requestpasswordreset', 50 56 url: '/requestpasswordreset',
templateUrl: 'templates/requestpasswordreset.html', 51 57 templateUrl: 'templates/requestpasswordreset.html',
controller: 'RequestResetController' 52 58 controller: 'RequestResetController'
}); 53 59 });
54 60
}]); 55 61 }]);
56 62
#loginform input { 1 1 #loginform input {
2 2
} 3 3 }
4 4
5 5
#sidebar { 6 6 #sidebar {
position:absolute; 7 7 position:absolute;
top:100px; 8 8 top:100px;
left:0px; 9 9 left:0px;
} 10 10 }
11 11
.diclaimer { 12 12 .diclaimer {
color:#00AFD8; 13 13 color:#00AFD8;
} 14 14 }
15 15
.form-section { 16 16 .form-section {
width: 330px; 17 17 width: 330px;
top: 50%; 18 18 top: 50%;
position: relative; 19 19 position: relative;
} 20 20 }
21 21
.form-inputs { 22 22 .form-inputs {
margin-top: 0px; 23 23 margin-top: 0px;
border: 0px none; 24 24 border: 0px none;
font: 16px/1.4 "Helvetica Neue","HelveticaNeue",Helvetica,Arial; 25 25 font: 16px/1.4 "Helvetica Neue","HelveticaNeue",Helvetica,Arial;
padding: 5px 10px 11px 13px; 26 26 padding: 5px 10px 11px 13px;
width: 100%; 27 27 width: 100%;
box-sizing: border-box; 28 28 box-sizing: border-box;
} 29 29 }
30 30
.form-buttons { 31 31 .form-buttons {
margin-top: 10px; 32 32 margin-top: 10px;
width: 100%; 33 33 width: 100%;
font-size: 16px; 34 34 font-size: 16px;
} 35 35 }
36 36
.form-buttons .last-button { 37 37 .form-buttons .last-button {
float: right; 38 38 float: right;
} 39 39 }
40 40
.container { 41 41 .container {
position: relative; 42 42 position: relative;
width: 400px; 43 43 width: 600px;
height: 80px; 44 44 height: 80px;
45 }
46
47 .angucomplete-dropdown {
48 border-color: #ececec;
49 border-width: 1px;
50 border-style: solid;
51 border-radius: 2px;
52 /*width: 250px;*/
53 padding: 6px;
54 cursor: pointer;
55 z-index: 9999;
56 position: absolute;
57 /*top: 32px;
58 left: 0px;
59 */
60 margin-top: -6px;
61 background-color: #ffffff;
62 }
63
64 .angucomplete-description {
65 font-size: 14px;
gjslint.conf View file @ bbba330
--strict 1
--summary 2 1 --summary
<!DOCTYPE html> 1 1 <!DOCTYPE html>
<html ng-app="flashy"> 2 2 <html ng-app="flashy">
<base href="/app/"> 3 3 <base href="/app/">
<head> 4 4 <head>
<link rel="stylesheet" href="styles/bootstrap-3.3.4-dist/css/bootstrap.css"/> 5 5 <link rel="stylesheet" href="styles/bootstrap-3.3.4-dist/css/bootstrap.css"/>
<link rel="stylesheet" href="flashy.css"/> 6 6 <link rel="stylesheet" href="flashy.css"/>
</head> 7 7 </head>
8 8
<body ng-controller="HomeController"> 9 9 <body ng-controller="HomeController">
10 10
<!-- MENU BAR --> 11 11 <!-- MENU BAR -->
<nav class="navbar navbar-default"> 12 12 <nav class="navbar navbar-default">
<div class="container-fluid"> 13 13 <div class="container-fluid">
<a class="navbar-brand" ui-sref="dashboard">Flashy</a> 14 14 <a class="navbar-brand" ui-sref="dashboard">Flashy</a>
<a class="navbar-brand navbar-right" ui-sref="logout">Logout</a> 15 15 <a class="navbar-brand navbar-right" ui-sref="logout">Logout</a>
</div> 16 16 </div>
</nav> 17 17 </nav>
<div class="container" ui-view></div> 18 18 <div class="container" ui-view></div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.js"></script> 19 19 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.14/angular-ui-router.js"></script> 20 20 <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.14/angular-ui-router.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-cookies.js"></script> 21 21 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-cookies.js"></script>
22 <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
23 <script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
22 24
<script src="config.js"></script> 23 25 <script src="config.js"></script>
24 26
<script src="scripts/FeedController.js"></script> 25 27 <script src="scripts/FeedController.js"></script>
<script src="scripts/HomeController.js"></script> 26 28 <script src="scripts/HomeController.js"></script>
<script src="scripts/LoginController.js"></script> 27 29 <script src="scripts/LoginController.js"></script>
<script src="scripts/LogoutController.js"></script> 28 30 <script src="scripts/LogoutController.js"></script>
<script src="scripts/DeckController.js"></script> 29 31 <script src="scripts/DeckController.js"></script>
<script src="scripts/RequestResetController.js"></script> 30 32 <script src="scripts/RequestResetController.js"></script>
31 33 <script src="scripts/ClassAddController.js"></script>
32 34 <script src="http://ghiden.github.io/angucomplete-alt/js/libs/angucomplete-alt.js"></script>
33
scripts/ClassAddController.js View file @ bbba330
File was created 1 angular.module('flashy.ClassAddController', ['ui.router', 'angucomplete-alt']).
2
3 controller('ClassAddController', ['$scope', '$state', function ($scope, $state) {
4
5 $scope.remoteUrlRequestFn = function (str) {
6 return {q: str};
scripts/FeedController.js View file @ bbba330
angular.module('flashy.FeedController', ['ui.router']). 1 1 angular.module('flashy.FeedController', ['ui.router']).
2 2
controller('FeedController', ['$scope', '$state', function($scope, $state) { 3 3 controller('FeedController', ['$scope', '$state', function ($scope, $state) {
console.log('Hello from feed'); 4 4 console.log('Hello from feed');
5 5
6 $scope.createCard = function () {
6 7
$scope.createCard = function () { 7 8 $(document).ready(function () {
9 $("#createCardModal").modal('show');
10 });
11 }
8 12
$(document).ready(function () { 9 13 $scope.viewDeck = function () {
$("#createCardModal").modal('show'); 10 14 $state.go('deck');
}); 11 15 console.log("go to deck");
} 12 16 }
13 17
14 18 }]);
15
$scope.viewDeck = function () { 16
$state.go('deck'); 17
console.log("go to deck"); 18
} 19
20
}]); 21
templates/addclass.html View file @ bbba330
File was created 1 <div angucomplete-alt id="classes"
2 placeholder="Search classes"
3 pause="100"
4 selected-object="selectedClass"
5 remote-url="/api/sections/search/"
6 remote-url-request-formatter="remoteUrlRequestFn" ,
7 remote-url-data-field="" ,
8 title-field="short_name" ,
9 description-field="long_name",
10 minlength="2",
11 pause="0",
12 input-class="form-control"/>
13 <div class="result">
14 <div class="" ng-show="selectedCountry6">
15 You selected <span class="bold-span">{{selectedClass.course_num}}</span>
16 which
17 has a country code of <span
18 class="bold-span">{{selectedClass.instructor}}</span>
19 </div>
20 </div>