Merge branch 'master' of github.com:diaspora/diaspora into maxwell
Conflicts: Gemfile Gemfile.lock spec/models/user/invite_spec.rb
This commit is contained in:
commit
341009e20f
22 changed files with 891 additions and 154 deletions
3
Gemfile
3
Gemfile
|
|
@ -1,6 +1,7 @@
|
|||
source 'http://rubygems.org'
|
||||
|
||||
gem 'rails', '3.0.1'
|
||||
gem 'rails', '>= 3.0.0'
|
||||
|
||||
gem 'bundler', '>= 1.0.0'
|
||||
|
||||
#Security
|
||||
|
|
|
|||
286
Gemfile.lock
Normal file
286
Gemfile.lock
Normal file
|
|
@ -0,0 +1,286 @@
|
|||
GIT
|
||||
remote: git://github.com/Empact/roxml.git
|
||||
revision: 33034d3e632b3a14565a791af0a63c7e23ec0de4
|
||||
specs:
|
||||
roxml (3.1.5)
|
||||
activesupport (>= 2.3.0)
|
||||
nokogiri (>= 1.3.3)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/collectiveidea/devise-mongo_mapper
|
||||
revision: fa2f20310e0988295adc192255d3b1cedee1b412
|
||||
specs:
|
||||
devise-mongo_mapper (0.0.1)
|
||||
devise (~> 1.1.0)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/dcu/magent.git
|
||||
revision: fe08cc6e9d4c1772035f84bcfb665d17b00ac625
|
||||
specs:
|
||||
magent (1.0.0)
|
||||
em-websocket
|
||||
mongo
|
||||
uuidtools
|
||||
|
||||
GIT
|
||||
remote: git://github.com/igrigorik/em-http-request.git
|
||||
revision: bf62d67fc72d6e701be5037e239dd470194b8e45
|
||||
ref: bf62d67fc72d6e701be5
|
||||
specs:
|
||||
em-http-request (0.2.13)
|
||||
addressable (>= 2.0.0)
|
||||
eventmachine (>= 0.12.9)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/jnunemaker/mongomapper.git
|
||||
revision: fd59b0ab068be7321f8e84b9dc12fb4fa6b8535d
|
||||
branch: rails3
|
||||
specs:
|
||||
mongo_mapper (0.8.4)
|
||||
activemodel (~> 3.0.0)
|
||||
activesupport (~> 3.0.0)
|
||||
plucky (~> 0.3.6)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/rsofaer/carrierwave.git
|
||||
revision: 9edb8bdddd2236742a85bfd7b260387498d01f88
|
||||
branch: master
|
||||
specs:
|
||||
carrierwave (0.4.4)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/rsofaer/redfinger.git
|
||||
revision: 07721f46d02b9d3aa04880788fecb0b4c1b284d7
|
||||
specs:
|
||||
redfinger (0.0.6)
|
||||
hashie
|
||||
nokogiri (>= 1.4.0)
|
||||
rest-client (>= 1.5.0)
|
||||
|
||||
GIT
|
||||
remote: git://github.com/rsofaer/sprinkle.git
|
||||
revision: 7c744ed158dda1f99a015e6a29d086e80bd8c635
|
||||
specs:
|
||||
sprinkle (0.3.1)
|
||||
activesupport (>= 3.0.0beta4)
|
||||
capistrano (>= 2.5.5)
|
||||
highline (>= 1.4.0)
|
||||
|
||||
GEM
|
||||
remote: http://rubygems.org/
|
||||
specs:
|
||||
abstract (1.0.0)
|
||||
actionmailer (3.0.0)
|
||||
actionpack (= 3.0.0)
|
||||
mail (~> 2.2.5)
|
||||
actionpack (3.0.0)
|
||||
activemodel (= 3.0.0)
|
||||
activesupport (= 3.0.0)
|
||||
builder (~> 2.1.2)
|
||||
erubis (~> 2.6.6)
|
||||
i18n (~> 0.4.1)
|
||||
rack (~> 1.2.1)
|
||||
rack-mount (~> 0.6.12)
|
||||
rack-test (~> 0.5.4)
|
||||
tzinfo (~> 0.3.23)
|
||||
activemodel (3.0.0)
|
||||
activesupport (= 3.0.0)
|
||||
builder (~> 2.1.2)
|
||||
i18n (~> 0.4.1)
|
||||
activerecord (3.0.0)
|
||||
activemodel (= 3.0.0)
|
||||
activesupport (= 3.0.0)
|
||||
arel (~> 1.0.0)
|
||||
tzinfo (~> 0.3.23)
|
||||
activeresource (3.0.0)
|
||||
activemodel (= 3.0.0)
|
||||
activesupport (= 3.0.0)
|
||||
activesupport (3.0.0)
|
||||
addressable (2.2.2)
|
||||
arel (1.0.1)
|
||||
activesupport (~> 3.0.0)
|
||||
aws (2.3.21)
|
||||
http_connection
|
||||
uuidtools
|
||||
xml-simple
|
||||
bcrypt-ruby (2.1.2)
|
||||
bson (1.1)
|
||||
bson_ext (1.1)
|
||||
builder (2.1.2)
|
||||
capistrano (2.5.19)
|
||||
highline
|
||||
net-scp (>= 1.0.0)
|
||||
net-sftp (>= 2.0.0)
|
||||
net-ssh (>= 2.0.14)
|
||||
net-ssh-gateway (>= 1.0.0)
|
||||
capybara (0.3.9)
|
||||
culerity (>= 0.2.4)
|
||||
mime-types (>= 1.16)
|
||||
nokogiri (>= 1.3.3)
|
||||
rack (>= 1.0.0)
|
||||
rack-test (>= 0.5.4)
|
||||
selenium-webdriver (>= 0.0.3)
|
||||
childprocess (0.0.7)
|
||||
ffi (~> 0.6.3)
|
||||
crack (0.1.8)
|
||||
cucumber (0.9.2)
|
||||
builder (~> 2.1.2)
|
||||
diff-lcs (~> 1.1.2)
|
||||
gherkin (~> 2.2.5)
|
||||
json (~> 1.4.6)
|
||||
term-ansicolor (~> 1.0.5)
|
||||
cucumber-rails (0.3.2)
|
||||
cucumber (>= 0.8.0)
|
||||
culerity (0.2.12)
|
||||
daemons (1.1.0)
|
||||
database_cleaner (0.5.2)
|
||||
devise (1.1.3)
|
||||
bcrypt-ruby (~> 2.1.2)
|
||||
warden (~> 0.10.7)
|
||||
devise_invitable (0.3.4)
|
||||
devise (~> 1.1.0)
|
||||
diff-lcs (1.1.2)
|
||||
em-websocket (0.1.4)
|
||||
addressable (>= 2.1.1)
|
||||
eventmachine (>= 0.12.9)
|
||||
erubis (2.6.6)
|
||||
abstract (>= 1.0.0)
|
||||
eventmachine (0.12.10)
|
||||
factory_girl (1.3.2)
|
||||
factory_girl_rails (1.0)
|
||||
factory_girl (~> 1.3)
|
||||
rails (>= 3.0.0.beta4)
|
||||
ffi (0.6.3)
|
||||
rake (>= 0.8.7)
|
||||
gherkin (2.2.8)
|
||||
json (~> 1.4.6)
|
||||
term-ansicolor (~> 1.0.5)
|
||||
haml (3.0.21)
|
||||
hashie (0.4.0)
|
||||
highline (1.6.1)
|
||||
http_connection (1.3.1)
|
||||
i18n (0.4.1)
|
||||
json (1.4.6)
|
||||
json_pure (1.4.6)
|
||||
mail (2.2.7)
|
||||
activesupport (>= 2.3.6)
|
||||
mime-types
|
||||
treetop (>= 1.4.5)
|
||||
mime-types (1.16)
|
||||
mini_fb (1.1.3)
|
||||
hashie
|
||||
rest-client
|
||||
mini_magick (2.3)
|
||||
subexec (~> 0.0.4)
|
||||
mocha (0.9.8)
|
||||
rake
|
||||
mongo (1.1)
|
||||
bson (>= 1.0.5)
|
||||
net-scp (1.0.4)
|
||||
net-ssh (>= 1.99.1)
|
||||
net-sftp (2.0.5)
|
||||
net-ssh (>= 2.0.9)
|
||||
net-ssh (2.0.23)
|
||||
net-ssh-gateway (1.0.1)
|
||||
net-ssh (>= 1.99.1)
|
||||
nokogiri (1.4.3.1)
|
||||
plucky (0.3.6)
|
||||
mongo (~> 1.1)
|
||||
polyglot (0.3.1)
|
||||
pubsubhubbub (0.1.1)
|
||||
em-http-request (>= 0.1.5)
|
||||
eventmachine (>= 0.12.9)
|
||||
rack (1.2.1)
|
||||
rack-mount (0.6.13)
|
||||
rack (>= 1.0.0)
|
||||
rack-test (0.5.6)
|
||||
rack (>= 1.0)
|
||||
rails (3.0.0)
|
||||
actionmailer (= 3.0.0)
|
||||
actionpack (= 3.0.0)
|
||||
activerecord (= 3.0.0)
|
||||
activeresource (= 3.0.0)
|
||||
activesupport (= 3.0.0)
|
||||
bundler (~> 1.0.0)
|
||||
railties (= 3.0.0)
|
||||
railties (3.0.0)
|
||||
actionpack (= 3.0.0)
|
||||
activesupport (= 3.0.0)
|
||||
rake (>= 0.8.4)
|
||||
thor (~> 0.14.0)
|
||||
rake (0.8.7)
|
||||
rest-client (1.6.1)
|
||||
mime-types (>= 1.16)
|
||||
rspec (2.0.0)
|
||||
rspec-core (= 2.0.0)
|
||||
rspec-expectations (= 2.0.0)
|
||||
rspec-mocks (= 2.0.0)
|
||||
rspec-core (2.0.0)
|
||||
rspec-expectations (2.0.0)
|
||||
diff-lcs (>= 1.1.2)
|
||||
rspec-mocks (2.0.0)
|
||||
rspec-core (= 2.0.0)
|
||||
rspec-expectations (= 2.0.0)
|
||||
rspec-rails (2.0.0)
|
||||
rspec (= 2.0.0)
|
||||
rubyzip (0.9.4)
|
||||
selenium-webdriver (0.0.29)
|
||||
childprocess (>= 0.0.7)
|
||||
ffi (~> 0.6.3)
|
||||
json_pure
|
||||
rubyzip
|
||||
subexec (0.0.4)
|
||||
term-ansicolor (1.0.5)
|
||||
thin (1.2.7)
|
||||
daemons (>= 1.0.9)
|
||||
eventmachine (>= 0.12.6)
|
||||
rack (>= 1.0.0)
|
||||
thor (0.14.3)
|
||||
treetop (1.4.8)
|
||||
polyglot (>= 0.3.1)
|
||||
tzinfo (0.3.23)
|
||||
uuidtools (2.1.1)
|
||||
warden (0.10.7)
|
||||
rack (>= 1.0.0)
|
||||
webmock (1.3.5)
|
||||
addressable (>= 2.1.1)
|
||||
crack (>= 0.1.7)
|
||||
will_paginate (3.0.pre2)
|
||||
xml-simple (1.0.12)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
addressable
|
||||
aws
|
||||
bson (= 1.1)
|
||||
bson_ext (= 1.1)
|
||||
bundler (>= 1.0.0)
|
||||
capybara (~> 0.3.9)
|
||||
carrierwave!
|
||||
cucumber-rails (= 0.3.2)
|
||||
database_cleaner
|
||||
devise (= 1.1.3)
|
||||
devise-mongo_mapper!
|
||||
devise_invitable (~> 0.3.4)
|
||||
em-http-request!
|
||||
em-websocket
|
||||
factory_girl_rails
|
||||
haml
|
||||
json
|
||||
magent!
|
||||
mini_fb
|
||||
mini_magick
|
||||
mocha
|
||||
mongo_mapper!
|
||||
pubsubhubbub
|
||||
rails (= 3.0.0)
|
||||
redfinger!
|
||||
roxml!
|
||||
rspec (>= 2.0.0)
|
||||
rspec-rails (>= 2.0.0)
|
||||
sprinkle!
|
||||
thin
|
||||
webmock
|
||||
will_paginate (= 3.0.pre2)
|
||||
|
|
@ -106,7 +106,8 @@ class UsersController < ApplicationController
|
|||
|
||||
private
|
||||
def prep_image_url(params)
|
||||
url = APP_CONFIG[:pod_url].chop if APP_CONFIG[:pod_url][-1,1] == '/'
|
||||
url = APP_CONFIG[:pod_url].dup
|
||||
url.chop! if APP_CONFIG[:pod_url][-1,1] == '/'
|
||||
if params[:profile][:image_url].empty?
|
||||
params[:profile].delete(:image_url)
|
||||
else
|
||||
|
|
|
|||
|
|
@ -27,7 +27,6 @@ class Request
|
|||
before_validation :clean_link
|
||||
|
||||
scope :for_user, lambda{ |user| where(:destination_url => user.person.receive_url) }
|
||||
scope :from_user, lambda{ |user| where(:destination_url.ne => user.person.receive_url) }
|
||||
|
||||
def self.instantiate(options = {})
|
||||
person = options[:from]
|
||||
|
|
|
|||
|
|
@ -268,8 +268,24 @@ class User
|
|||
###Invitations############
|
||||
def invite_user( opts = {} )
|
||||
if self.invites > 0
|
||||
invited_user = User.invite!(:email => opts[:email], :inviter => self)
|
||||
|
||||
aspect_id = opts.delete(:aspect_id)
|
||||
if aspect_id == nil
|
||||
raise "Must invite into aspect"
|
||||
elsif !(self.aspects.find_by_id(aspect_id))
|
||||
raise "Must invite to your aspect"
|
||||
end
|
||||
request = Request.instantiate(
|
||||
:to => "http://local_request.example.com",
|
||||
:from => self.person,
|
||||
:into => aspect_id
|
||||
)
|
||||
|
||||
invited_user = User.invite!(:email => opts[:email], :request => request, :inviter => self)
|
||||
|
||||
self.invites = self.invites - 1
|
||||
self.pending_requests << request
|
||||
request.save
|
||||
self.save!
|
||||
invited_user
|
||||
else
|
||||
|
|
@ -279,11 +295,14 @@ class User
|
|||
|
||||
def self.invite!(attributes={})
|
||||
inviter = attributes.delete(:inviter)
|
||||
request = attributes.delete(:request)
|
||||
|
||||
invitable = find_or_initialize_with_error_by(:email, attributes.delete(:email))
|
||||
invitable.attributes = attributes
|
||||
if invitable.inviters.include?(inviter)
|
||||
raise "You already invited this person"
|
||||
else
|
||||
invitable.pending_requests << request
|
||||
invitable.inviters << inviter
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -8,9 +8,6 @@
|
|||
$("#add_album_button").fancybox();
|
||||
});
|
||||
|
||||
= content_for :page_title do
|
||||
= link_to "◂ #{t('.home')}", aspects_path, :aspect => params[:aspect]
|
||||
|
||||
- content_for :left_pane do
|
||||
= render "shared/aspect_friends"
|
||||
|
||||
|
|
@ -31,6 +28,3 @@
|
|||
#pagination
|
||||
= will_paginate @albums
|
||||
|
||||
#content_bottom
|
||||
.back
|
||||
= link_to "⇧ #{t('.home')}", root_path
|
||||
|
|
|
|||
20
app/views/aspects/_empty_messages.haml
Normal file
20
app/views/aspects/_empty_messages.haml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
-# Copyright (c) 2010, Diaspora Inc. This file is
|
||||
-# licensed under the Affero General Public License version 3 or later. See
|
||||
-# the COPYRIGHT file.
|
||||
|
||||
#no_posts.empty_message{:style => ("display:none" unless @posts.count == 0)}
|
||||
.null_arrow ⇧
|
||||
%h3=t('.start_talking')
|
||||
|
||||
#no_friends.empty_message{:style => ("display:none" unless @friends.count == 0)}
|
||||
|
||||
- if (@aspect == :all) || (@aspect == :public)
|
||||
%h3=t('.nobody')
|
||||
%h4= link_to t('.add_friend'), aspects_manage_path
|
||||
%h4= link_to t('.invite'), aspects_manage_path
|
||||
- else
|
||||
%h3=t('.nobody_in_aspect', :aspect_name => @aspect.name)
|
||||
%h4= link_to t('.add_friend_to', :aspect_name => @aspect.name), "#add_request_pane", :class => "add_request_button"
|
||||
%h4= link_to t('.invite', :aspect_name => @aspect.name), "#invite_user_pane", :class => "invite_user_button", :class => "invite_user_button", :title => t('.invite')
|
||||
|
||||
|
||||
|
|
@ -2,18 +2,18 @@
|
|||
-# licensed under the Affero General Public License version 3 or later. See
|
||||
-# the COPYRIGHT file.
|
||||
|
||||
- content_for :page_title do
|
||||
= link_to t('.photos'), albums_path(:aspect => @aspect)
|
||||
|
||||
- content_for :left_pane do
|
||||
= render "shared/aspect_friends"
|
||||
|
||||
- content_for :publish do
|
||||
= render "shared/publisher", :aspect_ids => :all, :broadcast => true
|
||||
|
||||
= render 'aspects/empty_messages'
|
||||
|
||||
%ul#stream
|
||||
- for post in @posts
|
||||
= render type_partial(post), :post => post unless post.class == Album
|
||||
|
||||
#pagination
|
||||
= will_paginate @posts
|
||||
|
||||
|
|
|
|||
|
|
@ -2,18 +2,18 @@
|
|||
-# licensed under the Affero General Public License version 3 or later. See
|
||||
-# the COPYRIGHT file.
|
||||
|
||||
- content_for :page_title do
|
||||
= link_to t('.photos'), albums_path(:aspect => @aspect)
|
||||
|
||||
- content_for :left_pane do
|
||||
= render "shared/aspect_friends"
|
||||
|
||||
- content_for :publish do
|
||||
= render "shared/publisher", :aspect_ids => :all
|
||||
|
||||
= render 'aspects/empty_messages'
|
||||
|
||||
%ul#stream
|
||||
- for post in @posts
|
||||
= render type_partial(post), :post => post unless post.class == Album
|
||||
|
||||
#pagination
|
||||
= will_paginate @posts
|
||||
|
||||
|
|
|
|||
|
|
@ -4,5 +4,6 @@
|
|||
%p
|
||||
= f.label :email
|
||||
= f.text_field :email
|
||||
= f.hidden_field :aspect_id, :value => @aspect.id
|
||||
%p= f.submit "Send an invitation"
|
||||
/= link_to "Home", after_sign_in_path_for(resource_name)
|
||||
|
|
|
|||
|
|
@ -37,9 +37,10 @@
|
|||
|
||||
});
|
||||
function processRetraction(post_id){
|
||||
$('#' + post_id ).fadeOut(500, function(){
|
||||
$(this).remove;
|
||||
});
|
||||
$('#' + post_id ).fadeOut(500).remove();
|
||||
if($("#stream")[0].childElementCount == 0){
|
||||
$("#no_posts").fadeIn(200);
|
||||
}
|
||||
}
|
||||
|
||||
function processComment(post_id, html){
|
||||
|
|
@ -59,14 +60,23 @@
|
|||
|
||||
function processPost(className, html, aspectIds){
|
||||
if(onPageForAspects(aspectIds)){
|
||||
$("#stream").prepend(
|
||||
$(html).fadeIn("fast", function(){
|
||||
$("#stream label:first").inFieldLabels();
|
||||
})
|
||||
);
|
||||
var addPostToStream = function (html){
|
||||
$("#stream").prepend(
|
||||
$(html).fadeIn("fast", function(){
|
||||
$("#stream label:first").inFieldLabels();
|
||||
})
|
||||
)
|
||||
};
|
||||
|
||||
if( $("#no_posts").is(":visible") ){
|
||||
$("#no_posts").fadeOut(400, addPostToStream(html)).hide();
|
||||
} else {
|
||||
addPostToStream(html);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function processPhotoInAlbum(photoHash){
|
||||
if (location.href.indexOf(photoHash['album_id']) == -1){
|
||||
return ;
|
||||
|
|
|
|||
|
|
@ -2,30 +2,41 @@
|
|||
-# licensed under the Affero General Public License version 3 or later. See
|
||||
-# the COPYRIGHT file.
|
||||
|
||||
#friend_pictures
|
||||
= owner_image_link
|
||||
- for friend in @friends
|
||||
= person_image_link(friend)
|
||||
- if @logged_in && (@aspect == :public)
|
||||
%h3 Facebook Friends
|
||||
- @fb_friends = MiniFB.get(@access_token, 'me', :type => "friends")
|
||||
- @fb_friends[:data].each do |friend|
|
||||
= image_tag( "http://graph.facebook.com/#{friend[:id]}/picture" )
|
||||
-unless (@aspect == :all) || (@aspect == :public)
|
||||
= link_to (image_tag('add_friend_button.png', :height => "50px", :width => "50px")), "#add_request_pane", :id => 'add_request_button'
|
||||
|
||||
.yo{:style => 'display:none'}
|
||||
#add_request_pane
|
||||
= render "requests/new_request", :aspect => @aspect
|
||||
-else
|
||||
.clear
|
||||
%br
|
||||
= link_to t('.add_friends'), aspects_manage_path
|
||||
#left_pane
|
||||
#friend_pictures
|
||||
= owner_image_link
|
||||
- for friend in @friends
|
||||
= person_image_link(friend)
|
||||
- if @logged_in && (@aspect == :public)
|
||||
%h3 Facebook Friends
|
||||
- @fb_friends = MiniFB.get(@access_token, 'me', :type => "friends")
|
||||
- @fb_friends[:data].each do |friend|
|
||||
= image_tag( "http://graph.facebook.com/#{friend[:id]}/picture" )
|
||||
-unless (@aspect == :all) || (@aspect == :public)
|
||||
= link_to (image_tag('add_friend_button.png', :height => "50px", :width => "50px")), "#add_request_pane", :id => 'add_request_button'
|
||||
|
||||
.yo{:style => 'display:none'}
|
||||
#add_request_pane
|
||||
= render "requests/new_request", :aspect => @aspect
|
||||
-else
|
||||
.clear
|
||||
%br
|
||||
= link_to t('.add_friends'), aspects_manage_path
|
||||
|
||||
%br
|
||||
%br
|
||||
%ul
|
||||
%li= link_to 'stream', aspect_path(@aspect)
|
||||
%li= link_to t('.photos'), albums_path(:aspect => @aspect)
|
||||
|
||||
%br
|
||||
|
||||
%h4 Invites
|
||||
= link_to "Invite a friend!", "#invite_user_pane", :class => "invite_user_button", :class => "invite_user_button", :title => "Invite a friend"
|
||||
%br
|
||||
= "You have #{@invites} invites."
|
||||
.yo{ :style => "display:none;"}
|
||||
#invite_user_pane
|
||||
= render "invitations/new"
|
||||
|
||||
%br
|
||||
= link_to "Invite a friend!", "#invite_user_pane", :id => "invite_user_button", :class => "invite_user_button", :title => "Invite a friend"
|
||||
%br
|
||||
= "You have #{@invites} invites."
|
||||
.yo{ :style => "display:none;"}
|
||||
#invite_user_pane
|
||||
= render "invitations/new"
|
||||
|
|
|
|||
|
|
@ -1,7 +1,3 @@
|
|||
# Copyright (c) 2010, Diaspora Inc. This file is
|
||||
# licensed under the Affero General Public License version 3 or later. See
|
||||
# the COPYRIGHT file.
|
||||
|
||||
fr-informal:
|
||||
errors:
|
||||
messages:
|
||||
|
|
@ -22,19 +18,29 @@ fr-informal:
|
|||
signed_in: 'Connecté avec succès.'
|
||||
signed_out: 'Déconnecté avec succès.'
|
||||
passwords:
|
||||
send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant des instructions t’expliquant comment réinitialiser ton mot de passe.'
|
||||
send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant les instructions pour réinitialiser ton mot de passe.'
|
||||
updated: 'Ton mot de passe a été modifié avec succès. Tu es à présent connecté.'
|
||||
confirmations:
|
||||
send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant des instructions t’expliquant comment confirmer ton compte.'
|
||||
send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant les instructions pour confirmer ton compte.'
|
||||
confirmed: 'Ton compte a été confirmé avec succès. Tu es à présent connecté.'
|
||||
registrations:
|
||||
signed_up: 'Tu t’es inscrit avec succès. Si activée, une confirmation a été envoyée sur ton adresse e-mail.'
|
||||
signed_up: 'Tu t’es inscrit avec succès. Si cette dernière est activée, une confirmation a été envoyée sur ton adresse e-mail.'
|
||||
updated: 'Tu as mis à jour ton compte avec succès.'
|
||||
destroyed: 'Au revoir ! Ton compte a été résilié avec succès. Nous espérons te revoir très bientôt.'
|
||||
unlocks:
|
||||
send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant des instructions t’expliquant comment déverrouiller ton compte.'
|
||||
send_instructions: 'Tu vas recevoir dans quelques minutes un e-mail contenant les instructions pour déverrouiller ton compte.'
|
||||
unlocked: 'Ton compte a été déverrouillé avec succès. Tu es à présent connecté.'
|
||||
invitations:
|
||||
send_instructions: 'Ton invitation a été envoyée.'
|
||||
invitation_token_invalid: 'Le jeton d’invitation fourni n’est pas valide !'
|
||||
updated: 'Ton mot de passe a été réglé avec succès. Tu es à présent connecté.'
|
||||
mailer:
|
||||
confirmation_instructions: 'Instructions de confirmation'
|
||||
reset_password_instructions: 'Réinitialiser les instructions du mot de passe'
|
||||
unlock_instructions: 'Instructions de déverrouillage'
|
||||
confirmation_instructions:
|
||||
subject: 'Instructions de confirmation'
|
||||
reset_password_instructions:
|
||||
subject: 'Instructions de réinitialisation du mot de passe'
|
||||
unlock_instructions:
|
||||
subject: 'Instructions de déverrouillage'
|
||||
invitation:
|
||||
subject: 'Un ami souhaite que tu rejoignes Diaspora !'
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,3 @@
|
|||
# Copyright (c) 2010, Diaspora Inc. This file is
|
||||
# licensed under the Affero General Public License version 3 or later. See
|
||||
# the COPYRIGHT file.
|
||||
|
||||
fr:
|
||||
errors:
|
||||
messages:
|
||||
|
|
@ -14,7 +10,7 @@ fr:
|
|||
unauthenticated: 'Vous devez vous connecter ou vous inscrire avant de continuer.'
|
||||
unconfirmed: 'Vous devez confirmer votre compte avant de continuer.'
|
||||
locked: 'Votre compte est verrouillé.'
|
||||
invalid: 'E-mail ou mot de passe invalide.'
|
||||
invalid: 'Adresse e-mail ou mot de passe invalide.'
|
||||
invalid_token: 'Jeton d’authentification invalide.'
|
||||
timeout: 'Votre session a expiré, veuillez vous connecter de nouveau afin de continuer.'
|
||||
inactive: 'Votre compte n’a pas encore été activé.'
|
||||
|
|
@ -22,19 +18,29 @@ fr:
|
|||
signed_in: 'Connecté avec succès.'
|
||||
signed_out: 'Déconnecté avec succès.'
|
||||
passwords:
|
||||
send_instructions: 'Vous allez recevoir dans quelques minutes un e-mail contenant des instructions vous expliquant comment réinitialiser votre mot de passe.'
|
||||
send_instructions: 'Vous allez recevoir dans quelques minutes un e-mail contenant les instructions pour réinitialiser votre mot de passe.'
|
||||
updated: 'Votre mot de passe a été modifié avec succès. Vous êtes à présent connecté.'
|
||||
confirmations:
|
||||
send_instructions: 'Vous allez recevoir dans quelques minutes un e-mail contenant des instructions vous expliquant comment confirmer votre compte.'
|
||||
send_instructions: 'Vous allez recevoir dans quelques minutes un e-mail contenant les instructions pour confirmer votre compte.'
|
||||
confirmed: 'Votre compte a été confirmé avec succès. Vous êtes à présent connecté.'
|
||||
registrations:
|
||||
signed_up: 'Vous vous êtes inscrit avec succès. Si activée, une confirmation a été envoyée sur votre adresse e-mail.'
|
||||
signed_up: 'Vous vous êtes inscrit avec succès. Si cette dernière est activée, une confirmation a été envoyée sur votre adresse e-mail.'
|
||||
updated: 'Vous avez mis à jour votre compte avec succès.'
|
||||
destroyed: 'Au revoir ! Votre compte a été résilié avec succès. Nous espérons vous revoir très bientôt.'
|
||||
unlocks:
|
||||
send_instructions: 'Vous allez recevoir dans quelques minutes un e-mail contenant des instructions vous expliquant comment déverrouiller votre compte.'
|
||||
send_instructions: 'Vous allez recevoir dans quelques minutes un e-mail contenant les instructions pour déverrouiller votre compte.'
|
||||
unlocked: 'Votre compte a été déverrouillé avec succès. Vous êtes à présent connecté.'
|
||||
invitations:
|
||||
send_instructions: 'Votre invitation a été envoyée.'
|
||||
invitation_token_invalid: 'Le jeton d’invitation fourni n’est pas valide !'
|
||||
updated: 'Votre mot de passe a été réglé avec succès. Vous êtes à présent connecté.'
|
||||
mailer:
|
||||
confirmation_instructions: 'Instructions de confirmation'
|
||||
reset_password_instructions: 'Réinitialiser les instructions du mot de passe'
|
||||
unlock_instructions: 'Instructions de déverrouillage'
|
||||
confirmation_instructions:
|
||||
subject: 'Instructions de confirmation'
|
||||
reset_password_instructions:
|
||||
subject: 'Instructions de réinitialisation du mot de passe'
|
||||
unlock_instructions:
|
||||
subject: 'Instructions de déverrouillage'
|
||||
invitation:
|
||||
subject: 'Un ami souhaite que vous rejoigniez Diaspora !'
|
||||
|
||||
|
|
|
|||
40
config/locales/devise/devise.tr.yml
Normal file
40
config/locales/devise/devise.tr.yml
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# Copyright (c) 2010, Diaspora Inc. This file is
|
||||
# licensed under the Affero General Public License version 3 or later. See
|
||||
# the COPYRIGHT file.
|
||||
|
||||
tr:
|
||||
errors:
|
||||
messages:
|
||||
not_found: "bulunmadi"
|
||||
already_confirmed: "zaten doğrulandı"
|
||||
not_locked: "kilitlenmedi"
|
||||
|
||||
devise:
|
||||
failure:
|
||||
unauthenticated: "Devam etmeden once bir hesap açtırmalı veya hesabınızla giriş yapmalısınız."
|
||||
unconfirmed: "Hesabınızı doğrulamalısınız devam etmeden once."
|
||||
locked: "Hesabınız kilitlenmiştir."
|
||||
invalid: "Yanlış email veya şifre."
|
||||
invalid_token: "Yanlış authentikasyon tılsımı."
|
||||
timeout: "Zamanınız sona erdi, lütfen tekrar giriş yapın devam etmek için."
|
||||
inactive: "Hesabınız aktive edilmemiştir daha."
|
||||
sessions:
|
||||
signed_in: "Başarıyla giriş yaptınız."
|
||||
signed_out: "Başarıyla çıkıs yaptınız."
|
||||
passwords:
|
||||
send_instructions: "Kisa bir süre içersinde şifrenizi nasıl yeniliyceğinizi açıklıyan bir email alıcaksınız."
|
||||
updated: "Şifreniz değistirilmiştir. Şu anda giriş yapmış oluyorsunuz."
|
||||
confirmations:
|
||||
send_instructions: "Kısa bir süre içersinde hesabınızı nasıl dogruluycaginiza dair bir email alicaksiniz."
|
||||
confirmed: "Hesabınız dogrulanmıstır. Şu anda giriş yapmış oluyorsunuz."
|
||||
registrations:
|
||||
signed_up: "Basarıyla kayıt yaptınız. Dogrulama emaili size gonderilmistir."
|
||||
updated: "Heabinizi başarili olarak yenilediniz."
|
||||
destroyed: "Hoşçakal! Hesabiniz yok edildi. Umuyoruz sizi tekrar gorüceğiz yakınlarda."
|
||||
unlocks:
|
||||
send_instructions: "Kisa bir süre içersinde hesabınızı nasıl kilit altinda çikarabiliceginize dair bir email alıcaksınız."
|
||||
unlocked: "Heabiniz kilit altindan çıkartılmıstır. Şu anda giriş yapmıs oluyorsunuz"
|
||||
mailer:
|
||||
confirmation_instructions: "Doğrulama talimatları"
|
||||
reset_password_instructions: "Yeni şifre kurma talimatları"
|
||||
unlock_instructions: "Kilit altından çıkarma talimatları"
|
||||
|
|
@ -38,6 +38,7 @@ en:
|
|||
share: "Share"
|
||||
aspect_friends:
|
||||
add_friends: "add friends"
|
||||
photos: "photos"
|
||||
albums:
|
||||
album:
|
||||
you: "you"
|
||||
|
|
@ -69,10 +70,13 @@ en:
|
|||
friends_albums: "Friends Albums"
|
||||
your_albums: "Your Albums"
|
||||
aspects:
|
||||
index:
|
||||
photos: "photos"
|
||||
show:
|
||||
photos: "photos"
|
||||
empty_messages:
|
||||
start_talking: "Nobody has said anything yet. Get the conversation started!"
|
||||
nobody: "We know you have friends, bring them to Diaspora!"
|
||||
nobody_in_aspect: "Your aspect '%{aspect_name}' is empty."
|
||||
add_friend: "Add a friend"
|
||||
add_friend_to: "Add a someone to %{aspect_name}"
|
||||
invite: "Invite a someone to join Diaspora!"
|
||||
manage:
|
||||
add_a_new_aspect: "Add a new aspect"
|
||||
add_a_new_friend: "Add a new friend"
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ fr-informal:
|
|||
people:
|
||||
helper:
|
||||
results_for: " résultats concernant %{params}"
|
||||
people_on_pod_are_aware_of: " personnes agissant comme des automates sont conscients de"
|
||||
people_on_pod_are_aware_of: " personnes agissant comme des automates sont au courant"
|
||||
layouts:
|
||||
application:
|
||||
edit_profile: "éditer le profil"
|
||||
|
|
@ -52,7 +52,7 @@ fr-informal:
|
|||
edit:
|
||||
editing: "Édition"
|
||||
updated: "mis à jour"
|
||||
are_you_sure: "Es-tu sûr(e)?"
|
||||
are_you_sure: "Es-tu sûr(e) ?"
|
||||
delete_album: "Supprimer l’album"
|
||||
cancel: "Annuler"
|
||||
index:
|
||||
|
|
@ -84,17 +84,18 @@ fr-informal:
|
|||
add_a_new_aspect: "Ajouter un nouvel aspect"
|
||||
create: "Créer"
|
||||
create:
|
||||
success:"Clique sur le symbole plus situé sur le côté gauche afin que Diaspora détermine qui peut voir ton nouvel aspect."
|
||||
success: "Clique sur le symbole plus situé sur le côté gauche afin que Diaspora détermine qui peut voir ton nouvel aspect."
|
||||
failure: "La création de l’aspect a échoué."
|
||||
destroy:
|
||||
success: "%{name} a été supprimé avec succès."
|
||||
update:
|
||||
success: "Ton aspect, %{name}, a été édité avec succès."
|
||||
move_friends:
|
||||
failure: "L’édition de l’aspect concernant l’ami %{real_name} a échoué."
|
||||
failure: "L’édition de l’aspect concernant ton ami %{real_name} a échoué."
|
||||
success: "Les aspects ont été édités avec succès."
|
||||
move_friend:
|
||||
error: "ne fonctionne pas %{inspect}"
|
||||
notice: "Tu montres à présent à ton ami un aspect différent au tien."
|
||||
failure: "ne fonctionne pas %{inspect}"
|
||||
success: "Tu montres à présent à ton ami un aspect différent au tiens."
|
||||
helper:
|
||||
remove: "supprimer"
|
||||
aspect_not_empty: "L’aspect n’est pas vide"
|
||||
|
|
@ -106,12 +107,14 @@ fr-informal:
|
|||
update_profile: "Mettre à jour le profil"
|
||||
home: "Accueil"
|
||||
diaspora_username: "NOM D’UTILISATEUR DIASPORA"
|
||||
info: "Information"
|
||||
info: "Informations"
|
||||
picture: "Image"
|
||||
editing_profile: "Édition du profil"
|
||||
albums: "Albums"
|
||||
you_dont_have_any_photos: "Tu n’as aucune photo ! Rends-toi sur la page"
|
||||
page_to_upload_some: "afin d’en transférer quelques-unes."
|
||||
or: "ou"
|
||||
destroy: "Compte clôturé avec succès."
|
||||
comments:
|
||||
comment:
|
||||
ago: "il y a"
|
||||
|
|
@ -132,25 +135,33 @@ fr-informal:
|
|||
delete_photo: "Supprimer la photo"
|
||||
photo:
|
||||
show_comments: "afficher les commentaires"
|
||||
posted_a_new_photo_to: "a publié une nouvelle photo sur"
|
||||
posted_a_new_photo_to: "a publié une nouvelle photo dans"
|
||||
new:
|
||||
new_photo: "Nouvelle photo"
|
||||
back_to_list: "Retourner à la liste"
|
||||
post_it: "publie-la !"
|
||||
post_it: "la publier !"
|
||||
create:
|
||||
runtime_error: "Le transfert de la photo a échoué. Es-tu sûr(e) que ta ceinture de sécurité est bien attachée ?"
|
||||
integrity_error: "Le transfert de la photo a échoué. Es-tu sûr(e) que c’était bien une image ?"
|
||||
type_error: "Le transfert de la photo a échoué. Es-tu sûr(e) que l’image était bien ajoutée ?"
|
||||
type_error: "Le transfert de la photo a échoué. Es-tu sûr(e) que l’image a bien été ajoutée ?"
|
||||
update:
|
||||
notice: "La photo a été mise à jour avec succès."
|
||||
error: "Échec de l’édition de la photo."
|
||||
error: "L’édition de la photo a échoué."
|
||||
destroy:
|
||||
notice: "Photo supprimée."
|
||||
notice: "La photo a été supprimée."
|
||||
registrations:
|
||||
new:
|
||||
sign_up: "Inscription"
|
||||
create:
|
||||
success: "Tu as rejoint Diaspora !"
|
||||
invitations:
|
||||
create:
|
||||
sent: 'Ton invitation a été envoyée.'
|
||||
no_more: 'Tu n’as plus d’invitation.'
|
||||
already_sent: 'Tu as déjà invité cette personne.'
|
||||
invitation_token_invalid: 'Le jeton d’invitation fourni n’est pas valide !'
|
||||
updated: 'Ton mot de passe a été réglé avec succès. Tu es à présent connecté.'
|
||||
|
||||
status_messages:
|
||||
new_status_message:
|
||||
tell_me_something_good: "dis-moi quelque chose de bien"
|
||||
|
|
@ -164,14 +175,14 @@ fr-informal:
|
|||
comments: "commentaires"
|
||||
are_you_sure: "Es-tu sûr(e) ?"
|
||||
destroy: "Détruire"
|
||||
view_all: "Tout voir"
|
||||
view_all: "Tout afficher"
|
||||
message: "Message"
|
||||
owner: "Propriétaire"
|
||||
helper:
|
||||
no_message_to_display: "Aucun message à afficher."
|
||||
people:
|
||||
person:
|
||||
add_friend: "ajouter un ami"
|
||||
add_friend: "ajouter en ami"
|
||||
pending_request: "requête en attente"
|
||||
index:
|
||||
add_friend: "ajouter un ami"
|
||||
|
|
@ -186,13 +197,13 @@ fr-informal:
|
|||
show:
|
||||
last_seen: "dernière connexion : %{how_long_ago}"
|
||||
friends_since: "amis depuis : %{how_long_ago}"
|
||||
save: "sauvegarder"
|
||||
save: "sauver"
|
||||
are_you_sure: "Es-tu sûr(e) ?"
|
||||
remove_friend: "supprimer un ami"
|
||||
remove_friend: "supprimer de mes amis"
|
||||
requests:
|
||||
new_request:
|
||||
add_a_new_friend_to: "Ajouter un ami à"
|
||||
enter_a_diaspora_username: "Saisi un nom d’utilisateur Diaspora :"
|
||||
add_a_new_friend_to: "Ajouter un nouvel ami à"
|
||||
enter_a_diaspora_username: "Saisis un nom d’utilisateur Diaspora :"
|
||||
your_diaspora_username_is: "Ton nom d’utilisateur Diaspora est : %{diaspora_handle}"
|
||||
friends_username: "Nom d’utilisateur de l’ami"
|
||||
destroy:
|
||||
|
|
@ -201,6 +212,6 @@ fr-informal:
|
|||
ignore: "Requête d’ami ignorée."
|
||||
create:
|
||||
error: "Aucun résultat Diaspora n’a été trouvé avec cette adresse e-mail !"
|
||||
already_friends: "Tu es déjà ami avec %{destination_url}!"
|
||||
already_friends: "Vous êtes déjà amis avec %{destination_url}!"
|
||||
success: "Une requête d’ami a été envoyée à %{destination_url}."
|
||||
horribly_wrong: "Quelque chose d’horrible s’est produit."
|
||||
|
|
|
|||
|
|
@ -2,42 +2,42 @@
|
|||
# licensed under the Affero General Public License version 3 or later. See
|
||||
# the COPYRIGHT file.
|
||||
|
||||
# Localization file for French. Add more files in this directory for other locales.
|
||||
# Localization file for French (Formal Honorifics). Add more files in this directory for other locales.
|
||||
# See http://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale for starting points.
|
||||
|
||||
fr:
|
||||
hello: "Bonjour tout le monde"
|
||||
application:
|
||||
helper:
|
||||
unknown_person: "unknown person"
|
||||
new_requests: "new requests"
|
||||
unknown_person: "personne inconnue"
|
||||
new_requests: "nouvelles requêtes"
|
||||
dashboards:
|
||||
helper:
|
||||
home: "home"
|
||||
home: "accueil"
|
||||
error_messages:
|
||||
helper:
|
||||
invalid_fields: "Invalid Fields"
|
||||
correct_the_following_errors_and_try_again: "Correct the following errors and try again."
|
||||
invalid_fields: "Champs invalides"
|
||||
correct_the_following_errors_and_try_again: "Corrigez les erreurs suivantes, puis réessayez."
|
||||
people:
|
||||
helper:
|
||||
results_for: " resultados para %{params}"
|
||||
people_on_pod_are_aware_of: " gente en pod estan al tanto de "
|
||||
results_for: " résultats concernant %{params}"
|
||||
people_on_pod_are_aware_of: " personnes agissant comme des automates sont au courant"
|
||||
layouts:
|
||||
application:
|
||||
edit_profile: "Éditez votre profil"
|
||||
logout: "Déconnexion"
|
||||
edit_profile: "éditer le profil"
|
||||
logout: "déconnexion"
|
||||
shared:
|
||||
aspect_nav:
|
||||
all_aspects: "Tous les Aspects"
|
||||
manage: "Gérez"
|
||||
manage_your_aspects: "Gérez vos Aspects"
|
||||
all_aspects: "Tous les aspects"
|
||||
manage: "Gérer"
|
||||
manage_your_aspects: "Gérer vos aspects"
|
||||
sub_header:
|
||||
all_aspects: "Tous les Aspects"
|
||||
manage_aspects: "Gérez vos Aspects"
|
||||
all_aspects: "Tous les aspects"
|
||||
manage_aspects: "Gérer les aspects"
|
||||
publisher:
|
||||
share: "Partager"
|
||||
aspect_friends:
|
||||
add_friends: "Ajouter des amis"
|
||||
add_friends: "ajouter des amis"
|
||||
albums:
|
||||
album:
|
||||
you: "vous"
|
||||
|
|
@ -52,22 +52,22 @@ fr:
|
|||
edit:
|
||||
editing: "Édition"
|
||||
updated: "mis à jour"
|
||||
are_you_sure: "Êtes-vous sûr?"
|
||||
delete_album: "Supprimer l'album"
|
||||
are_you_sure: "Êtes-vous sûr(e) ?"
|
||||
delete_album: "Supprimer l’album"
|
||||
cancel: "Annuler"
|
||||
index:
|
||||
home: "accueil"
|
||||
new_album: "Nouvel album"
|
||||
helper:
|
||||
friends_albums: "Friends Albums"
|
||||
your_albums: "Your Albums"
|
||||
create:
|
||||
success: "Tu as créé un album nommé %{name}."
|
||||
success: "Vous avez créé un album nommé %{name}."
|
||||
update:
|
||||
success: "L’album %{name} a été édité avec succès."
|
||||
failure: "L’édition de l’album %{name} a échoué."
|
||||
destroy:
|
||||
success: "L’album %{name} a été supprimé."
|
||||
helper:
|
||||
friends_albums: "Albums d’amis"
|
||||
your_albums: "Vos albums"
|
||||
aspects:
|
||||
index:
|
||||
photos: "photos"
|
||||
|
|
@ -75,8 +75,8 @@ fr:
|
|||
photos: "photos"
|
||||
manage:
|
||||
add_a_new_aspect: "Ajouter un nouvel aspect"
|
||||
add_a_new_friend: "Ajouter un nouvel amis"
|
||||
show: "Voir"
|
||||
add_a_new_friend: "Ajouter un nouvel ami"
|
||||
show: "Afficher"
|
||||
update_aspects: "Mettre à jour les aspects"
|
||||
requests: "Requêtes"
|
||||
ignore_remove: "Ignorer/Supprimer"
|
||||
|
|
@ -84,7 +84,21 @@ fr:
|
|||
add_a_new_aspect: "Ajouter un nouvel aspect"
|
||||
create: "Créer"
|
||||
create:
|
||||
success:"Cliquez sur plus situé sur le côté gauche afin d’en informer Diaspora qui peut voir votre nouvel aspect."
|
||||
success: "Cliquez sur le symbole plus situé sur le côté gauche afin que Diaspora détermine qui peut voir votre nouvel aspect."
|
||||
failure: "La création de l’aspect a échoué."
|
||||
destroy:
|
||||
success: "%{name} a été supprimé avec succès."
|
||||
update:
|
||||
success: "Votre aspect, %{name}, a été édité avec succès."
|
||||
move_friends:
|
||||
failure: "L’édition de l’aspect concernant votre ami %{real_name} a échoué."
|
||||
success: "Les aspects ont été édités avec succès."
|
||||
move_friend:
|
||||
failure: "ne fonctionne pas %{inspect}"
|
||||
success: "Vous montrez à présent à votre ami un aspect différent au vôtre."
|
||||
helper:
|
||||
remove: "supprimer"
|
||||
aspect_not_empty: "L’aspect n’est pas vide"
|
||||
users:
|
||||
edit:
|
||||
editing_profile: "Édition du profil"
|
||||
|
|
@ -93,12 +107,14 @@ fr:
|
|||
update_profile: "Mettre à jour le profil"
|
||||
home: "Accueil"
|
||||
diaspora_username: "NOM D’UTILISATEUR DIASPORA"
|
||||
info: "Information"
|
||||
info: "Informations"
|
||||
picture: "Image"
|
||||
editing_profile: "Édition du profil"
|
||||
albums: "Albums"
|
||||
you_dont_have_any_photos: "Vous n’avez aucune photo ! Rendez-vous sur la page"
|
||||
page_to_upload_some: "afin d’en transférer quelques-unes."
|
||||
or: "ou"
|
||||
destroy: "Compte clôturé avec succès."
|
||||
comments:
|
||||
comment:
|
||||
ago: "il y a"
|
||||
|
|
@ -111,22 +127,41 @@ fr:
|
|||
next: "suivant"
|
||||
edit_photo: "Éditer la photo"
|
||||
delete_photo: "Supprimer la photo"
|
||||
are_you_sure: "Êtes-vous sûr ?"
|
||||
are_you_sure: "Êtes-vous sûr(e) ?"
|
||||
comments: "commentaires"
|
||||
edit:
|
||||
editing: "Édition"
|
||||
are_you_sure: "Êtes-vous sûr ?"
|
||||
are_you_sure: "Êtes-vous sûr(e) ?"
|
||||
delete_photo: "Supprimer la photo"
|
||||
photo:
|
||||
show_comments: "afficher les commentaires"
|
||||
posted_a_new_photo_to: "a publié une nouvelle photo sur"
|
||||
posted_a_new_photo_to: "a publié une nouvelle photo dans"
|
||||
new:
|
||||
new_photo: "Nouvelle photo"
|
||||
back_to_list: "Retourner à la liste"
|
||||
post_it: "publiez-la !"
|
||||
post_it: "la publier !"
|
||||
create:
|
||||
runtime_error: "Le transfert de la photo a échoué. Êtes-vous sûr(e) que votre ceinture de sécurité est bien attachée ?"
|
||||
integrity_error: "Le transfert de la photo a échoué. Êtes-vous sûr(e) que c’était bien une image ?"
|
||||
type_error: "Le transfert de la photo a échoué. Êtes-vous sûr(e) que l’image a bien été ajoutée ?"
|
||||
update:
|
||||
notice: "La photo a été mise à jour avec succès."
|
||||
error: "L’édition de la photo a échoué."
|
||||
destroy:
|
||||
notice: "La photo a été supprimée."
|
||||
registrations:
|
||||
new:
|
||||
sign_up: "Inscription"
|
||||
create:
|
||||
success: "Vous avez rejoint Diaspora !"
|
||||
invitations:
|
||||
create:
|
||||
sent: 'Votre invitation a été envoyée.'
|
||||
no_more: 'Vous n’avez plus d’invitation.'
|
||||
already_sent: 'Vous avez déjà invité cette personne.'
|
||||
invitation_token_invalid: 'Le jeton d’invitation fourni n’est pas valide !'
|
||||
updated: 'Votre mot de passe a été réglé avec succès. Vous êtes à présent connecté.'
|
||||
|
||||
status_messages:
|
||||
new_status_message:
|
||||
tell_me_something_good: "dites-moi quelque chose de bien"
|
||||
|
|
@ -134,16 +169,21 @@ fr:
|
|||
status_message:
|
||||
show_comments: "afficher les commentaires"
|
||||
delete: "Supprimer"
|
||||
are_you_sure: "Êtes-vous sûr ?"
|
||||
are_you_sure: "Êtes-vous sûr(e) ?"
|
||||
show:
|
||||
status_message: "Message d’état"
|
||||
comments: "commentaires"
|
||||
are_you_sure: "Êtes-vous sûr ?"
|
||||
are_you_sure: "Êtes-vous sûr(e) ?"
|
||||
destroy: "Détruire"
|
||||
view_all: "Tout voir"
|
||||
view_all: "Tout afficher"
|
||||
message: "Message"
|
||||
owner: "Propriétaire"
|
||||
helper:
|
||||
no_message_to_display: "Aucun message à afficher."
|
||||
people:
|
||||
person:
|
||||
add_friend: "ajouter en ami"
|
||||
pending_request: "requête en attente"
|
||||
index:
|
||||
add_friend: "ajouter un ami"
|
||||
real_name: "nom réel"
|
||||
|
|
@ -157,6 +197,21 @@ fr:
|
|||
show:
|
||||
last_seen: "dernière connexion : %{how_long_ago}"
|
||||
friends_since: "amis depuis : %{how_long_ago}"
|
||||
save: "sauvegarder"
|
||||
are_you_sure: "Êtes-vous sûr ?"
|
||||
remove_friend: "supprimer un ami"
|
||||
save: "sauver"
|
||||
are_you_sure: "Êtes-vous sûr(e) ?"
|
||||
remove_friend: "supprimer de mes amis"
|
||||
requests:
|
||||
new_request:
|
||||
add_a_new_friend_to: "Ajouter un nouvel ami à"
|
||||
enter_a_diaspora_username: "Saisissez un nom d’utilisateur Diaspora :"
|
||||
your_diaspora_username_is: "Votre nom d’utilisateur Diaspora est : %{diaspora_handle}"
|
||||
friends_username: "Nom d’utilisateur de l’ami"
|
||||
destroy:
|
||||
success: "Vous êtes à présent amis."
|
||||
error: "Veuillez sélectionner un aspect !"
|
||||
ignore: "Requête d’ami ignorée."
|
||||
create:
|
||||
error: "Aucun résultat Diaspora n’a été trouvé avec cette adresse e-mail !"
|
||||
already_friends: "Vous êtes déjà amis avec %{destination_url}!"
|
||||
success: "Une requête d’ami a été envoyée à %{destination_url}."
|
||||
horribly_wrong: "Quelque chose d’horrible s’est produit."
|
||||
|
|
|
|||
208
config/locales/diaspora/tr.yml
Normal file
208
config/locales/diaspora/tr.yml
Normal file
|
|
@ -0,0 +1,208 @@
|
|||
# Copyright (c) 2010, Diaspora Inc. This file is
|
||||
# licensed under the Affero General Public License version 3. See
|
||||
# the COPYRIGHT file.
|
||||
|
||||
# Sample localization file for English. Add more files in this directory for other locales.
|
||||
# See http://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale for starting points.
|
||||
|
||||
tr:
|
||||
hello: "Merhaba dünya"
|
||||
application:
|
||||
helper:
|
||||
unknown_person: "bilinmiyen insanlar"
|
||||
new_requests: "yeni istekler"
|
||||
dashboards:
|
||||
helper:
|
||||
home: "ev"
|
||||
error_messages:
|
||||
helper:
|
||||
invalid_fields: "Yanliș Bölümler"
|
||||
correct_the_following_errors_and_try_again: "Alttaki yanlișlari düzeltin ve tekrar deneyin."
|
||||
people:
|
||||
helper:
|
||||
results_for: "%{params} için sonuçlar"
|
||||
people_on_pod_are_aware_of: " bu podda bizim bildiğimiz kişiler."
|
||||
layouts:
|
||||
application:
|
||||
edit_profile: "profili düzelt"
|
||||
logout: "çık"
|
||||
shared:
|
||||
aspect_nav:
|
||||
all_aspects: "Bütün Yanlar"
|
||||
manage: "Düzenle"
|
||||
manage_your_aspects: "Bütün yanları düzenle"
|
||||
sub_header:
|
||||
all_aspects: "Bütün Yanlar"
|
||||
manage_aspects: "Yanları Düzenle"
|
||||
publisher:
|
||||
share: "Paylaş"
|
||||
aspect_friends:
|
||||
add_friends: "Arkadaş ekle"
|
||||
albums:
|
||||
album:
|
||||
you: "sen"
|
||||
new_album:
|
||||
create: "yarat"
|
||||
add_a_new_album: "Yeni albüm ekle"
|
||||
show:
|
||||
edit_album: "Albümü düzelt"
|
||||
albums: "albümler"
|
||||
updated: "düzeltildi"
|
||||
by: "tarafından"
|
||||
edit:
|
||||
editing: "düzeltiyor"
|
||||
updated: "düzeltildi"
|
||||
are_you_sure: "Eminmisin?"
|
||||
delete_album: "Sil Albümü"
|
||||
cancel: "Vazgeç"
|
||||
index:
|
||||
home: "Ev"
|
||||
new_album: "Yeni Albüm"
|
||||
create:
|
||||
success: "Yeni bir album yarattınız %{name} isminde."
|
||||
update:
|
||||
success: "Albüm %{name} başarı ile eklenmiştir."
|
||||
failure: "Albüm %{name} yı düzeltme başarılı değil."
|
||||
destroy:
|
||||
success: "Albüm %{name} silinmistir."
|
||||
helper:
|
||||
friends_albums: "Arkadaşların Albümleri"
|
||||
your_albums: "Sizin Albümleriniz"
|
||||
aspects:
|
||||
index:
|
||||
photos: "resimler"
|
||||
show:
|
||||
photos: "resimler"
|
||||
manage:
|
||||
add_a_new_aspect: "Yeni bir yan ekle"
|
||||
add_a_new_friend: "Yeni bir arkadaş ekle"
|
||||
show: "Show"
|
||||
update_aspects: "Yanlari düzelt"
|
||||
requests: "Ricalar"
|
||||
ignore_remove: "Goz ardi et/çıkart"
|
||||
new_aspect:
|
||||
add_a_new_aspect: "Yeni bir yan ekle"
|
||||
create: "Yarat"
|
||||
create:
|
||||
success: "Sol taraftaki arti ya tıklıyarak Diasporaya sizin yeni yanınızı kimlerin görebileceğini belirtin."
|
||||
failure: "Yan yaratimi basarılı değildi."
|
||||
destroy:
|
||||
success: "%{name} basarıyla yaratıldı."
|
||||
update:
|
||||
success: "Sizin yanınız, %{name}, başariyla düzeltildi."
|
||||
move_friends:
|
||||
failure: "Yan düzeltimi arkadisınız %{real_name} icin başarisizdi."
|
||||
success: "Yanlar başariyla düzeltildi."
|
||||
move_friend:
|
||||
failure: "%{inspect} islemedi."
|
||||
success: "Simdi siz arkadaşlarınıza başka bir yanınızı gosteriyorsunuz."
|
||||
helper:
|
||||
remove: "cikart"
|
||||
aspect_not_empty: "Yan bos değil"
|
||||
users:
|
||||
edit:
|
||||
editing_profile: "Profili düzeltiliyor"
|
||||
profile:
|
||||
cancel: "Vazgeç"
|
||||
update_profile: "düzelt Profili"
|
||||
home: "Ev"
|
||||
diaspora_username: "DIASPORA ISMINIZ"
|
||||
info: "Bilgi"
|
||||
picture: "Resim"
|
||||
editing_profile: "Profili düzeltmek"
|
||||
albums: "Albümler"
|
||||
you_dont_have_any_photos: "Hicbir fotorafiniz yok! Şuraya gidin"
|
||||
page_to_upload_some: "yuklemek icin."
|
||||
or: "veya"
|
||||
comments:
|
||||
comment:
|
||||
ago: "once"
|
||||
new_comment:
|
||||
comment: "Yorum"
|
||||
photos:
|
||||
show:
|
||||
prev: "once"
|
||||
full_size: "tam büyüklük"
|
||||
next: "sonra"
|
||||
edit_photo: "düzelt Fotoyu"
|
||||
delete_photo: "Sil Fotoyu"
|
||||
are_you_sure: "Eminmisiniz?"
|
||||
comments: "yorumlar"
|
||||
edit:
|
||||
editing: "düzeltiliyor"
|
||||
are_you_sure: "Eminmisiniz?"
|
||||
delete_photo: "Sil Fotoyu"
|
||||
photo:
|
||||
show_comments: "göster yorumları"
|
||||
posted_a_new_photo_to: "yeni bir foto koydu "
|
||||
new:
|
||||
new_photo: "Yeni Foto"
|
||||
back_to_list: "Listeye Geri Git"
|
||||
post_it: "ekle!"
|
||||
create:
|
||||
runtime_error: "Fotoyu yukleme başarısızdı. Emniyet kemeriniz takılımıydı?"
|
||||
integrity_error: "Fotoyu yukleme başarısızdı. Resim olduğundan eminmisınız?"
|
||||
type_error: "Fotoyu yukleme başarısızdı. Bir resim yuklediğinize eminmisiniz?"
|
||||
update:
|
||||
notice: "Resim başarıyla eklendi."
|
||||
error: "Fotoyu düzeltme basarısızdı."
|
||||
destroy:
|
||||
notice: "Foto silindi."
|
||||
registrations:
|
||||
new:
|
||||
sign_up: "Katıl"
|
||||
create:
|
||||
success: "Diasporaya katıldınız!"
|
||||
status_messages:
|
||||
new_status_message:
|
||||
tell_me_something_good: "bana iyi bir şey söyle"
|
||||
oh_yeah: "tabi ya!"
|
||||
status_message:
|
||||
show_comments: "göster yorumları"
|
||||
delete: "Sil"
|
||||
are_you_sure: "Eminmisiniz?"
|
||||
show:
|
||||
status_message: "Status Mesaji"
|
||||
comments: "yorumlar"
|
||||
are_you_sure: "Eminmisiniz?"
|
||||
destroy: "Yok et"
|
||||
view_all: "Hepsine bak"
|
||||
message: "Mesaj"
|
||||
owner: "Sahibi"
|
||||
helper:
|
||||
no_message_to_display: "Gosterilcek bir mesaj yok."
|
||||
people:
|
||||
person:
|
||||
add_friend: "Arkadaş ekle"
|
||||
pending_request: "bekletilen rica"
|
||||
index:
|
||||
add_friend: "Arkadaş ekle"
|
||||
real_name: "esas ismi"
|
||||
diaspora_handle: "diaspora ismi"
|
||||
thats_you: "o sensin!"
|
||||
friend_request_pending: "Arkadaş ricasi bekletiliyor"
|
||||
you_have_a_friend_request_from_this_person: "siz bir arkadaş isteği aldiniz bu kişiden"
|
||||
new:
|
||||
new_person: "Yeni Kişi"
|
||||
back_to_list: "Listeye geri dön"
|
||||
show:
|
||||
last_seen: "son gorüldü: %{how_long_ago}"
|
||||
friends_since: "Arkadaş süreci: %{how_long_ago}"
|
||||
save: "sakla"
|
||||
are_you_sure: "Eminmisiniz?"
|
||||
remove_friend: "çikart arkadaşlıktan"
|
||||
requests:
|
||||
new_request:
|
||||
add_a_new_friend_to: "Buna yeni bir arkadaş ekle"
|
||||
enter_a_diaspora_username: "Bir Diaspora ismi gir:"
|
||||
your_diaspora_username_is: "Sizin Diaspora isminiz: %{diaspora_handle}"
|
||||
friends_username: "Arkadaşin Diaspora ismi"
|
||||
destroy:
|
||||
success: "Siz şimdi arkadaşsınız."
|
||||
error: "Lutfen bir yan seçiniz!"
|
||||
ignore: "Arkadaş isteğini reddettiniz."
|
||||
create:
|
||||
error: "Diaspora cekirdeği bulunmadı bu emailde!"
|
||||
already_friends: "Siz zaten arakadaşsınız %{destination_url} ile!"
|
||||
success: "%{destination_url} için arakadaş olma isteği gonderilmiştir."
|
||||
horribly_wrong: "Bir şey muhtemalan yanliş gitti."
|
||||
|
|
@ -27,8 +27,8 @@ $(document).ready(function(){
|
|||
|
||||
//buttons//////
|
||||
$("#add_aspect_button").fancybox({ 'titleShow' : false });
|
||||
$("#add_request_button").fancybox({ 'titleShow': false });
|
||||
$("#invite_user_button").fancybox({ 'titleShow': false });
|
||||
$(".add_request_button").fancybox({ 'titleShow': false });
|
||||
$(".invite_user_button").fancybox({ 'titleShow': false });
|
||||
$(".add_request_button").fancybox({ 'titleShow': false });
|
||||
|
||||
$("input[type='submit']").addClass("button");
|
||||
|
|
|
|||
|
|
@ -964,3 +964,48 @@ ul#settings_nav
|
|||
#aspect_list
|
||||
:margin 0
|
||||
:padding 0
|
||||
|
||||
#left_pane
|
||||
ul
|
||||
:margin 0
|
||||
:padding 0
|
||||
:list
|
||||
:style none
|
||||
li a
|
||||
:display block
|
||||
:padding 3px
|
||||
:border
|
||||
:bottom 1px solid #ccc
|
||||
|
||||
&:hover
|
||||
&:after
|
||||
:content " ►"
|
||||
|
||||
.empty_message
|
||||
:margin
|
||||
:top 12px
|
||||
:bottom 12px
|
||||
:text
|
||||
:align center
|
||||
|
||||
:color #777
|
||||
h3
|
||||
:color #777
|
||||
|
||||
:margin
|
||||
:left 70px
|
||||
:padding 2em
|
||||
:bottom 0.7em
|
||||
|
||||
:width 520px
|
||||
|
||||
:border 2px dashed #777
|
||||
:border-radius 5px
|
||||
|
||||
.null_arrow
|
||||
:margin
|
||||
:top -14px
|
||||
:font
|
||||
:size 80px
|
||||
:display inline-block
|
||||
|
||||
|
|
|
|||
|
|
@ -6,58 +6,78 @@ require 'spec_helper'
|
|||
|
||||
describe User do
|
||||
let(:inviter) {Factory.create :user}
|
||||
let(:aspect) {inviter.aspect(:name => "awesome")}
|
||||
let(:another_user) {Factory.create :user}
|
||||
let(:wrong_aspect) {another_user.aspect(:name => "super")}
|
||||
let(:inviter_with_3_invites) {Factory.create :user, :invites => 3}
|
||||
let!(:invited_user) { create_user_with_invitation("abc", :email => "email@example.com", :inviter => inviter)}
|
||||
let(:invited_user1) { create_user_with_invitation("abc", :email => "email@example.com", :inviter => inviter_with_3_invites)}
|
||||
let(:invited_user2) { create_user_with_invitation("abc", :email => "email@example.com", :inviter => inviter_with_3_invites)}
|
||||
let(:invited_user3) { create_user_with_invitation("abc", :email => "email@example.com", :inviter => inviter_with_3_invites)}
|
||||
let(:aspect2) {inviter_with_3_invites.aspect(:name => "Jersey Girls")}
|
||||
let!(:invited_user1) { create_user_with_invitation("abc", :email => "email@example.com", :inviter => inviter)}
|
||||
|
||||
before do
|
||||
deliverable = Object.new
|
||||
deliverable.stub!(:deliver)
|
||||
::Devise.mailer.stub!(:invitation).and_return(deliverable)
|
||||
end
|
||||
|
||||
context "creating invites" do
|
||||
before do
|
||||
deliverable = Object.new
|
||||
deliverable.stub!(:deliver)
|
||||
::Devise.mailer.stub!(:invitation).and_return(deliverable)
|
||||
it 'requires an apect' do
|
||||
proc{inviter.invite_user(:email => "maggie@example.com")}.should raise_error /Must invite into aspect/
|
||||
end
|
||||
|
||||
it 'requires your aspect' do
|
||||
proc{inviter.invite_user(:email => "maggie@example.com", :aspect_id => wrong_aspect.id)}.should raise_error /Must invite to your aspect/
|
||||
end
|
||||
|
||||
it 'creates a user' do
|
||||
inviter
|
||||
lambda {
|
||||
inviter.invite_user(:email => "joe@example.com")
|
||||
inviter.invite_user(:email => "joe@example.com", :aspect_id => aspect.id )
|
||||
}.should change(User, :count).by(1)
|
||||
end
|
||||
|
||||
it 'sends email to the invited user' do
|
||||
::Devise.mailer.should_receive(:invitation).once
|
||||
inviter.invite_user(:email => "ian@example.com")
|
||||
inviter.invite_user(:email => "ian@example.com", :aspect_id => aspect.id)
|
||||
end
|
||||
|
||||
it 'adds the inviter to the invited_user' do
|
||||
invited_user = inviter.invite_user(:email => "marcy@example.com")
|
||||
invited_user = inviter.invite_user(:email => "marcy@example.com", :aspect_id => aspect.id)
|
||||
invited_user.reload
|
||||
invited_user.inviters.include?(inviter).should be_true
|
||||
end
|
||||
|
||||
|
||||
it 'adds a pending request to the invited user' do
|
||||
invited_user = inviter.invite_user(:email => "marcy@example.com", :aspect_id => aspect.id)
|
||||
invited_user.reload
|
||||
invited_user.pending_requests.find_by_callback_url(inviter.receive_url).nil?.should == false
|
||||
end
|
||||
|
||||
it 'adds a pending request to the inviter' do
|
||||
inviter.invite_user(:email => "marcy@example.com", :aspect_id => aspect.id)
|
||||
inviter.reload
|
||||
inviter.pending_requests.find_by_callback_url(inviter.receive_url).nil?.should == false
|
||||
end
|
||||
end
|
||||
|
||||
context "limit on invites" do
|
||||
it 'does not invite users after 3 invites' do
|
||||
User.stub!(:invite!).and_return(invited_user1,invited_user2,invited_user3)
|
||||
inviter_with_3_invites.invite_user(:email => "email1@example.com")
|
||||
inviter_with_3_invites.invite_user(:email => "email2@example.com")
|
||||
inviter_with_3_invites.invite_user(:email => "email3@example.com")
|
||||
proc{inviter_with_3_invites.invite_user(:email => "email4@example.com")}.should raise_error /You have no invites/
|
||||
inviter_with_3_invites.invite_user(:email => "email1@example.com", :aspect_id => aspect2.id)
|
||||
inviter_with_3_invites.invite_user(:email => "email2@example.com", :aspect_id => aspect2.id)
|
||||
inviter_with_3_invites.invite_user(:email => "email3@example.com", :aspect_id => aspect2.id)
|
||||
proc{inviter_with_3_invites.invite_user(:email => "email4@example.com", :aspect_id => aspect2.id)}.should raise_error /You have no invites/
|
||||
end
|
||||
|
||||
it 'does not invite people I already invited' do
|
||||
pending "this is really weird to test without the actual method working"
|
||||
User.stub!(:invite!).and_return(invited_user1,invited_user1)
|
||||
inviter_with_3_invites.invite_user(:email => "email1@example.com")
|
||||
proc{inviter_with_3_invites.invite_user(:email => "email1@example.com")}.should raise_error /You already invited that person/
|
||||
inviter_with_3_invites.invite_user(:email => "email1@example.com", :aspect_id => aspect2.id)
|
||||
proc{inviter_with_3_invites.invite_user(:email => "email1@example.com", :aspect_id => aspect2.id)}.should raise_error /You already invited this person/
|
||||
end
|
||||
end
|
||||
|
||||
context "the acceptance of an invitation" do
|
||||
it "should create the person with the passed in params" do
|
||||
person_count = Person.count
|
||||
u = invited_user.accept_invitation!(:invitation_token => "abc",
|
||||
u = invited_user1.accept_invitation!(:invitation_token => "abc",
|
||||
:username => "user",
|
||||
:password => "secret",
|
||||
:password_confirmation => "secret",
|
||||
|
|
|
|||
Loading…
Reference in a new issue