aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_sharing/js
diff options
context:
space:
mode:
authorMichael Gapczynski <GapczynskiM@gmail.com>2011-08-02 12:19:49 -0400
committerMichael Gapczynski <GapczynskiM@gmail.com>2011-08-02 12:19:49 -0400
commit0d79560e944d21aba25073c6632d2d0104bd38be (patch)
treee57335fd85ff79c59eb876c2ae04c905b4406317 /apps/files_sharing/js
parentddfc9fc001904232236baee7bf9a5a934354ac95 (diff)
downloadnextcloud-server-0d79560e944d21aba25073c6632d2d0104bd38be.tar.gz
nextcloud-server-0d79560e944d21aba25073c6632d2d0104bd38be.zip
New implementation of share dialog
Diffstat (limited to 'apps/files_sharing/js')
-rw-r--r--apps/files_sharing/js/share.js90
1 files changed, 22 insertions, 68 deletions
diff --git a/apps/files_sharing/js/share.js b/apps/files_sharing/js/share.js
index 6ca018fca0c..6b5b47f90f2 100644
--- a/apps/files_sharing/js/share.js
+++ b/apps/files_sharing/js/share.js
@@ -18,88 +18,42 @@ $(document).ready(function() {
}
createShareDialog(filenames, files);
});
- $("input[name=share_type]").live('change', function() {
- $('#private').toggle();
- $('#public').toggle();
- });
- $('.uid_shared_with').live('keyup', function() {
+ $('#uid_shared_with').live('keyup', function() {
$(this).autocomplete({
- source: '../apps/files_sharing/ajax/userautocomplete.php',
- minLength: 1
+ source: '../apps/files_sharing/ajax/userautocomplete.php'
});
});
- $('button.add-uid_shared_with').live('click', function(event) {
- event.preventDefault();
- // TODO Make sure previous textbox has a valid user or group name
- var html = "<br />";
- html += "<label>Share with <input placeholder='User or Group' class='uid_shared_with' /></label>";
- html += "<button class='add-uid_shared_with fancybutton'>+</button>";
- $(html).insertAfter('.add-uid_shared_with');
- $(this).html('&nbsp-&nbsp&nbsp');
- $(this).removeClass('add-uid_shared_with fancybutton');
- $(this).addClass('remove-uid_shared_with fancybutton');
- });
$('button.remove-uid_shared_with').live('click', function(event) {
event.preventDefault();
alert("remove");
// TODO Remove corresponding row
});
- $('#expire').datepicker({
- dateFormat:'MM d, yy',
- altField: '#expire_time',
- altFormat: 'yy-mm-dd'
- });
});
function createShareDialog(filenames, files) {
- var html = "<div id='dialog' align='center'>";
- html += "<label><input type='radio' name='share_type' value='private' checked='checked' /> Private</label>";
- html += "<label><input type='radio' name='share_type' value='public' /> Public</label>";
- html += "<br />";
+ var html = "<div id='dialog' style='position: absolute'>";
html += "<div id='private'>";
- html += "<label>Share with <input placeholder='User or Group' class='uid_shared_with' /></label>";
- html += "<button id='hey' class='add-uid_shared_with fancybutton'>+</button>";
- html += "<br />";
- html += "<div id='permissions'style='text-align: left'>";
- html += "Permissions"
+ html += "<label>Share with <input placeholder='User or Group' id='uid_shared_with' /></label>";
+ html += "<label><input type='checkbox' name='permissions' value='1' /> allow editing</label><br />";
html += "<br />";
- html += "<label><input type='checkbox' name='share_permissions' value='1' /> Edit</label><br />";
- html += "<label><input type='checkbox' name='share_permissions' value='2' /> Delete</label><br />";
+ html += "<div id='shared_list'></div>";
+ $.getJSON(OC.linkTo('files_sharing','ajax/getitem.php'), { source: files }, function(users) {
+ var list = "";
+ $.each(users, function(index, row) {
+ list += row.uid_shared_with;
+ list += " <label><input type='checkbox' name='share_private_permissions' value='1' /> allow editing</label><br />";
+ if (row.permissions > 0) {
+ $('share_private_permissions').prop('checked', true);
+ }
+ });
+ $(list).appendTo('#shared_list');
+ });
html += "</div>";
+ html += "<div id='public'>";
+ html += "<label><input type='checkbox' name='public_link' value='1' /> make public</label>";
+ html += "<label><input type='checkbox' name='public_link_write' value='1' /> writeable</label>";
+ html += "<div id='link'>";
html += "</div>";
- html += "<div id='public' style='display: none'>";
- html += "TODO: Construct a public link";
- html += "<input placeholder='Expires' id='expire' />";
html += "</div>";
- html += "<div>";
- $(html).dialog({
- title: 'Share ' + filenames,
- modal: true,
- close: function(event, ui) {
- $(this).remove();
- },
- buttons: {
- 'Share': function() {
- if ($('input[name=share_type]:checked').val() == 'public') {
- // TODO Construct public link
- } else {
- // TODO Check all inputs are valid
- var uid_shared_with = $('.uid_shared_with').val();
- var permissions = 0;
- $(this).find('input:checkbox:checked').each(function() {
- permissions += parseInt($(this).val());
- });
- $.ajax({
- type: 'POST',
- url: '../apps/files_sharing/ajax/share.php',
- cache: false,
- data: '&sources='+encodeURIComponent(files)+'&uid_shared_with[]='+uid_shared_with+'&permissions='+permissions,
- success: function() {
- $('#dialog').dialog('close');
- }
- });
- }
- }
- }
- });
+ $(html).appendTo($('tr[data-file="'+filenames+'"] '));
} \ No newline at end of file