222 lines
6.0 KiB
JavaScript
222 lines
6.0 KiB
JavaScript
$(function(){
|
|
|
|
tw.initDocuments = function(){
|
|
|
|
if(tw.documentsModel!==undefined){
|
|
tw.documentsModel.refreshDocs();
|
|
|
|
}else{
|
|
|
|
tw.documentsModel = {
|
|
|
|
hulpDocuments : ko.observableArray([]),
|
|
selectedHulpID : ko.observable() ,
|
|
upload : ko.observable() ,
|
|
docTypes : ko.observableArray([]),
|
|
selectedDoctype : ko.observable() ,
|
|
docName : ko.observable('') ,
|
|
actionUrl : ko.observable() ,
|
|
docID : ko.observable(0) ,
|
|
selectedFile : ko.observable('') ,
|
|
nonTags : ko.observableArray([]),
|
|
selectedTags : ko.observableArray([]),
|
|
tagsToAdd : ko.observableArray([]),
|
|
tagsToRemove : ko.observableArray([]),
|
|
newTagName : ko.observable() ,
|
|
bezig : ko.observable(false) ,
|
|
|
|
documentsInit : function(){
|
|
var self = tw.documentsModel;
|
|
$.getJSON('index.php/ijkpartituur/documents', function(data){
|
|
self.docTypes(data.doctypes);
|
|
});
|
|
} ,
|
|
|
|
setDocument : function(){
|
|
setDocument(this);
|
|
} ,
|
|
|
|
refreshDocs : function(){
|
|
var self = tw.documentsModel;
|
|
self.resetForm();
|
|
$("#lsOverlay").fadeIn(500, function(){
|
|
$("#upload-form").fadeIn().css('z-index', '310');
|
|
});
|
|
|
|
$.getJSON('index.php/ijkpartituur/documents/get_documents/' + self.selectedHulpID(), function(data){
|
|
self.hulpDocuments(data.documents);
|
|
|
|
self.upload(data.upload);
|
|
self.nonTags(data.nontags);
|
|
self.selectedTags(data.selectedtags);
|
|
if(data.documentid) setDocument(data.documents[0]);
|
|
});
|
|
},
|
|
|
|
addTag : function(data, event){
|
|
var self = tw.documentsModel;
|
|
|
|
if(event.keyCode === 13){
|
|
if(this.newTagName().length===0) return;
|
|
|
|
if(self.docID()===0){
|
|
apprise('U moet eerst een document selecteren om labels toe te voegen', {animate:true});
|
|
return true;
|
|
}
|
|
|
|
var submitDATA = {tagname :this.newTagName()};
|
|
var submitURL = 'index.php/ijkpartituur/documents/save_tag/' + self.docID();
|
|
|
|
$.post(submitURL, submitDATA, function(data){
|
|
self.nonTags(data.nontags);
|
|
self.selectedTags(data.selectedtags);
|
|
self.newTagName('');
|
|
}, 'json');
|
|
}
|
|
} ,
|
|
|
|
removeTag : function(){
|
|
var self = tw.documentsModel;
|
|
|
|
if(this.tagsToAdd().length===0) return;
|
|
apprise('weet u zeker dat u dit/deze label(s) wilt verwijderen', {
|
|
animate: true ,
|
|
verify : false ,
|
|
textYes: 'Ja' ,
|
|
textNo : 'Nee'
|
|
|
|
}, function(response){
|
|
if(response){
|
|
var submitDATA = {newtags:self.tagsToAdd()};
|
|
var submitURL = 'index.php/ijkpartituur/documents/remove_tag/' + self.docID();
|
|
|
|
$.post(submitURL, submitDATA, function(data){
|
|
self.nonTags(data.nontags);
|
|
self.selectedTags(data.selectedtags);
|
|
}, 'json');
|
|
}
|
|
});
|
|
} ,
|
|
|
|
addTags : function(){
|
|
var self = tw.documentsModel;
|
|
|
|
if(this.tagsToAdd().length===0) return;
|
|
|
|
var submitDATA = {newtags:this.tagsToAdd()};
|
|
var submitURL = 'index.php/ijkpartituur/documents/add_tags/' + self.docID();
|
|
|
|
$.post(submitURL, submitDATA, function(data){
|
|
self.nonTags(data.nontags);
|
|
self.selectedTags(data.selectedtags);
|
|
}, 'json');
|
|
} ,
|
|
|
|
removeTags : function(){
|
|
var self = tw.documentsModel;
|
|
|
|
if(this.tagsToRemove().length===0) return;
|
|
|
|
var submitDATA = {removetags:this.tagsToRemove()};
|
|
var submitURL = 'index.php/ijkpartituur/documents/remove_tags/' + self.docID();
|
|
|
|
$.post(submitURL, submitDATA, function(data){
|
|
self.nonTags(data.nontags);
|
|
self.selectedTags(data.selectedtags);
|
|
}, 'json');
|
|
|
|
} ,
|
|
|
|
setName : function(){
|
|
var self = tw.documentsModel;
|
|
|
|
if(self.docName().length===0){
|
|
var fileName = /([^\\]+)$/.exec(self.selectedFile())[1];
|
|
fileName = fileName.replace(/\..+$/, '');
|
|
self.docName(fileName);
|
|
}
|
|
} ,
|
|
|
|
resetForm : function(){
|
|
var self = tw.documentsModel;
|
|
|
|
self.docID(0);
|
|
self.docName('');
|
|
self.selectedFile('');
|
|
self.selectedDoctype(undefined);
|
|
} ,
|
|
|
|
saveDocument : function(){
|
|
var self = tw.documentsModel;
|
|
var msg = '';
|
|
|
|
if(self.docName().length===0) msg += 'U heeft geen documentnaam ingevoerd<br />';
|
|
if(self.selectedDoctype()===undefined) 'U heeft geen type document aangegeven';
|
|
if(msg!==''){
|
|
apprise(msg, {animate:true});
|
|
return;
|
|
}
|
|
|
|
var url = 'index.php/ijkpartituur/documents/upload_document/' + tw.documentsModel.selectedHulpID();
|
|
url+= '/' + self.selectedDoctype() + '/' + self.docID();
|
|
self.actionUrl(url);
|
|
|
|
//$("#upload-overlay").fadeIn(100, function(){
|
|
$("#upload-form-form").submit();
|
|
//});
|
|
} ,
|
|
|
|
downloadDoc : function(){
|
|
tw.downLoadDocument(this.id);
|
|
} ,
|
|
|
|
deleteDocument : function(){
|
|
var self = tw.documentsModel;
|
|
var that = this;
|
|
if (self.bezig()) return;
|
|
self.bezig(true);
|
|
apprise('weet u zeker dat u dit document wilt verwijderen?',
|
|
{
|
|
animate : true ,
|
|
verify : true ,
|
|
textYes : 'Ja' ,
|
|
textNo : 'Nee'
|
|
}, function(response){
|
|
if(response){
|
|
$.get('index.php/ijkpartituur/documents/delete_document/' + that.id, function(){
|
|
self.refreshDocs();
|
|
self.bezig(false);
|
|
});
|
|
}
|
|
else { self.bezig(false);}
|
|
});
|
|
}
|
|
};
|
|
|
|
function setDocument(doc){
|
|
var self = tw.documentsModel;
|
|
|
|
self.docID(doc.id);
|
|
self.docName(doc.name);
|
|
self.selectedDoctype(doc.doctypeid);
|
|
$.getJSON('index.php/ijkpartituur/documents/set_tags/' + doc.id, function(data){
|
|
self.nonTags(data.nontags);
|
|
self.selectedTags(data.selectedtags);
|
|
});
|
|
}
|
|
|
|
tw.documentsModel.documentsInit();
|
|
|
|
ko.applyBindings(tw.documentsModel, document.getElementById("upload-form"));
|
|
}
|
|
|
|
};
|
|
|
|
tw.initDocuments();
|
|
|
|
tw.downLoadDocument = function(docID){
|
|
var win=window.open('index.php/ijkpartituur/documents/download_document/' + docID, '_blank');
|
|
win.focus();
|
|
}
|
|
|
|
}); |