/* global angular, i18n */ 'use strict'; angular.module('PromptSkill', [ 'PromptSkill.filters', 'PromptSkill.services', 'PromptSkill.dashboards', 'PromptSkill.programs', 'PromptSkill.enrols', 'PromptSkill.learners', 'PromptSkill.directives', 'PromptSkill.controllers', 'ngRoute', 'ngSanitize', 'ngMeta', 'ngCookies', 'ngResource' ]) .config(function(ngMetaProvider) { ngMetaProvider.useTitleSuffix(true); ngMetaProvider.setDefaultTitle('PROMPTSKILLs'); //ngMetaProvider.setDefaultTitleSuffix(' | YourSite'); ngMetaProvider.setDefaultTag('device', 'desktop'); }) .config(['$resourceProvider', function($resourceProvider) { // Don't strip trailing slashes from calculated URLs $resourceProvider.defaults.stripTrailingSlashes = false; }]) .config(['$routeProvider', '$httpProvider', '$locationProvider', function($routeProvider, $httpProvider, $locationProvider) { $routeProvider.when('/', { controller: 'home', templateUrl: '/templates/home.promptskill', data: { meta: { 'title': '', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/courses', { controller: 'home', templateUrl: '/templates/pages/courses.promptskill', data: { meta: { 'title': 'หลักสูตรทั้งหมด', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/course/:code', { controller: 'course', templateUrl: '/templates/pages/course.promptskill', data: { meta: { 'title': 'หลักสูตร', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/enrol/:code', { controller: 'course', templateUrl: '/templates/pages/course-enrol.promptskill', data: { meta: { 'title': 'Course Enrollment', 'description': 'course enrollment process', 'keywords': 'enroll, payment, online', 'device': 'mobile, tablet' } } }); $routeProvider.when('/course/:code/:outline/:activity', { controller: 'course', templateUrl: '/templates/pages/course-outline.promptskill', data: { meta: { 'title': 'เนื้อหา', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/how-to-learn', { controller: 'home', templateUrl: '/templates/pages/how-to-learn.promptskill', data: { meta: { 'title': 'วิธีการเรียน', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/faculty-of-lecturers', { controller: 'home', templateUrl: '/templates/pages/faculty-of-lecturers.promptskill', data: { meta: { 'title': 'วิทยากร', 'description': '', 'device': '' } } }); $routeProvider.when('/lecturer/:id', { // controller: 'home', templateUrl: '/templates/pages/lecturer.promptskill', data: { meta: { 'title': 'ข้อมูลวิทยากร', 'description': '', 'device': '' } } }); $routeProvider.when('/frequently-asked-questions', { controller: 'home', templateUrl: '/templates/pages/faq.promptskill', data: { meta: { 'title': 'คำถามที่ถามบ่อย', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/course/:code/certificate', { controller: 'user', templateUrl: '/templates/pages/course-certificate.promptskill', data: { meta: { 'title': 'ใบประกาศนียบัตร', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/live', { controller: 'member', templateUrl: '/templates/pages/live.promptskill', data: { meta: { 'title': 'Live', 'description': '', 'device': '' } } }); $routeProvider.when('/register', { controller: 'register', templateUrl: '/templates/pages/register.promptskill', data: { meta: { 'title': 'แบบฟอร์มลงทะเบียน', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/register/:course', { controller: 'register', templateUrl: '/templates/pages/register.promptskill', data: { meta: { 'title': 'แบบฟอร์มลงทะเบียนหลักสูตร', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/register/:course/info', { controller: 'register', templateUrl: '/templates/pages/register-info.promptskill', data: { meta: { 'title': 'แบบฟอร์มลงทะเบียนหลักสูตร', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/register/completed', { controller: 'register', templateUrl: '/templates/pages/register-state.promptskill', data: { meta: { 'title': 'ลงทะเบียนเรียบร้อย', 'description': '', 'device': '' } } }); $routeProvider.when('/dashboard', { controller: 'user', templateUrl: '/templates/pages/dashboard.promptskill', data: { meta: { 'title': 'หน้าหลักผู้เรียน', 'description': '', 'device': '' } } }); // $routeProvider.when('/signup', { // controller: 'member', // templateUrl: '/templates/pages/signup.promptskill', // data: { // meta: { // 'title': 'ลงทะเบียน', // 'description': '', // 'device': 'mobile, tablet' // } // } // }); // $routeProvider.when('/signin', { // controller: 'member', // templateUrl: '/templates/pages/signin.promptskill', // data: { // meta: { // 'title': 'เข้าสู่ระบบ', // 'description': '', // 'device': 'mobile, tablet' // } // } // }); // $routeProvider.when('/forgot-password', { // controller: 'member', // templateUrl: '/templates/pages/forgot-password.promptskill', // data: { // meta: { // 'title': 'ลืมรหัสผ่าน', // 'description': 'PROMPTSKILLs Forgot password', // 'keywords': 'promptskill, forgot, password', // 'device': 'mobile, tablet' // } // } // }); // $routeProvider.when('/reset-password', { // controller: 'member', // templateUrl: '/templates/pages/reset-password.promptskill', // data: { // meta: { // 'title': 'ตั้งรหัสผ่านใหม่', // 'description': 'PROMPTSKILLs Reset password', // 'keywords': 'promptskill, reset, password', // 'device': 'mobile, tablet' // } // } // }); $routeProvider.when('/about-us', { controller: 'home', templateUrl: '/templates/pages/about-us.promptskill', data: { meta: { 'title': 'เกี่ยวกับเรา', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.when('/contact-us', { controller: 'home', templateUrl: '/templates/pages/contact-us.promptskill', data: { meta: { 'title': 'ติตต่อเรา', 'description': '', 'device': 'mobile, tablet' } } }); $routeProvider.otherwise({ redirectTo: '/' }); // $locationProvider.html5Mode(true) // $httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8'; //$httpProvider.defaults.withCredentials = true; //$httpProvider.defaults.useXDomain = true; //delete $httpProvider.defaults.headers.common['X-Requested-With']; var param = function(obj) { var query = '', name, value, fullSubName, subName, subValue, innerObj, i; for (name in obj) { value = obj[name]; if (value instanceof Array) { for (i = 0; i < value.length; ++i) { subValue = value[i]; fullSubName = name + '[' + i + ']'; innerObj = {}; innerObj[fullSubName] = subValue; query += param(innerObj) + '&'; } } else if (value instanceof Object) { for (subName in value) { subValue = value[subName]; fullSubName = name + '[' + subName + ']'; innerObj = {}; innerObj[fullSubName] = subValue; query += param(innerObj) + '&'; } } else if (value !== undefined && value !== null) query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&'; } return query.length ? query.substr(0, query.length - 1) : query; }; $httpProvider.defaults.transformRequest = [function(data) { return angular.isObject(data) && String(data) !== '[object File]' ? param(data) : data; }]; }]) .run(["ngMeta", function (ngMeta) { ngMeta.init(); }]); Array.prototype.contains = function(obj) { //console.log(obj) return this.indexOf(obj) > -1; };