show flash messages when adding a person to an aspect
This commit is contained in:
parent
53b27a7627
commit
dd00523616
6 changed files with 31 additions and 13 deletions
|
|
@ -56,7 +56,7 @@ module AspectGlobalHelper
|
|||
end
|
||||
|
||||
def aspect_membership_dropdown(contact, person, hang, aspect=nil)
|
||||
selected_aspects = all_aspects.select{|aspect| contact.in_aspect?(aspect) }
|
||||
selected_aspects = all_aspects.select{|aspect| contact.in_aspect?(aspect)}
|
||||
|
||||
render "shared/aspect_dropdown",
|
||||
:selected_aspects => selected_aspects,
|
||||
|
|
|
|||
|
|
@ -87,18 +87,19 @@
|
|||
%link{:rel => "alternate", :href => "#{@person.public_url}.atom", :type => "application/atom+xml", :title => "#{t('.public_feed', :name => @person.name)}"}
|
||||
|
||||
%body{:class => "#{yield(:body_class)}"}
|
||||
|
||||
- unless @page == :logged_out
|
||||
- flash.each do |name, msg|
|
||||
%div{:id => "flash_#{name}"}
|
||||
.message
|
||||
= msg
|
||||
|
||||
- unless @landing_page
|
||||
%a{:id=>"back-to-top", :title=>"Back to top", :href=>"#"}
|
||||
⇧
|
||||
|
||||
#notifications
|
||||
|
||||
- unless @page == :logged_out
|
||||
- flash.each do |name, msg|
|
||||
%div{:id => "flash_#{name}"}
|
||||
.message
|
||||
= msg
|
||||
|
||||
%header{:class=>('landing' unless current_user)}
|
||||
= render 'layouts/header'
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
▼
|
||||
|
||||
.wrapper
|
||||
%ul.dropdown_list{:unSelectable => 'on', 'data-person_id' => (person.id if defined?(person) && person), 'data-service_uid' => (service_uid if defined?(service_uid))}
|
||||
%ul.dropdown_list{:unSelectable => 'on', 'data-person_id' => (person.id if defined?(person) && person), 'data-service_uid' => (service_uid if defined?(service_uid)), 'data-person-short-name' => (person.first_name if defined?(person) && person)}
|
||||
- for aspect in all_aspects
|
||||
= aspect_dropdown_list_item(aspect, selected_aspects.include?(aspect) )
|
||||
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@ en:
|
|||
add_to_aspect: "Add contact"
|
||||
select_aspects: "Select aspects"
|
||||
all_aspects: "All aspects"
|
||||
stopped_sharing_with: "You have stopped sharing with {{name}}."
|
||||
started_sharing_with: "You have started sharing with {{name}}!"
|
||||
toggle:
|
||||
zero: "Select aspects"
|
||||
one: "In {{count}} aspect"
|
||||
|
|
|
|||
|
|
@ -9,18 +9,28 @@ var AspectsDropdown = {
|
|||
allAspects = dropdown.children().length,
|
||||
replacement;
|
||||
|
||||
console.log(dropdown);
|
||||
|
||||
if (number == 0) {
|
||||
button.removeClass(inAspectClass);
|
||||
if( dropdown.closest('#publisher').length ) {
|
||||
replacement = Diaspora.I18n.t("aspect_dropdown.select_aspects");
|
||||
} else {
|
||||
replacement = Diaspora.I18n.t("aspect_dropdown.add_to_aspect");
|
||||
/* flash message prompt */
|
||||
var message = Diaspora.I18n.t("aspect_dropdown.stopped_sharing_with", {name: dropdown.data('person-short-name')});
|
||||
Diaspora.page.flashMessages.render({success: true, notice: message});
|
||||
}
|
||||
}else if (selectedAspects == allAspects) {
|
||||
replacement = Diaspora.I18n.t('aspect_dropdown.all_aspects');
|
||||
}else if (number == 1) {
|
||||
button.addClass(inAspectClass);
|
||||
replacement = dropdown.find(".selected").first().text();
|
||||
/* flash message prompt */
|
||||
if( dropdown.closest('#publisher').length == 0 ) {
|
||||
var message = Diaspora.I18n.t("aspect_dropdown.started_sharing_with", {name: dropdown.data('person-short-name')});
|
||||
Diaspora.page.flashMessages.render({success: true, notice: message});
|
||||
}
|
||||
}else if (number < 3) {
|
||||
replacement = Diaspora.I18n.t('aspect_dropdown.toggle.few', { count: number.toString()})
|
||||
}else if (number > 3) {
|
||||
|
|
|
|||
|
|
@ -10,17 +10,22 @@
|
|||
var flashMessages = $("#flash_notice, #flash_error, #flash_alert");
|
||||
flashMessages.animate({
|
||||
top: 0
|
||||
}).delay(4000).animate({
|
||||
}, 400).delay(4000).animate({
|
||||
top: -100
|
||||
}, flashMessages.remove);
|
||||
}, 400, function(){
|
||||
$(this).remove();
|
||||
});
|
||||
};
|
||||
|
||||
this.render = function(result) {
|
||||
$("<div/>", {
|
||||
id: (result.success) ? "flash_notice" : "flash_error"
|
||||
id: result.success ? "flash_notice" : "flash_error"
|
||||
})
|
||||
.prependTo(document.body)
|
||||
.html(result.notice);
|
||||
.html($("<div/>", {
|
||||
class: "message"
|
||||
})
|
||||
.html(result.notice))
|
||||
.prependTo(document.body);
|
||||
|
||||
self.animateMessages();
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in a new issue