Commit 1adf93ac authored by maxwell's avatar maxwell

Merge branch 'master' of github.com:diaspora/diaspora

Conflicts:
	config/locales/diaspora/en.yml
parents 76508705 efd9537e
......@@ -3,6 +3,7 @@
# the COPYRIGHT file.
class CommentsController < ApplicationController
include ApplicationHelper
before_filter :authenticate_user!
respond_to :html
......@@ -15,7 +16,14 @@ class CommentsController < ApplicationController
@comment = current_user.comment(text, :on => target) if target
if @comment
Rails.logger.info("event=comment_create user=#{current_user.inspect} status=success comment=#{@comment.inspect}")
render :nothing => true, :status => 201
respond_to do |format|
format.js{ render :json => { :post_id => @comment.post_id,
:comment_id => @comment.id,
:html => render_to_string(:partial => type_partial(@comment), :locals => {:post => @comment, :current_user => current_user})},
:status => 201 }
format.html{ render :nothing => true, :status => 201 }
end
else
render :nothing => true, :status => 401
end
......
......@@ -26,9 +26,18 @@ class StatusMessagesController < ApplicationController
for photo in photos
current_user.dispatch_post(photo, :to => params[:status_message][:to])
end
respond_to do |format|
format.js{ render :json => { :post_id => @status_message.id,
:html => render_to_string(:partial => 'shared/stream_element', :locals => {:post => @status_message, :current_user => current_user})},
:status => 201 }
format.html{ respond_with @status_message }
end
else
respond_to do |format|
format.js{ render :status => 401 }
end
end
render :nothing => true
end
......
......@@ -4,6 +4,6 @@
module DashboardsHelper
def title_for_page
I18n.t('dashboards.helper.home')
I18n.t('_home')
end
end
......@@ -23,13 +23,14 @@ module SocketsHelper
Rails.logger.error("web socket view rendering failed for object #{object.inspect}.")
raise e
end
action_hash = {:class =>object.class.to_s.underscore.pluralize, :html => v, :post_id => obj_id(object)}
action_hash = {:class =>object.class.to_s.underscore.pluralize, :html => v, :post_id => obj_id(object)}
action_hash.merge! opts
if object.is_a? Photo
action_hash[:photo_hash] = object.thumb_hash
end
if object.is_a? Comment
action_hash[:comment_id] = object.id
action_hash[:my_post?] = (object.post.person.owner.id == uid)
action_hash[:notification] = notification(object)
end
......
......@@ -382,8 +382,8 @@ class User
def seed_aspects
self.aspects.create(:name => "Family")
self.aspects.create(:name => "Work")
self.aspects.create(:name => I18n.t('aspects.seed.family'))
self.aspects.create(:name => I18n.t('aspects.seed.work'))
end
def as_json(opts={})
......
......@@ -4,11 +4,11 @@
.span-24.last
%h2{:style => "position:relative;"}
Home
= t('_home')
.right
%span.description
= current_user.diaspora_handle
= info_text("This is your diaspora handle. Like an email address, you can give this to people to reach you.")
= info_text(t('.handle_explanation'))
.span-15.last
= render 'aspects/no_contacts_message', :aspect => @aspect, :contact_count => @contacts.count
......
-# Copyright (c) 2010, Diaspora Inc. This file is
-# licensed under the Affero General Public License version 3 or later. See
-# the COPYRIGHT file.
%div{:data => {:role => 'content'}}
%div{:data => {:role => 'fieldcontain'}}
=render 'shared/publisher', :aspect => @aspect
= render 'shared/stream', :posts => @posts
/%div{:data => {:role => 'footer', :id => 'footer-toolbar', :position => 'fixed'}}
/ %div{:data => {:role => 'navbar'}}
/ %ul
/ %li{:class => 'ui-btn-active'}
/ = link_to 'posts', '#'
/ %li
/ =link_to 'contacts', '#'
......@@ -2,7 +2,7 @@
-# licensed under the Affero General Public License version 3 or later. See
-# the COPYRIGHT file.
%li.comment
%li.comment{:data=>{:guid=>post.id}}
= person_image_link(post.person)
.content
.from
......
......@@ -6,5 +6,5 @@
%br/
= f.text_field :email
%p
= f.submit "Resend confirmation instructions"
= f.submit t('.resend_confirmation')
= render :partial => "devise/shared/links"
......@@ -11,5 +11,5 @@
%br/
= f.password_field :password_confirmation
%p
= f.submit "Change my password"
= f.submit t('.change_password')
= render :partial => "devise/shared/links"
......@@ -8,8 +8,8 @@
= link_to t('.forgot_your_password'), new_password_path(resource_name)
%br/
- if devise_mapping.confirmable? && controller_name != 'confirmations'
= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name)
= link_to t('.receive_confirmation'), new_confirmation_path(resource_name)
%br/
- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks'
= link_to "Didn't receive unlock instructions?", new_unlock_path(resource_name)
= link_to t('.receive_unlock'), new_unlock_path(resource_name)
%br/
......@@ -6,5 +6,5 @@
%br/
= f.text_field :email
%p
= f.submit "Resend unlock instructions"
= f.submit t('.resend_unlock')
= render :partial => "devise/shared/links"
......@@ -13,27 +13,20 @@
#why.span-22.prepend-1.last
.span-7
%h2
Choice
= t('.choice')
%p
Diaspora allows you to sort your connections into groups called Aspects.
Unique to Diaspora, Aspects ensure your photos, stories and jokes are shared
with only the people you want them to be.
= t('.choice_explanation')
.span-7
%h2
Ownership
= t('.ownership')
%p
You own your pictures, and you shouldn’t have to give that up just in order
to share them. You maintain ownership of everything you share on Diaspora,
giving you full control over how it is distributed.
= t('.ownership_explanation')
.span-7
%h2
Simplicity
= t('.simplicity')
%p
Diaspora makes sharing clean and easy – this goes doubly so for privacy.
Innherently private, Diaspora doesn’t have pages of settings and options to
wade through to keep your profile secure and to your liking.
= t('.simplicity_explanation')
.span-22.prepend-1.last
......@@ -47,12 +40,12 @@
#info_links.span-22.prepend-1.last
.span-10
%h3
Learn about how to host your own Diaspora server
= t('.learn_about_host')
.span-11
%h3
Learn more about Diaspora as an open source project.
= t('.learn_about_open_source')
.span-24.last{:style=>"text-align:center;"}
......
......@@ -10,5 +10,5 @@
= f.password_field :password_confirmation
= f.hidden_field :invitation_token
= f.submit 'sign_up'
= f.submit t('.sign_up')
= render :partial => "devise/shared/links"
......@@ -33,13 +33,13 @@
#aspect_nav
%ul
%li{:class => ("selected" if @aspect == :all)}
= link_to ((@request_count == 0)? "Home" : "Home (#{@request_count})"), root_path, :class => new_request(@request_count)
= link_to ((@request_count == 0)? t('_home') : "#{t('_home')} (#{@request_count})"), root_path, :class => new_request(@request_count)
- for aspect in @aspects
%li{:class => ("selected" if current_aspect?(aspect))}
= link_for_aspect aspect
%li
= link_to '+', '#add_aspect_pane', :class => "add_aspect_button", :title => t('.add_a_new_aspect')
= link_to '+', '#add_aspect_pane', :class => "add_aspect_button", :title => t('aspects.manage.add_a_new_aspect')
.fancybox_content
#add_aspect_pane
......
......@@ -10,7 +10,7 @@
});
$('.delete').bind('ajax:failure', function() {
alert("Cannot remove #{person.real_name} from last aspect.");
alert("#{t('.cannot_remove', :name => person.real_name)}");
});
});
......@@ -30,7 +30,7 @@
- for aspect in @aspects_with_person
%li
= link_to aspect.name, aspect
= link_to "x", {:controller => "aspects", :action => "remove_from_aspect", :person_id => person.id, :aspect_id => aspect.id}, :confirm => "Remove #{person.real_name} from #{aspect}?", :remote => true, :class => "delete"
= link_to "x", {:controller => "aspects", :action => "remove_from_aspect", :person_id => person.id, :aspect_id => aspect.id}, :confirm => t('.remove_from', :name => person.real_name, :aspect => aspect), :remote => true, :class => "delete"
-if is_contact || person == current_user.person
......
......@@ -18,6 +18,12 @@
var progress = Math.round(loaded / total * 100 );
$('#fileInfo').text(fileName + ' ' + progress + '%');
},
messages: {
typeError: "#{t('.invalid_ext')}",
sizeError: "#{t('.size_error')}",
emptyError: "#{t('.empty')}"
},
onSubmit: function(id, fileName){
$('#file-upload').addClass("loading");
......
......@@ -43,7 +43,7 @@
.photo_options{:data=>{:actor=>"#{@photo.person.owner.id}",:actor_person=>"#{@photo.person.id}",:image_url=>"#{@photo.url(:thumb_large)}"}}
= link_to t('.make_profile_photo'), '#', :class => 'make_profile_photo'
|
= link_to 'edit', '#', :id => "edit_photo_toggle"
= link_to t('.edit'), '#', :id => "edit_photo_toggle"
-else
= image_tag @photo.url(:scaled_full)
......@@ -55,7 +55,7 @@
-if @ownership
#photo_edit_options
%h4 Edit photo description / delete photo
%h4= t('.edit_delete_photo')
%p
= form_for @photo, :remote => true do |p|
= p.text_field :caption, :value => @photo.caption
......@@ -67,8 +67,8 @@
- if @photo.status_message_id
#original_post_info
%h4{:style=>"position:relative;"}
Original Post
= link_to 'view', @photo.status_message
= t('.original_post')
= link_to t('.view'), @photo.status_message
%p
= @photo.status_message.message
......@@ -77,7 +77,7 @@
- for photo in @photo.status_message.photos
= link_to (image_tag photo.url(:thumb_small)), object_path(photo)
%h4 Comments
%h4= t('_comments')
- if @photo.status_message_id
%div{:id => 'status_message_stream', :class => 'stream show'}
......
......@@ -8,4 +8,4 @@
= request.hidden_field :to, :value => destination_handle
= request.submit t('people.person.add_contact'), :disable_with => t('requests.create.sending')
.message.hidden
%i sent!
%i= t('.sent')
......@@ -3,14 +3,14 @@
-# the COPYRIGHT file.
%h3 Add a new contact
%h3= t('aspects.manage.add_a_new_contact')
= form_tag(person_by_handle_path, :id => "new_request_to_#{aspect.id}", :class => "webfinger_form", :remote => true) do
=t('.enter_a_diaspora_username')
%br
%i= t '.your_diaspora_username_is', :diaspora_handle => current_user.diaspora_handle
= search_field_tag :diaspora_handle,'', :id => "request_d_handle_to_#{aspect.id}", :results => 5, :placeholder => "Diaspora handle"
= search_field_tag :diaspora_handle,'', :id => "request_d_handle_to_#{aspect.id}", :results => 5, :placeholder => t('.diaspora_handle')
= hidden_field_tag :aspect_id, aspect.id
- if defined?(getting_started)
......@@ -18,13 +18,13 @@
- if defined?(manage)
= hidden_field_tag :manage, true
= submit_tag t('.create_request')
= submit_tag t('requests.manage_aspect_contacts.create_request')
%br
#loader.hidden= image_tag 'ajax-loader.gif'
%ul#request_result{:aspect_id => aspect.id}
%li.error.hidden
#message
= link_to "Know their email address? You should invite them", "#invite_user_pane", :class => "invite_user_button"
= link_to t('requests.manage_aspect_contacts.know_email'), "#invite_user_pane", :class => "invite_user_button"
%br
.yo{ :style => "display:none;"}
#invite_user_pane
......
......@@ -25,13 +25,13 @@
$("#edit_aspect_pane").addClass("active");
$(".contact_pictures").fadeOut(200, function(){
$("#edit_aspect_pane").fadeIn(200);
trigger.html("done editing");
trigger.html("#{t('.done_editing')}");
});
},
fadeOut: function(){
var trigger = $("#edit_aspect_trigger");
trigger.html("edit aspect");
trigger.html("#{t('.edit_aspect')}");
$("#edit_aspect_pane").removeClass("active");
$("#edit_aspect_pane").fadeOut(200, function(){
......@@ -51,9 +51,9 @@
#new_request_pane{:class => "everyone"}
%h1.new_request
- if @request_count > 1
= link_to "#{@request_count} new requests!", aspects_manage_path
= link_to t('.new_requests', :count => @request_count), aspects_manage_path
- else
= link_to "#{@request_count} new request!", aspects_manage_path
= link_to t('.new_request', :count => @request_count), aspects_manage_path
#left_pane{:class => ("everyone" if aspect == :all)}
- if aspect == :all
......@@ -62,26 +62,26 @@
%h2{:style=>"position:relative;margin-bottom:0;"}
= aspect
.right
= link_to "edit aspect", "#", :id => "edit_aspect_trigger", :class => "button"
= link_to t('.edit_aspect'), "#", :id => "edit_aspect_trigger", :class => "button"
%span.aspect_contact_count{:style=>"color:#999;font-size:14px;"}
= aspect.contacts.count
- if aspect.contacts.count == 1
contact
= t('.contact')
- else
contacts
= t('.contacts')
- unless aspect == :all
#edit_aspect_pane
- if @contacts.count > 0
%h3 Add an existing contact
%h3= t('.add_existing')
= render 'shared/contact_list', :aspect => aspect, :contacts => @contacts, :manage => defined?(manage)
= render 'shared/add_contact', :aspect => aspect
%h3 Aspect settings
%h3= t('.aspect_settings')
.big_buttons
= button_to "Remove Aspect", aspect, :method => "delete", :confirm => "Remove aspect?"
= button_to t('.remove_aspect'), aspect, :method => "delete", :confirm => t('.confirm_remove_aspect')
.contact_pictures
- for contact in contacts
......@@ -89,7 +89,7 @@
- if aspect == :all && @contacts.count == 0
%h4
You currently have no contacts. Find your contacts here.
= t('.no_contacts')
= form_tag(people_path, :method => 'get') do
= text_field_tag 'q', nil, :placeholder => t('search'), :type => 'search', :results => 5
......@@ -101,9 +101,9 @@
%br
%h3{:style=>"position:relative;"}
Aspects
= t('.aspects')
.right{:style=>"font-size:12px;top:7px;"}
= link_to 'add aspect', '#add_aspect_pane', :class => "add_aspect_button"
= link_to t('.add_aspect'), '#add_aspect_pane', :class => "add_aspect_button"
- for user_aspect in current_user.aspects
......@@ -111,7 +111,7 @@
%h4.aspect_title_right{:style => "margin-bottom:0;"}
= link_to user_aspect, user_aspect
%span{:style=>"font-size:12px;color:#888;"}
= "#{user_aspect.contacts.count} contacts"
= "#{user_aspect.contacts.count} #{t('.contacts')}"
- if user_aspect.contacts.count > 0
- for aspect_contact in user_aspect.contacts[0..8]
......@@ -124,7 +124,7 @@
%br
%br
%h3 Invites
%p invite people to join Diaspora.
%h3= t('.invites')
%p= t('.invite_people')
= render "shared/invitations", :invites => @invites
......@@ -13,5 +13,5 @@
- for aspect in current_user.aspects_with_post( post.id )
%li= link_to aspect.name, aspect
#person_nav_links
= link_to t('.view_profile'), person_path(person)
= link_to t('layouts.header.view_profile'), person_path(person)
= link_to t('_photos'), person_photos_path(person)
......@@ -45,7 +45,7 @@
});
$('.remove').live('ajax:failure', function(data, html, xhr) {
alert("Cannot remove person from last aspect.");
alert("#{t('.cannot_remove')}");
});
$('.add').live('ajax:success', function(data, html, xhr) {
......
......@@ -27,11 +27,11 @@
%ul#photodropzone
= status.error_messages
#file-upload.button
add photos
= t('.add_photos')
%p
%params
= status.label :message, t('.post_a_message_to', :aspect => (aspect == :all ? "all contacts" : aspect))
= status.label :message, t('.post_a_message_to', :aspect => (aspect == :all ? t('.all_contacts') : aspect))
= status.text_area :message, :rows => 2, :value => params[:prefill]
= status.hidden_field :to, :value => (aspect == :all ? aspect : aspect.id)
......
......@@ -19,7 +19,7 @@
= link_to t('.destroy'), @status_message, :confirm => t('are_you_sure'), :method => :delete
.span-9.last
%h4{:style=>"margin-bottom:5px;"} Comments
%h4{:style=>"margin-bottom:5px;"}= t('_comments')
%div{:class => 'stream show', :id => 'status_message_stream'}
%li.message{:data=>{:guid=>@status_message.id}}
= render "comments/comments", :post => @status_message
......@@ -12,7 +12,7 @@
$(".aspects li").find(".delete").live("click", function(){
var aspectElement = $(this).parent("li");
if (confirm("are you sure?")){
if (confirm(#{t('are_you_sure')})){
aspectElement.fadeOut(300, function(){aspectElement.remove();});
}
});
......
......@@ -5,7 +5,7 @@
= form_for @person, :html => { :multipart => true } do |person|
%h3
= t('.your_profile')
= t('people.edit.your_profile')
.description
= t('people.edit.info_available_to')
......
......@@ -31,7 +31,7 @@
= t('.user_menu')
%p
= t('.manage_aspects')
%b #{t('shared.aspect_nav.manage')}
%b #{t('.manage')}
= t('.tab_also_added')
.submit_block
......
......@@ -28,4 +28,4 @@ def harden_ruby(ruby_string)
end
harden_ruby("ree")
harden_ruby("ruby-1.8.7-p302")
......@@ -12,7 +12,7 @@ def harden_ruby(ruby_string)
end
harden_ruby("ree")
harden_ruby("ruby-1.8.7-p302")
include_recipe "centos::image_magick"
include_recipe "centos::mongo_db"
......
......@@ -17,7 +17,6 @@ javascripts:
mobile:
- public/javascripts/vendor/jquery144.min.js
- public/javascripts/custom-mobile-scripting.js
- public/javascripts/rails.js
- public/javascripts/vendor/jquery-ui-1.8.6.custom.min.js
- public/javascripts/vendor/jquery_mobile_a2.min.js
- public/javascripts/mobile.js
......
......@@ -6,7 +6,7 @@ cross_server:
deploy_to: '/usr/local/app/diaspora'
user: 'root'
repo: 'git://github.com/diaspora/diaspora.git'
branch: 'homepage'
branch: 'master'
default_env: 'development'
servers:
tom:
......
......@@ -27,12 +27,16 @@ en:
passwords:
send_instructions: 'You will receive an email with instructions about how to reset your password in a few minutes.'
updated: 'Your password was changed successfully. You are now signed in.'
edit:
change_password: "Change my password"
new:
forgot_password: "Forgot your password?"
send_password_instructions: "Send me reset password instructions"
confirmations:
send_instructions: 'You will receive an email with instructions about how to confirm your account in a few minutes.'
confirmed: 'Your account was successfully confirmed. You are now signed in.'
new:
resend_confirmation: "Resend confirmation instructions"
registrations:
signed_up: 'You have signed up successfully. If enabled, a confirmation was sent to your e-mail.'
updated: 'You updated your account successfully.'
......@@ -40,6 +44,8 @@ en:
unlocks:
send_instructions: 'You will receive an email with instructions about how to unlock your account in a few minutes.'
unlocked: 'Your account was successfully unlocked. You are now signed in.'
new:
resend_unlock: "Resend unlock instructions"
invitations:
send_instructions: 'Your invitation has been sent.'
invitation_token_invalid: 'The invitation token provided is not valid!'
......@@ -76,4 +82,5 @@ en:
sign_in: 'Sign in'
sign_up: 'Sign up'
forgot_your_password: 'Forgot your password?'