mirror of
https://github.com/apache/archiva.git
synced 2025-02-21 09:24:54 +00:00
improve a bit js loading, move more function to utils.js
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1212454 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
9df8caaadd
commit
cd96001a38
@ -2,7 +2,7 @@
|
||||
<html>
|
||||
<head>
|
||||
<link rel="stylesheet" href="css/aristo.css"/>
|
||||
<link rel="stylesheet" href="css/bootstrap.min.1.4.0.css">
|
||||
<link rel="stylesheet" href="css/bootstrap.min.1.4.0.css">
|
||||
|
||||
<script type="text/javascript" src="js/jquery-1.7.js"></script>
|
||||
|
||||
@ -41,18 +41,17 @@
|
||||
});
|
||||
$LAB.setGlobalDefaults({AlwaysPreserveOrder:true,BasePath:"js/",explicit_preloading:false});
|
||||
$LAB
|
||||
.script("archiva/utils.js").wait()
|
||||
.script("jquery.tmpl.js").wait()
|
||||
.script("archiva/utils.js").wait()
|
||||
.script("jquery.i18n.properties-1.0.9.js").wait()
|
||||
.script("redback/i18nload.js").wait()
|
||||
.script("archiva/main-tmpl.js").wait()
|
||||
.script("jquery.cookie.1.0.0.js").wait()
|
||||
.script("knockout-debug.js").wait()
|
||||
.script("jquery-ui-1.8.16.custom.min.js").wait()
|
||||
.script("redback/register.js").wait()
|
||||
.script("jquery.i18n.properties-1.0.9.js").wait()
|
||||
.script("redback/i18nload.js").wait()
|
||||
.script("jquery.validate.js").wait()
|
||||
.script("jquery.json-2.3.min.js").wait()
|
||||
.script("redback/operation.js").wait()
|
||||
.script("archiva/main-tmpl.js").wait()
|
||||
.script("redback/redback-tmpl.js").wait()
|
||||
.script("bootstrap-modal.js").wait()
|
||||
.script("bootstrap-alerts.js").wait()
|
||||
@ -60,6 +59,8 @@
|
||||
.script("knockout.simpleGrid.js").wait()
|
||||
.script("redback/user.js").wait()
|
||||
.script("redback/users.js").wait()
|
||||
.script("redback/redback.js").wait()
|
||||
.script("redback/register.js").wait()
|
||||
.script("archiva/main.js");
|
||||
|
||||
</script>
|
||||
|
@ -19,216 +19,162 @@
|
||||
require( ["order!jquery" ,"order!redback/redback"],
|
||||
function($) {
|
||||
|
||||
$(function() {
|
||||
$(function() {
|
||||
|
||||
//$LAB.script("main-tmpl.js").wait(function(){
|
||||
$.log("main karma");
|
||||
customShowError=function(validator, errorMap, errorList) {
|
||||
$( "div.clearfix" ).removeClass( "error" );
|
||||
$( "span.help-inline" ).remove();
|
||||
for ( var i = 0; errorList[i]; i++ ) {
|
||||
var error = errorList[i];
|
||||
var field = $("#"+error.element.id);
|
||||
field.parents( "div.clearfix" ).addClass( "error" );
|
||||
field.parent().append( "<span class=\"help-inline\">" + error.message + "</span>" )
|
||||
}
|
||||
|
||||
|
||||
$.log("main karma");
|
||||
customShowError=function(validator, errorMap, errorList) {
|
||||
$( "div.clearfix" ).removeClass( "error" );
|
||||
$( "span.help-inline" ).remove();
|
||||
for ( var i = 0; errorList[i]; i++ ) {
|
||||
var error = errorList[i];
|
||||
var field = $("#"+error.element.id);
|
||||
field.parents( "div.clearfix" ).addClass( "error" );
|
||||
field.parent().append( "<span class=\"help-inline\">" + error.message + "</span>" )
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* return a user see user.js if user logged otherwise null
|
||||
*/
|
||||
userLogged=function() {
|
||||
// call restServices/redbackServices/loginService/isLogged to know
|
||||
// if a session exists and check the cookie
|
||||
var userLogged = true;
|
||||
$.ajax("restServices/redbackServices/loginService/isLogged", {
|
||||
type: "GET",
|
||||
async: false,
|
||||
success: function(data) {
|
||||
userLogged = JSON.parse(data);
|
||||
}
|
||||
});
|
||||
if (userLogged == false)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
return jQuery.parseJSON($.cookie('redback_login'));
|
||||
}
|
||||
|
||||
/**
|
||||
* return a user see user.js if user logged otherwise null
|
||||
*/
|
||||
userLogged=function() {
|
||||
// call restServices/redbackServices/loginService/isLogged to know
|
||||
// if a session exists and check the cookie
|
||||
var userLogged = true;
|
||||
$.ajax("restServices/redbackServices/loginService/isLogged", {
|
||||
type: "GET",
|
||||
async: false,
|
||||
success: function(data) {
|
||||
userLogged = JSON.parse(data);
|
||||
}
|
||||
});
|
||||
if (userLogged == false)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
return jQuery.parseJSON($.cookie('redback_login'));
|
||||
/**
|
||||
* reccord a cookie for session with the logged user
|
||||
* @param user see user.js
|
||||
*/
|
||||
reccordLoginCookie=function(user) {
|
||||
$.cookie('redback_login', ko.toJSON(user));
|
||||
}
|
||||
|
||||
getUserFromLoginCookie=function(){
|
||||
return $.parseJSON($.cookie('redback_login'));
|
||||
}
|
||||
|
||||
deleteLoginCookie=function(){
|
||||
$.cookie('redback_login', null);
|
||||
}
|
||||
|
||||
logout=function(){
|
||||
deleteLoginCookie();
|
||||
$("#login-link").show();
|
||||
$("#register-link").show();
|
||||
$("#logout-link").hide();
|
||||
$("#change-password-link").hide();
|
||||
hideElementWithKarma();
|
||||
screenChange();
|
||||
$("#main-content").html("");
|
||||
$.ajax({
|
||||
url: 'restServices/redbackServices/loginService/logout'
|
||||
});
|
||||
}
|
||||
|
||||
decorateMenuWithKarma=function(user) {
|
||||
var username = user.username;
|
||||
// we can receive an observable user so take if it's a function or not
|
||||
if ($.isFunction(username)){
|
||||
username = user.username();
|
||||
}
|
||||
var url = 'restServices/redbackServices/userService/getCurrentUserOperations';
|
||||
$.ajax({
|
||||
url: url,
|
||||
success: function(data){
|
||||
var mappedOperations = $.map(data.operation, function(item) {
|
||||
return mapOperation(item);
|
||||
});
|
||||
window.redbackModel.operatioNames = $.map(mappedOperations, function(item){
|
||||
return item.name;
|
||||
});
|
||||
|
||||
/**
|
||||
* reccord a cookie for session with the logged user
|
||||
* @param user see user.js
|
||||
*/
|
||||
reccordLoginCookie=function(user) {
|
||||
$.cookie('redback_login', ko.toJSON(user));
|
||||
}
|
||||
|
||||
getUserFromLoginCookie=function(){
|
||||
return $.parseJSON($.cookie('redback_login'));
|
||||
}
|
||||
|
||||
deleteLoginCookie=function(){
|
||||
$.cookie('redback_login', null);
|
||||
}
|
||||
|
||||
logout=function(){
|
||||
deleteLoginCookie();
|
||||
$("#login-link").show();
|
||||
$("#register-link").show();
|
||||
$("#logout-link").hide();
|
||||
$("#change-password-link").hide();
|
||||
hideElementWithKarma();
|
||||
screenChange();
|
||||
$("#main-content").html("");
|
||||
$.ajax({
|
||||
url: 'restServices/redbackServices/loginService/logout'
|
||||
});
|
||||
}
|
||||
|
||||
decorateMenuWithKarma=function(user) {
|
||||
var username = user.username;
|
||||
// we can receive an observable user so take if it's a function or not
|
||||
if ($.isFunction(username)){
|
||||
username = user.username();
|
||||
}
|
||||
var url = 'restServices/redbackServices/userService/getCurrentUserOperations';
|
||||
$.ajax({
|
||||
url: url,
|
||||
success: function(data){
|
||||
var mappedOperations = $.map(data.operation, function(item) {
|
||||
return mapOperation(item);
|
||||
});
|
||||
window.redbackModel.operatioNames = $.map(mappedOperations, function(item){
|
||||
return item.name;
|
||||
});
|
||||
|
||||
$("[redback-permissions]").each(function(element){
|
||||
var bindingValue = $(this).attr("redback-permissions");
|
||||
$(this).hide();
|
||||
var neededKarmas = $(eval(bindingValue)).toArray();
|
||||
var karmaOk = false;
|
||||
$(neededKarmas).each(function(value){
|
||||
//alert(neededKarmas[value]);
|
||||
if ($.inArray(neededKarmas[value],window.redbackModel.operatioNames)>=0) {
|
||||
karmaOk = true;
|
||||
}
|
||||
});
|
||||
if (karmaOk == false) {
|
||||
$(this).hide();
|
||||
} else {
|
||||
$(this).show();
|
||||
}
|
||||
});
|
||||
$("[redback-permissions]").each(function(element){
|
||||
var bindingValue = $(this).attr("redback-permissions");
|
||||
$(this).hide();
|
||||
var neededKarmas = $(eval(bindingValue)).toArray();
|
||||
var karmaOk = false;
|
||||
$(neededKarmas).each(function(value){
|
||||
//alert(neededKarmas[value]);
|
||||
if ($.inArray(neededKarmas[value],window.redbackModel.operatioNames)>=0) {
|
||||
karmaOk = true;
|
||||
}
|
||||
});
|
||||
if (karmaOk == false) {
|
||||
$(this).hide();
|
||||
} else {
|
||||
$(this).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
hideElementWithKarma=function(){
|
||||
$("[redback-permissions]").each(function(element){
|
||||
$(this).hide();
|
||||
});
|
||||
}
|
||||
hideElementWithKarma=function(){
|
||||
$("[redback-permissions]").each(function(element){
|
||||
$(this).hide();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
$('#topbar-menu-container').html($("#topbar-menu"));
|
||||
$('#sidebar-content').html($("#main-menu"));
|
||||
|
||||
checkCreateAdminLink=function(){
|
||||
$.ajax("restServices/redbackServices/userService/isAdminUserExists", {
|
||||
type: "GET",
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
var adminExists = JSON.parse(data);
|
||||
if (adminExists == false) {
|
||||
$("#create-admin-link").show();
|
||||
} else {
|
||||
$("#create-admin-link").hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
checkCreateAdminLink();
|
||||
hideElementWithKarma();
|
||||
|
||||
checkSecurityLinks=function(){
|
||||
var user = userLogged();
|
||||
$.log("checkSecurityLinks, user:"+user);
|
||||
|
||||
if (!user) {
|
||||
$("#login-link").show();
|
||||
$("#register-link").show();
|
||||
$("#change-password-link").hide();
|
||||
checkCreateAdminLink=function(){
|
||||
$.ajax("restServices/redbackServices/userService/isAdminUserExists", {
|
||||
type: "GET",
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
var adminExists = JSON.parse(data);
|
||||
if (adminExists == false) {
|
||||
$("#create-admin-link").show();
|
||||
} else {
|
||||
$("#change-password-link").show();
|
||||
$("#logout-link").show();
|
||||
$("#register-link").hide();
|
||||
$("#login-link").hide();
|
||||
decorateMenuWithKarma(user);
|
||||
$("#create-admin-link").hide();
|
||||
}
|
||||
}
|
||||
|
||||
checkSecurityLinks();
|
||||
|
||||
|
||||
/**
|
||||
* display a success message
|
||||
* @param text the success text
|
||||
* @param idToAppend the id to append the success box
|
||||
*/
|
||||
displaySuccessMessage=function(text,idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$.tmpl($("#alert-message-success").html(), { "message" : text }).appendTo( textId );
|
||||
$(textId).focus();
|
||||
}
|
||||
|
||||
clearUserMessages=function(idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$(textId).html('');
|
||||
}
|
||||
|
||||
/**
|
||||
* display an error message
|
||||
* @param text the success text
|
||||
* @param idToAppend the id to append the success box
|
||||
*/
|
||||
displayErrorMessage=function(text,idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$.tmpl($("#alert-message-error").html(), { "message" : text }).appendTo( textId );
|
||||
$(textId).focus();
|
||||
}
|
||||
|
||||
/**
|
||||
* display a warning message
|
||||
* @param text the success text
|
||||
* @param idToAppend the id to append the success box
|
||||
*/
|
||||
displayWarningMessage=function(text,idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$.tmpl($("#alert-message-warning").html(), { "message" : text }).appendTo( textId );
|
||||
$(textId).focus();
|
||||
}
|
||||
|
||||
screenChange=function(){
|
||||
$("#main-content").html("");
|
||||
clearUserMessages();
|
||||
}
|
||||
|
||||
/**
|
||||
* clear all input text and password found in the the selector
|
||||
* @param selectorStr
|
||||
*/
|
||||
clearForm=function(selectorStr){
|
||||
$(selectorStr+" input[type='text']").each(function(ele){
|
||||
$(this).val("");
|
||||
});
|
||||
$(selectorStr+" input[type='password']").each(function(ele){
|
||||
$(this).val("");
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
//});
|
||||
}
|
||||
|
||||
checkSecurityLinks=function(){
|
||||
var user = userLogged();
|
||||
$.log("checkSecurityLinks, user:"+user);
|
||||
|
||||
if (!user) {
|
||||
$("#login-link").show();
|
||||
$("#register-link").show();
|
||||
$("#change-password-link").hide();
|
||||
} else {
|
||||
$("#change-password-link").show();
|
||||
$("#logout-link").show();
|
||||
$("#register-link").hide();
|
||||
$("#login-link").hide();
|
||||
decorateMenuWithKarma(user);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
$.log("main.js dom ready");
|
||||
$('#topbar-menu-container').html($("#topbar-menu"));
|
||||
$('#sidebar-content').html($("#main-menu"));
|
||||
checkCreateAdminLink();
|
||||
hideElementWithKarma();
|
||||
checkSecurityLinks();
|
||||
|
||||
})
|
||||
});
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
<div class="topbar" data-dropdown="dropdown">
|
||||
<div class="topbar-inner">
|
||||
<div class="container-fluid">
|
||||
<h4 class="brand"><a href="/index.html">Archiva</a></h4>
|
||||
<h4 class="brand"><a href="index.html">Archiva</a></h4>
|
||||
<ul class="nav secondary-nav">
|
||||
<li id="create-admin-link" style="display: none">
|
||||
<a href="#" onclick="adminCreateBox();">Admin User Creation</a>
|
||||
|
@ -30,4 +30,61 @@ $.urlParam = function(name){
|
||||
return results[1] || 0;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* display a success message
|
||||
* @param text the success text
|
||||
* @param idToAppend the id to append the success box
|
||||
*/
|
||||
displaySuccessMessage=function(text,idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$.tmpl($("#alert-message-success").html(), { "message" : text }).appendTo( textId );
|
||||
$(textId).focus();
|
||||
}
|
||||
|
||||
/**
|
||||
* display an error message
|
||||
* @param text the success text
|
||||
* @param idToAppend the id to append the success box
|
||||
*/
|
||||
displayErrorMessage=function(text,idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$.tmpl($("#alert-message-error").html(), { "message" : text }).appendTo( textId );
|
||||
$(textId).focus();
|
||||
}
|
||||
|
||||
/**
|
||||
* display a warning message
|
||||
* @param text the success text
|
||||
* @param idToAppend the id to append the success box
|
||||
*/
|
||||
displayWarningMessage=function(text,idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$.tmpl($("#alert-message-warning").html(), { "message" : text }).appendTo( textId );
|
||||
$(textId).focus();
|
||||
}
|
||||
|
||||
screenChange=function(){
|
||||
$("#main-content").html("");
|
||||
clearUserMessages();
|
||||
}
|
||||
|
||||
clearUserMessages=function(idToAppend){
|
||||
var textId = idToAppend ? $("#"+idToAppend) : $("#user-messages");
|
||||
$(textId).html('');
|
||||
}
|
||||
|
||||
/**
|
||||
* clear all input text and password found in the the selector
|
||||
* @param selectorStr
|
||||
*/
|
||||
clearForm=function(selectorStr){
|
||||
$(selectorStr+" input[type='text']").each(function(ele){
|
||||
$(this).val("");
|
||||
});
|
||||
$(selectorStr+" input[type='password']").each(function(ele){
|
||||
$(this).val("");
|
||||
});
|
||||
|
||||
}
|
@ -25,12 +25,15 @@ $(function() {
|
||||
displayRedbackError=function(obj,idToAppend) {
|
||||
// {"redbackRestError":{"errorMessages":{"args":1,"errorKey":"user.password.violation.numeric"}}}
|
||||
if ($.isArray(obj.redbackRestError.errorMessages)) {
|
||||
$.log("displayRedbackError with array");
|
||||
for(var i=0; i<obj.redbackRestError.errorMessages.length; i++ ) {
|
||||
if(obj.redbackRestError.errorMessages[i].errorKey) {
|
||||
$.log("displayRedbackError with array loop");
|
||||
displayErrorMessage($.i18n.prop( obj.redbackRestError.errorMessages[i].errorKey, obj.redbackRestError.errorMessages[i].args ),idToAppend);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$.log("displayRedbackError no array");
|
||||
displayErrorMessage($.i18n.prop( obj.redbackRestError.errorMessages.errorKey, obj.redbackRestError.errorMessages.args ),idToAppend);
|
||||
}
|
||||
}
|
||||
|
@ -90,19 +90,22 @@ $(function() {
|
||||
* @param key
|
||||
*/
|
||||
validateKey=function(key) {
|
||||
// spinner display
|
||||
// FIXME spinner display
|
||||
$.ajax({
|
||||
url: 'restServices/redbackServices/userService/validateKey/'+key,
|
||||
type: 'GET',
|
||||
success: function(result){
|
||||
window.redbackModel.key=key;
|
||||
$.log("validateKey#sucess");
|
||||
changePasswordBox(false,true);
|
||||
},
|
||||
complete: function(){
|
||||
// hide spinner
|
||||
},
|
||||
error: function(result) {
|
||||
$.log("validateKey#error");
|
||||
var obj = jQuery.parseJSON(result.responseText);
|
||||
$.log("validateKey#error response:"+obj);
|
||||
displayRedbackError(obj);
|
||||
}
|
||||
})
|
||||
|
@ -103,7 +103,7 @@ $(function() {
|
||||
};
|
||||
|
||||
this.deleteUser=function() {
|
||||
screenChange();
|
||||
clearUserMessages();
|
||||
// FIXME i18n
|
||||
var currentUser = this;
|
||||
openDialogConfirm(function(){
|
||||
@ -212,6 +212,7 @@ $(function() {
|
||||
}
|
||||
|
||||
login=function(){
|
||||
$("#modal-login-err-message").html("");
|
||||
screenChange();
|
||||
var valid = $("#user-login-form").valid();
|
||||
if (!valid) {
|
||||
@ -264,7 +265,8 @@ $(function() {
|
||||
|
||||
var errorCallbackFn= function(result) {
|
||||
var obj = jQuery.parseJSON(result.responseText);
|
||||
displayRedbackError(obj);
|
||||
displayRedbackError(obj,"modal-login-err-message");
|
||||
$("#modal-login-err-message").show();
|
||||
}
|
||||
|
||||
var completeCallbackFn=function(){
|
||||
@ -299,6 +301,7 @@ $(function() {
|
||||
*/
|
||||
changePasswordBox=function(previousPassword,registration,user){
|
||||
screenChange();
|
||||
$.log("changePasswordBox previousPassword:"+previousPassword+",registration:"+registration+",user:"+user);
|
||||
if (previousPassword==true){
|
||||
$("#password-change-form-current-password-div").show();
|
||||
$("#password-change-form-current-password").addClass("required");
|
||||
|
Loading…
x
Reference in New Issue
Block a user