1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
<?php
/**
* AJAX uploading
*/
?>
//<script>
elgg.provide('elgg.tidypics.uploading');
elgg.tidypics.uploading.init = function() {
var fields = ['Elgg', 'user_guid', 'album_guid', 'batch', 'tidypics_token'];
var data = elgg.security.token;
$(fields).each(function(i, name) {
var value = $('input[name=' + name + ']').val();
if (value) {
data[name] = value;
}
});
data['XDEBUG_SESSION_START'] = 'netbeans-xdebug';
$("#uploadify").uploadify({
'uploader' : elgg.config.wwwroot + 'mod/tidypics/vendors/uploadify/uploadify.swf',
'script' : elgg.config.wwwroot + 'action/photos/image/ajax_upload',
'cancelImg' : elgg.config.wwwroot + 'mod/tidypics/vendors/uploadify/cancel.png',
'fileDataName' : 'Image',
'multi' : true,
'auto' : false,
'wmode' : 'transparent',
'buttonImg' : " ",
'height' : $('#tidypics-choose-button').height(),
'width' : $('#tidypics-choose-button').width(),
'scriptData' : data,
'onEmbedFlash' : function(event) {
// @todo This is supposed to mimick hovering over the link.
// hover events aren't firing for the object.
$("#" + event.id).hover(
function(){
$("#tidypics-choose-button").addClass('tidypics-choose-button-hover');
},
function(){
$("#tidypics-choose-button").removeClass('tidypics-choose-button-hover');
}
);
},
'onSelectOnce' : function() {
$("#tidypics-upload-button").removeClass('tidypics-disable');
},
'onAllComplete' : function() {
// @todo they can keep adding pics if they want. no need to disable this.
$("#tidypics-choose-button").addClass('tidypics-disable');
$("#tidypics-upload-button").addClass('tidypics-disable').die();
$("#tidypics-describe-button").removeClass('tidypics-disable');
elgg.action('photos/image/ajax_upload_complete', {
data: {
album_guid: data.album_guid,
batch: data.batch
},
success: function(json) {
var url = elgg.normalize_url('photos/edit/' + json.batch_guid)
$('#tidypics-describe-button').attr('href', url);
}
});
},
'onComplete' : function(event, queueID, fileObj, response) {
// check for errors here
if (response != 'success') {
$("#uploadify" + queueID + " .percentage").text(" - " + response);
$("#uploadify" + queueID).addClass('uploadifyError');
}
$("#uploadify" + queueID + " > .cancel").remove();
return false;
},
'onCancel' : function(event, queueID, fileObj, data) {
if (data.fileCount == 0) {
$("#tidypics-upload-button").addClass('tidypics-disable');
}
},
'onError' : function (event, ID, fileObj, errorObj) {
// @todo do something useful with the limited information in the errorObj.
}
});
// bind to upload button
$('#tidypics-upload-button').live('click', function(e) {
var $uploadify = $('#uploadify');
$uploadify.uploadifyUpload();
e.preventDefault();
});
}
elgg.register_hook_handler('init', 'system', elgg.tidypics.uploading.init);
|