diff options
author | Evan Prodromou <evan@status.net> | 2010-02-14 12:09:07 -0500 |
---|---|---|
committer | Evan Prodromou <evan@status.net> | 2010-02-14 12:09:07 -0500 |
commit | cea7d8018a70d759c2de7e8c8e5de3581d7e5fbd (patch) | |
tree | 38c85a254bcdd38c1febfd2789e2a003992348c4 /plugins/OStatus/js/ostatus.js | |
parent | 62f5c04ad234be6d1a26097300944eacee895738 (diff) | |
parent | 9465a4d5c6b77bd77e78bc277a817e2b5724ec76 (diff) |
Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing
Diffstat (limited to 'plugins/OStatus/js/ostatus.js')
-rw-r--r-- | plugins/OStatus/js/ostatus.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/plugins/OStatus/js/ostatus.js b/plugins/OStatus/js/ostatus.js new file mode 100644 index 000000000..671795558 --- /dev/null +++ b/plugins/OStatus/js/ostatus.js @@ -0,0 +1,60 @@ +SN.U.DialogBox = { + Subscribe: function(a) { + var f = a.parent().find('#form_ostatus_connect'); + if (f.length > 0) { + f.show(); + } + else { + $.ajax({ + type: 'GET', + dataType: 'xml', + url: a[0].href+'&ajax=1', + beforeSend: function(formData) { + a.addClass('processing'); + }, + error: function (xhr, textStatus, errorThrown) { + alert(errorThrown || textStatus); + }, + success: function(data, textStatus, xhr) { + if (typeof($('form', data)[0]) != 'undefined') { + a.after(document._importNode($('form', data)[0], true)); + + var form = a.parent().find('#form_ostatus_connect'); + + form + .addClass('dialogbox') + .append('<button class="close">×</button>'); + + form + .find('.submit') + .addClass('submit_dialogbox') + .removeClass('submit') + .bind('click', function() { + form.addClass('processing'); + }); + + form.find('button.close').click(function(){ + form.hide(); + + return false; + }); + + form.find('#acct').focus(); + } + + a.removeClass('processing'); + } + }); + } + } +}; + +SN.Init.Subscribe = function() { + $('.entity_subscribe a').live('click', function() { SN.U.DialogBox.Subscribe($(this)); return false; }); +}; + +$(document).ready(function() { + if ($('.entity_subscribe .entity_remote_subscribe').length > 0) { + SN.Init.Subscribe(); + } +}); |