Commit e78511c8 authored by Grzegorz Pietrusza's avatar Grzegorz Pietrusza

erge branch 'master' of gitlab.telemabk.pl:jifwin/CTF

parents 8ab1c216 6422ddc7
(function(){
angular.module('ctfApp').controller('LoginController',
['$scope', '$rootScope', '$location', 'AuthenticationService', '$window', 'NavbarService',
function ($scope, $rootScope, $location, AuthenticationService, $window, NavbarService) {
['$scope', '$rootScope', '$location', 'AuthenticationService', '$window', 'NavbarService', 'AppSettings',
function ($scope, $rootScope, $location, AuthenticationService, $window, NavbarService, AppSettings) {
// reset login status
AuthenticationService.clearCredentials();
......@@ -13,7 +13,7 @@
$location.path('/');
AuthenticationService.setCredentials($scope.username, $scope.password, response.team);
// redirect to additional external auth point
$window.location.href = "http://"+$scope.username+":"+$scope.password+"@52.28.244.24:8080/api/v1/auth";
$window.location.href = AppSettings.getApiAddressWithCredentials($scope.username, $scope.password) + '/auth';
} else {
Materialize.toast('Błąd logowania! Spróbuj jeszcze raz.', 5000 ,'toast-error');
$scope.dataLoading = false;
......
(function(){
angular.module('ctfApp').controller('TaskController', ['$scope', '$stateParams', 'APIProvider', 'AppSettings', function($scope, $stateParams, APIProvider, AppSettings) {
$scope.submitUnknown = false;
$scope.apiAddress = 'http://' + AppSettings.apiAddress;
$scope.apiAddress = AppSettings.getApiAddress();
$scope.selectedTaskId = $stateParams.taskLevel;
// console.log('SELECTED TASK ID', $scope.selectedTaskId);
APIProvider.getTaskById($scope.selectedTaskId, function(data){
......
(function(){
angular.module('ctfApp').controller('TasksController', ['$scope', '$http', 'APIProvider', 'AppSettings', function($scope, $http, APIProvider, AppSettings) {
$scope.apiAddress = AppSettings.apiAddress;
$scope.apiAddress = AppSettings.getApiAddress();
APIProvider.getTasks(function(data){
// console.log(data);
$.each(data, function(key){
data[key].short_description = data[key].description.split(" ").slice(0,6).join(" ").concat("...");
});
APIProvider.getMyCompletedLevelsList(function(completed){
$.each(data, function(key, task){
if (completed.indexOf(task.level) !== -1){
......@@ -13,7 +18,9 @@
}
});
});
$scope.tasks = data;
});
}]);
})();
\ No newline at end of file
......@@ -37,12 +37,31 @@
}]);
app.factory('AppSettings', function() {
var dev = "localhost:8080/api/v1", prod = "52.28.244.24:8080/api/v1";
app.factory('AppSettings', ['$http', function($http) {
// fallback into defaults, if everything fails, world collapses, hell freezes and /startup will not resolve
var domainName = '52.25.28.64', port = "http", schema = 8080;
return {
apiAddress: prod
initAPI: function(){
$http.get('/api/v1/startup').success(function(data){
console.debug(data);
domainName = data.domainName;
port = data.port;
schema = data.schema;
});
},
getApiAddress: function(){
return schema + "://" + domainName + ":" + port + "/api/v1";
},
getApiAddressWithCredentials: function(username, password){
return schema + "://" + username + ":" + password + "@" + domainName + ":" + port + "/api/v1";
}
};
});
}]);
app.config(['$httpProvider', function ($httpProvider) {
......@@ -59,8 +78,10 @@
}]);
app.run(['$rootScope', '$location', '$cookieStore', '$http', 'NavbarService',
function ($rootScope, $location, $cookieStore, $http, NavbarService) {
app.run(['$rootScope', '$location', '$cookieStore', '$http', 'NavbarService', 'AppSettings',
function ($rootScope, $location, $cookieStore, $http, NavbarService, AppSettings) {
AppSettings.initAPI();
$(".button-collapse").sideNav();
......
......@@ -5,7 +5,7 @@
getScores: function(callback){
$http.get('http://' + AppSettings.apiAddress + '/solutions/all').
$http.get(AppSettings.getApiAddress() + '/solutions/all').
success(function(data) {
scores = data;
if (callback) callback(data);
......@@ -13,7 +13,7 @@
},
getTasks: function(callback){
$http.get('http://' + AppSettings.apiAddress + '/tasks').
$http.get(AppSettings.getApiAddress() + '/tasks').
success(function(data) {
this.getMySolutions(function(solutions){
if (solutions){
......@@ -69,7 +69,7 @@
* @param callback
*/
getMyCompletedLevelsList: function(callback){
$http.get('http://' + AppSettings.apiAddress + '/solutions/my/completed').
$http.get(AppSettings.getApiAddress() + '/solutions/my/completed').
success(function(data) {
if (callback) callback(data);
});
......@@ -82,7 +82,7 @@
* @returns {HttpPromise}
*/
submitFlag: function(level, flag){
return $http.post('http://' + AppSettings.apiAddress + '/solutions/' + level, flag);
return $http.post(AppSettings.getApiAddress() + '/solutions/' + level, flag);
}
};
}]);
......
......@@ -15,7 +15,7 @@
*/
login: function (username, password, callback) {
$http.get('http://' + username + ":" + password + "@" + AppSettings.apiAddress + '/whoami', {
$http.get(AppSettings.getApiAddressWithCredentials(username, password) + '/whoami', {
headers: {'Authorization': 'Basic ' + Base64.encode(username + ':' + password)}
})
.then(function (response) {
......@@ -35,7 +35,7 @@
*/
logout: function (callback) {
$http.get('http://' + 'askdjfadsf' + ':' + 'adsfasskdjfadsf' + '@' + AppSettings.apiAddress + '/whoami', {
$http.get(AppSettings.getApiAddressWithCredentials('askdjfadsf', 'adsfasskdjfadsf') + '/whoami', {
headers: {'Authorization': 'Basic ' + Base64.encode('askdjfadsf' + ':' + 'adsfasskdjfadsf')}
}).then(function(response){
this.clearCredentials();
......
......@@ -18,11 +18,7 @@
</div>
</span>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut
labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco
laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in
voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat
non proident, sunt in culpa qui officia deserunt mollit anim id est laborum
{{task.description}}
</p>
</div>
</div>
......
......@@ -10,7 +10,7 @@
<i ng-if="task.taskType === 'WEB'" class="fa fa-globe" alt="Zadanie webowe"></i>
{{task.name}}
</span>
<p>Poziom {{task.level}}. Super zadanie.</p>
<p>Poziom {{task.level}}. {{task.short_description}}</p>
</div>
<div class="card-action">
<a href="#/task/{{task.level}}">Przejdź do zadania</a></td>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment