71 lines
2.3 KiB
HTML
71 lines
2.3 KiB
HTML
<div id="upload">
|
|
<a name="back" class="button" href="[#]host_url[#]"><i class="fa fa-back push"></i>[#]lang:nav_back[#]</a>
|
|
<h1>[#]lang:upload_title[#]</h1>
|
|
<input id="fileupload" type="file" name="files[]" multiple>
|
|
<div id="progress">
|
|
<div class="bar" style="width: 0%;"></div>
|
|
</div>
|
|
<div id="comments"></div>
|
|
<div id="status"></div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
oSpot.pageInit = function(asHash) {
|
|
var asProject = self.vars(['projects', self.vars('default_project_codename')]);
|
|
self.tmp('status-box', $('#status'));
|
|
if(asProject.editable) {
|
|
$('#fileupload')
|
|
.attr('data-url', self.getActionLink('upload'))
|
|
.fileupload({
|
|
dataType: 'json',
|
|
formData: {t: self.consts.timezone},
|
|
acceptFileTypes: /(\.|\/)(gif|jpe?g|png|mov)$/i,
|
|
done: function (e, asData) {
|
|
$.each(asData.result.files, function(iKey, oFile) {
|
|
var bError = ('error' in oFile);
|
|
|
|
//Feedback
|
|
addStatus(bError?oFile.error:(self.lang('upload_success', [oFile.name])));
|
|
|
|
//Comments
|
|
if(!bError) addCommentBox(oFile.id, oFile.thumbnail);
|
|
});
|
|
},
|
|
progressall: function (e, data) {
|
|
var progress = parseInt(data.loaded / data.total * 100, 10);
|
|
$('#progress .bar').css('width', progress+'%');
|
|
}
|
|
});
|
|
}
|
|
else addStatus(self.lang('upload_mode_archived', [asProject.name]), true);
|
|
};
|
|
|
|
function addCommentBox(iMediaId, sThumbnailPath) {
|
|
$('#comments').append($('<div>', {'class':'comment'})
|
|
.append($('<img>', {'class':'thumb', 'src':sThumbnailPath}))
|
|
.append($('<form>')
|
|
.append($('<input>', {'class':'content', 'name':'content', 'type':'text'}))
|
|
.append($('<input>', {'class':'id', 'name':'id', 'type':'hidden', 'value':iMediaId}))
|
|
.append($('<button>', {'class':'save', 'type':'button'})
|
|
.click(function(){
|
|
var $Form = $(this).parent();
|
|
oSpot.get(
|
|
'add_comment',
|
|
function(asData){addStatus(self.lang('media_comment_update', asData.filename));},
|
|
{id:$Form.find('.id').val(), content:$Form.find('.content').val()},
|
|
function(sMsgId){addStatus(self.lang(sMsgId));},
|
|
);
|
|
})
|
|
.text(self.lang('save'))
|
|
)
|
|
)
|
|
);
|
|
}
|
|
|
|
function addStatus(sMsg, bClear) {
|
|
bClear = bClear || false;
|
|
if(bClear) self.tmp('status-box').empty();
|
|
|
|
self.tmp('status-box').append($('<p>').text(sMsg));
|
|
}
|
|
</script>
|