errorReported = $('#error', xhr.responseXML).text();
}
alert(errorReported || errorThrown || textStatus);
-
+
// Restore the form to original state.
// Hopefully. :D
form
results_placeholder.replaceWith(list);
}
else {
- var _error = $('<li/>').append(document._importNode($('p', data)[0], true));
+ var _error = $('<li/>').append(document._importNode($('p', data)[0], true));
results_placeholder.html(_error);
}
form
// Find the notice we're replying to...
var id = $($('.notice_id', notice)[0]).text();
var parentNotice = notice;
+ var stripForm = true; // strip a couple things out of reply forms that are inline
// Find the threaded replies view we'll be adding to...
var list = notice.closest('.notices');
- if (list.hasClass('threaded-replies')) {
+ if (list.closest('.old-school').length) {
+ // We're replying to an old-school conversation thread;
+ // use the old-style ping into the top form.
+ SN.U.switchInputFormTab("status")
+ replyForm = $('#input_form_status').find('form');
+ stripForm = false;
+ } else if (list.hasClass('threaded-replies')) {
// We're replying to a reply; use reply form on the end of this list.
// We'll add our form at the end of this; grab the root notice.
parentNotice = list.closest('.notice');
+
+ // See if the form's already open...
+ var replyForm = $('.notice-reply-form', list);
} else {
// We're replying to a parent notice; pull its threaded list
// and we'll add on the end of it. Will add if needed.
if (list.length == 0) {
SN.U.NoticeInlineReplyPlaceholder(notice);
list = $('ul.threaded-replies', notice);
+ } else {
+ var placeholder = $('li.notice-reply-placeholder', notice);
+ if (placeholder.length == 0) {
+ SN.U.NoticeInlineReplyPlaceholder(notice);
+ }
}
- }
- // See if the form's already open...
- var replyForm = $('.notice-reply-form', list);
+ // See if the form's already open...
+ var replyForm = $('.notice-reply-form', list);
+ }
var nextStep = function() {
// Override...?
replyForm.find('input[name=inreplyto]').val(id);
- replyForm.find('#notice_to').attr('disabled', 'disabled').hide();
- replyForm.find('#notice_private').attr('disabled', 'disabled').hide();
- replyForm.find('label[for=notice_to]').hide();
- replyForm.find('label[for=notice_private]').hide();
+ if (stripForm) {
+ // Don't do this for old-school reply form, as they don't come back!
+ replyForm.find('#notice_to').attr('disabled', 'disabled').hide();
+ replyForm.find('#notice_private').attr('disabled', 'disabled').hide();
+ replyForm.find('label[for=notice_to]').hide();
+ replyForm.find('label[for=notice_private]').hide();
+ }
// Set focus...
var text = replyForm.find('textarea');
list = notice.find('ul.threaded-replies');
}
var placeholder = $('<li class="notice-reply-placeholder">' +
- '<input class="placeholder">' +
+ '<input class="placeholder" />' +
'</li>');
placeholder.find('input')
.val(SN.msg('reply_placeholder'));
* popout before submitting.
*
* Uses 'live' rather than 'bind', so applies to future as well as present items.
+ *
*/
NoticeRepeat: function() {
$('.form_repeat').live('click', function(e) {
SN.Init.NoticeFormSetup(form);
})
.find('.notice_data-text').focus();
- }
+ },
+
+ showMoreMenuItems: function(menuid) {
+ $('#'+menuid+' .more_link').remove();
+ var selector = '#'+menuid+' .extended_menu';
+ var extended = $(selector);
+ extended.removeClass('extended_menu');
+ return void(0);
+ }
},
Init: {