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

This commit is contained in:
maco 2010-09-26 19:49:17 +00:00
commit efdf7049ee
227 changed files with 1182 additions and 848 deletions

View file

@ -16,8 +16,8 @@ including the two.
You must obey the GNU Affero General Public License V3 or later in all respects
for all of the code used other than OpenSSL or the components mentioned
above. If you modify file(s) with this exception, you may extend this
exception to your version of the file(s), but you are not obligated to
above. If you modify file(s) with this exception, you may extend this
exception to your version of the file(s), but you are not obligated to
do so. If you do not wish to do so, delete this exception statement from your
version. If you delete this exception statement from all source files in the
version. If you delete this exception statement from all source files in the
program, then also delete it here.

View file

@ -2,8 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
load 'deploy' if respond_to?(:namespace) # cap2 differentiator
Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }

12
Gemfile
View file

@ -3,7 +3,6 @@ source 'http://rubygems.org'
gem 'rails', '3.0.0'
gem 'bundler', '1.0.0'
#Security
gem 'devise', :git => 'http://github.com/BadMinus/devise.git'
@ -39,17 +38,18 @@ gem 'mini_magick'
group :test, :development do
gem 'factory_girl_rails'
gem 'ruby-debug'
end
group :test do
gem 'rspec', '>= 2.0.0.beta.17'
gem 'rspec-rails', '2.0.0.beta.17'
gem 'capybara', '~> 0.3.9'
gem 'cucumber-rails', '0.3.2'
gem 'rspec', '>= 2.0.0.beta.17'
gem 'rspec-rails', '2.0.0.beta.17'
gem 'mocha'
gem 'webrat', '0.7.2.beta.1'
gem 'redgreen'
gem 'autotest'
gem 'database_cleaner'
gem 'saucelabs-adapter', '= 0.8.12'
gem 'selenium-rc'
gem 'webmock'
end

View file

@ -109,7 +109,24 @@ GEM
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)
columnize (0.3.1)
crack (0.1.8)
cucumber (0.9.0)
builder (~> 2.1.2)
diff-lcs (~> 1.1.2)
gherkin (~> 2.2.2)
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)
diff-lcs (1.1.2)
@ -123,12 +140,19 @@ GEM
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.4)
json (~> 1.4.6)
term-ansicolor (~> 1.0.5)
trollop (~> 1.16.2)
haml (3.0.18)
hashie (0.4.0)
highline (1.6.1)
i18n (0.4.1)
json (1.4.6)
lsof (0.3.0)
json_pure (1.4.6)
linecache (0.43)
mail (2.2.6.1)
activesupport (>= 2.3.6)
mime-types
@ -174,6 +198,7 @@ GEM
rake (>= 0.8.4)
thor (~> 0.14.0)
rake (0.8.7)
redgreen (1.2.2)
rest-client (1.6.1)
mime-types (>= 1.16)
rspec (2.0.0.beta.22)
@ -189,16 +214,18 @@ GEM
rspec-rails (2.0.0.beta.17)
rspec (>= 2.0.0.beta.14)
webrat (>= 0.7.0)
saucelabs-adapter (0.8.12)
lsof (>= 0.3.0)
net-ssh (>= 2.0.12)
net-ssh-gateway (>= 1.0.1)
rest-client (>= 1.2.0)
selenium-client (>= 1.2.17)
selenium-client (1.2.18)
selenium-rc (2.2.4)
selenium-client (>= 1.2.18)
ruby-debug (0.10.3)
columnize (>= 0.1)
ruby-debug-base (~> 0.10.3.0)
ruby-debug-base (0.10.3)
linecache (>= 0.3)
rubyzip (0.9.4)
selenium-webdriver (0.0.28)
ffi (>= 0.6.1)
json_pure
rubyzip
subexec (0.0.4)
term-ansicolor (1.0.5)
thin (1.2.7)
daemons (>= 1.0.9)
eventmachine (>= 0.12.6)
@ -206,6 +233,7 @@ GEM
thor (0.14.0)
treetop (1.4.8)
polyglot (>= 0.3.1)
trollop (1.16.2)
tzinfo (0.3.23)
uuidtools (2.1.1)
warden (0.10.7)
@ -228,7 +256,9 @@ DEPENDENCIES
bson (= 1.0.7)
bson_ext (= 1.0.7)
bundler (= 1.0.0)
capybara (~> 0.3.9)
carrierwave!
cucumber-rails (= 0.3.2)
database_cleaner
devise!
em-http-request!
@ -244,13 +274,12 @@ DEPENDENCIES
pubsubhubbub
rails (= 3.0.0)
redfinger!
redgreen
roxml!
rspec (>= 2.0.0.beta.17)
rspec-rails (= 2.0.0.beta.17)
saucelabs-adapter (= 0.8.12)
selenium-rc
ruby-debug
sprinkle!
thin
webmock
webrat (= 0.7.2.beta.1)
will_paginate (= 3.0.pre2)

View file

@ -32,8 +32,6 @@ We are continuing to build features and improve the code base.
When we think it is ready for general use, we will post more final
instructions.
## Resources
We are maintaining a

View file

@ -2,12 +2,11 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
require File.expand_path('../config/application', __FILE__)
require 'rake'
ENV['GNUPGHOME'] = File.expand_path("../../gpg/diaspora-#{Rails.env}/", __FILE__)
Diaspora::Application.load_tasks

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class ApplicationController < ActionController::Base
protect_from_forgery :except => :receive

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class AspectsController < ApplicationController
before_filter :authenticate_user!
@ -15,8 +14,12 @@ class AspectsController < ApplicationController
end
def create
@aspect = current_user.aspect params[:aspect]
flash[:notice] = I18n.t('aspects.create.success')
@aspect = current_user.aspect(params[:aspect])
if @aspect.valid?
flash[:notice] = I18n.t('aspects.create.success')
else
flash[:notice] = I18n.t('aspects.create.failure')
end
respond_with :location => aspects_manage_path
end
@ -30,7 +33,7 @@ class AspectsController < ApplicationController
begin
current_user.drop_aspect @aspect
flash[:notice] = i18n.t 'aspects.destroy.success',:name => @aspect.name
rescue RuntimeError => e
rescue RuntimeError => e
flash[:error] = e.message
end

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class CommentsController < ApplicationController
before_filter :authenticate_user!

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class DevUtilitiesController < ApplicationController
before_filter :authenticate_user!, :except => [:set_backer_number]
include ApplicationHelper
@ -63,7 +62,6 @@ class DevUtilitiesController < ApplicationController
current_user.raw_visible_posts << photo
current_user.save
current_user.update_profile(:image_url => photo.url(:thumb_medium))
current_user.save
end

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class PeopleController < ApplicationController
before_filter :authenticate_user!

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class PhotosController < ApplicationController
before_filter :authenticate_user!
@ -35,12 +34,10 @@ class PhotosController < ApplicationController
##############
params[:user_file] = file
data = clean_hash(params)
@photo = current_user.post(:photo, data)
respond_to do |format|
@ -103,7 +100,6 @@ class PhotosController < ApplicationController
end
end
private
def clean_hash(params)
if params[:photo]

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class PublicsController < ApplicationController
require File.expand_path('../../../lib/diaspora/parser', __FILE__)
include Diaspora::Parser

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class RequestsController < ApplicationController
before_filter :authenticate_user!
include RequestsHelper
@ -42,8 +41,6 @@ class RequestsController < ApplicationController
return
end
# rel_hash = {:friend => params[:friend_handle]}
Rails.logger.debug("Sending request: #{rel_hash}")

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class SocketsController < ApplicationController
include ApplicationHelper
include SocketsHelper

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class StatusMessagesController < ApplicationController
before_filter :authenticate_user!

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class UsersController < ApplicationController
before_filter :authenticate_user!, :except => [:new, :create]

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module AlbumsHelper
def friends_albums_link
if params[:friends]

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module ApplicationHelper
def current_aspect?(aspect)
!@aspect.is_a?(Symbol) && @aspect.id == aspect.id

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module AspectsHelper
def link_for_aspect( aspect )
link_to aspect.name, aspect

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module DashboardsHelper
def title_for_page
I18n.t('dashboards.helper.home')

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module ErrorMessagesHelper
# Render error messages for the given objects. The :message and :header_message options are allowed.
def error_messages_for(*objects)

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# These helper methods can be called in your template to set variables to be used in the layout
# This module should be included in all views globally,
# to do so you may need to add this line to your ApplicationController

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module PeopleHelper
def search_or_index

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module PhotosHelper
def linked_scaled_photo(photo, album)
link_to (image_tag photo.url(:scaled_full)), photo_path(album.next_photo(photo)), :rel => "prefetch"

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module PublicsHelper
def subscribe(opts = {})
subscriber = Subscriber.first(:url => opts[:callback], :topic => opts[:topic])

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module RequestsHelper
def subscription_mode(profile)
if diaspora?(profile)

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module SocketsHelper
include ApplicationHelper

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
module StatusMessagesHelper
def my_latest_message
unless @latest_status_message.nil?

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class Album < Post
xml_reader :name
@ -17,7 +16,6 @@ class Album < Post
before_destroy :destroy_photos
def self.mine_or_friends(friend_param, current_user)
friend_param ? Album.find_all_by_person_id(current_user.friend_ids) : current_user.person.albums
end

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class Aspect
include MongoMapper::Document

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class Comment
include MongoMapper::Document
include ROXML
@ -19,7 +18,6 @@ class Comment
key :post_id, ObjectId
key :person_id, ObjectId
belongs_to :post, :class_name => "Post"
belongs_to :person, :class_name => "Person"

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
require File.expand_path('../../../lib/hcard', __FILE__)
class Person
@ -79,7 +78,7 @@ class Person
def self.by_webfinger( identifier, opts = {})
#need to check if this is a valid email structure, maybe should do in JS
local_person = Person.first(:diaspora_handle => identifier.gsub('acct:', '').to_s.downcase)
if local_person
Rails.logger.info("Do not need to webfinger, found a local person #{local_person.real_name}")
local_person
@ -101,9 +100,9 @@ class Person
new_person = Person.new
public_key_entry = profile.links.select{|x| x.rel == 'diaspora-public-key'}
return nil unless public_key_entry
pubkey = public_key_entry.first.href
new_person.exported_key = Base64.decode64 pubkey

View file

@ -73,4 +73,3 @@ class Photo < Post
end
end

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class Post
require File.expand_path('../../../lib/encryptable', __FILE__)
require File.expand_path('../../../lib/diaspora/websocket', __FILE__)
@ -33,7 +32,6 @@ class Post
self.create params.to_hash
end
def as_json(opts={})
{
:post => {

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class Profile
include MongoMapper::EmbeddedDocument
require File.expand_path('../../../lib/diaspora/webhooks', __FILE__)

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class Request
require File.expand_path('../../../lib/diaspora/webhooks', __FILE__)
include MongoMapper::Document

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class Retraction
include ROXML
include Diaspora::Webhooks

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class StatusMessage < Post
xml_name :status_message
@ -11,7 +10,6 @@ class StatusMessage < Post
key :message, String
validates_presence_of :message
def to_activity
<<-XML
<entry>

View file

@ -66,12 +66,11 @@ class User
def drop_aspect( aspect )
if aspect.people.size == 0
aspect.destroy
else
else
raise "Aspect not empty"
end
end
def move_friend( opts = {})
return true if opts[:to] == opts[:from]
friend = Person.first(:_id => opts[:friend_id])
@ -107,12 +106,11 @@ class User
intitial_post(class_name, aspect_ids, options)
end
def intitial_post(class_name, aspect_ids, options = {})
def intitial_post(class_name, aspect_ids, options = {})
post = build_post(class_name, options)
post.socket_to_uid(id, :aspect_ids => aspect_ids) if post.respond_to?(:socket_to_uid)
push_to_aspects(post, aspect_ids)
post
post
end
def repost( post, options = {} )
@ -139,9 +137,9 @@ class User
end
aspect_ids.each do |aspect_id|
unless self.aspects.find(aspect_id)
unless self.aspects.find(aspect_id)
raise ArgumentError.new("Cannot post to an aspect you do not own.")
end
end
end
aspect_ids
@ -270,7 +268,6 @@ class User
username.downcase! if username
end
def as_json(opts={})
{
:user => {

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
class ImageUploader < CarrierWave::Uploader::Base
include CarrierWave::MiniMagick

View file

@ -15,4 +15,4 @@
%div.image_cycle
- for photo in post.photos[0..3]
= link_to (image_tag photo.url(:thumb_large)), album_path(post, :aspect => @aspect)

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%h1=t('.add_a_new_album')
= form_for Album.new do |f|

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
.back= link_to "⇧ #{@album.name}", @album
%h1.big_text

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- content_for :head do
:javascript
$(document).ready(function(){

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
:javascript
$(document).ready(function(){
$(".image_thumb img").load( function() {
@ -25,8 +24,6 @@
= @album.name
="#{t('.updated')} #{how_long_ago(@album)}"
.album_id{:id => @album.id, :style => "display:hidden;"}
-unless current_user.owns? @album

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%h1=t('.add_a_new_aspect')
= form_for Aspect.new do |f|
= f.error_messages

View file

@ -2,10 +2,8 @@
-# licensed under the Affero General Public License version 3. 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"

View file

@ -2,8 +2,7 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- content_for :head do
- content_for :head do
= javascript_include_tag 'jquery-ui-1.8.4.custom.min.js'
= javascript_include_tag 'aspect-edit.js'
@ -29,12 +28,10 @@
- content_for :publish do
= link_to(t('.add_a_new_aspect'), "#add_aspect_pane", :id => "add_aspect_button", :class => "new_aspect button", :title => t('.add_a_new_aspect'))
%ul#aspect_list
- for aspect in @aspects
%li.aspect
.aspect_name
%span.edit_name_field
%h1{:contenteditable => true}= aspect.name
@ -44,9 +41,9 @@
%li= link_to t('.add_a_new_friend'), "#add_request_pane_#{aspect.id}", :class => 'add_request_button'
%li= link_to t('.show'), aspect_path(aspect)
%li!= remove_link(aspect)
%ul.dropzone{:id => aspect.id}
-if aspect.people.size < 1
%li.grey Drag to add people

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- content_for :page_title do
= link_to t('.photos'), albums_path(:aspect => @aspect)

View file

@ -2,8 +2,7 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%li.comment{:id => post.id}
%li.comment{:id => post.id}
= person_image_tag(post.person)
%span.from
= link_to post.person.real_name, post.person

View file

@ -2,11 +2,10 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%div.comments
%ul.comment_set{:id => post.id}
- for comment in post.comments
= render 'comments/comment', :post => comment
%li.comment.show
= render 'comments/new_comment', :post => post

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
= form_for Comment.new, :remote => true do |f|
%p
%label{:for => "comment_text_on_#{post.id}"} Comment

View file

@ -1,7 +1,7 @@
%h1
This is a technology preview, do not provide any private information.
%h3
your account may be deleted until we move into a more stable development period.
%h3
your account may be deleted until we move into a more stable development period.
%h3
USE AT YOUR OWN RISK!!
= form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f|

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
= javascript_include_tag 'FABridge', 'swfobject', 'web_socket'
:javascript
WebSocket.__swfLocation = "/javascripts/WebSocketMain.swf";
@ -19,25 +18,23 @@
if (obj['class']=="retractions"){
processRetraction(obj['post_id']);
}else if (obj['class']=="comments"){
processComment(obj['post_id'], obj['html'])
processComment(obj['post_id'], obj['html'])
}else if (obj['class']=='photos' && onPageForClass('albums')){
processPhotoInAlbum(obj['photo_hash'])
}else{
processPost(obj['class'], obj['html'], obj['aspect_ids'])
}
};
};
ws.onclose = function() { debug("socket closed"); };
ws.onopen = function() {
ws.send(location.pathname);
debug("connected...");
};
});
function processRetraction(post_id){
$('#' + post_id ).fadeOut(500, function(){
@ -66,7 +63,7 @@
$(html).fadeIn("fast", function(){
$("#stream label:first").inFieldLabels();
})
);
);
}
}
@ -77,13 +74,13 @@
html = "<div class=\'image_thumb\' id=\'"+photoHash['id']+"\' style=\'padding-right:3px;\'> \
<a href=\"/photos/"+ photoHash['id'] +"\"> \
<img alt=\"New thumbnail\" src=\""+ photoHash['thumb_url'] +"\" /> \
</a> </div>"
</a> </div>"
$("#thumbnails").append( $(html) )
$("#"+ photoHash['id'] + " img").load( function() {
$(this).fadeIn("slow");
});
}
function onPageForClass(className){
return (location.href.indexOf(className) != -1 );
}
@ -100,9 +97,9 @@
}
function onPageForAspect(aspectId){
return (location.href.indexOf(aspectId) != -1 )
return (location.href.indexOf(aspectId) != -1 )
}
function onPageOne() {
var c = document.location.search.charAt(document.location.search.length-1);
return ((c =='') || (c== '1'));

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
!!!
%html
%head
@ -10,24 +9,24 @@
= "#{current_user.real_name} | diaspora" if current_user
%meta{"http-equiv"=>"Content-Type", :content=>"text/html; charset=utf-8"}/
= stylesheet_link_tag "blueprint/screen", :media => 'screen'
= stylesheet_link_tag "application", "ui"
= stylesheet_link_tag "/../javascripts/fancybox/jquery.fancybox-1.3.1"
= stylesheet_link_tag "fileuploader"
= stylesheet_link_tag "/../javascripts/fancybox/jquery.fancybox-1.3.1"
= stylesheet_link_tag "fileuploader"
/= javascript_include_tag "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"
= javascript_include_tag 'jquery-1.4.2.min', 'rails'
= javascript_include_tag 'jquery.infieldlabel', 'jquery.cycle/jquery.cycle.min.js'
= javascript_include_tag 'fancybox/jquery.fancybox-1.3.1.pack'
= javascript_include_tag 'fileuploader'
= javascript_include_tag 'view', 'image_picker', 'stream'
= render 'js/websocket_js'
= csrf_meta_tag
= yield(:head)

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
!!!
%html
%head
@ -10,7 +9,7 @@
DIASPORA | login
%meta{"http-equiv"=>"Content-Type", :content=>"text/html; charset=utf-8"}/
%meta{"http-equiv"=> "X-UA-Compatible", :content =>"chrome=1" }
= stylesheet_link_tag "sessions"
/= javascript_include_tag"http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"
= javascript_include_tag 'jquery142'
@ -18,10 +17,10 @@
:javascript
$(document).ready(function(){
$("#user_username").focus();
$("#user_username").focus();
$("label").inFieldLabels();
});
= csrf_meta_tag
= yield(:head)
@ -44,11 +43,11 @@
</div>
</div>
<![endif]-->
- flash.each do |name, msg|
= content_tag :div, msg, :id => "flash_#{name}"
%div#huge_text
DIASPORA*
= yield
/= link_to "signup", "/signup"

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- content_for :publish do
%h1
Search
@ -21,5 +20,5 @@
%ul#stream
- for person in @people
= render 'people/person', :person => person
= will_paginate @people

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- title=t('.new_person')
= form_for @person do |f|
@ -15,18 +14,17 @@
= f.label :url
%br
= f.text_field :url
=f.fields_for :profile do |p|
%p
= p.label :first_name
%br
= p.text_field :first_name
%p
= p.label :last_name
%br
= p.text_field :last_name
= f.submit
%p= link_to t('.back_to_list'), people_path

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- content_for :page_title do
profile
@ -28,7 +27,7 @@
= link_to t('.remove_friend'), @person, :confirm => t('.are_you_sure'), :method => :delete, :class => "button"
.span-20.last
.span-19.last
- if @posts
%ul#stream

View file

@ -2,16 +2,15 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
:javascript
function createUploader(){
function createUploader(){
var uploader = new qq.FileUploader({
element: document.getElementById('file-upload'),
params: {'album_id' : "#{@album.id}"},
allowedExtensions: ['jpg', 'jpeg', 'png', 'gif'],
action: "#{photos_path}"
});
});
}
window.onload = createUploader;
window.onload = createUploader;
#file-upload

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%li.message{:id => post.id}
= person_image_tag(post.person)
@ -17,9 +16,9 @@
%br
= render "albums/album", :post => post.album, :current_user => current_user
= link_to (image_tag post.url(:thumb_medium)), object_path(post)
.info
= link_to(how_long_ago(post), photo_path(post))
\--
= link_to "#{t('.show_comments')} (#{post.comments.count})", '#', :class => "show_post_comments"
= render "comments/comments", :post => post
= render "comments/comments", :post => post

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%h1.big_text
.back
= link_to "⇧ #{@album.name}", album_path(@album)

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- title t('.new_photo')
= form_for( @photo, :html => {:multipart => true}) do |f|

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
:javascript
$(document).keydown(function(e){
switch(e.keyCode) {
@ -35,7 +34,6 @@
-if current_user.owns? @album
= link_to t('.edit_photo'), edit_photo_path(@photo), :class => "button"
%div{:id => @photo.id}
#show_photo
= linked_scaled_photo @photo, @album
@ -53,4 +51,4 @@
%h4{:class => "show_post_comments"}
= "#{t('.comments')} (#{@photo.comments.count})"
= render "comments/comments", :post => @photo

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
#debug_info
%h5 DEBUG INFO
#debug_more{ :style => "display:none;" }

View file

@ -2,8 +2,7 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%ul
%h3= link_to post.class, object_path(post)
%h3= link_to post.class, object_path(post)
- for field in object_fields(post)
%li= "#{field}: #{post.attributes[field]}"
%li= "#{field}: #{post.attributes[field]}"

View file

@ -1,42 +1,42 @@
<div id="content">
<h1><%=@person.real_name%></h1>
<div id="content_inner">
<div id="i" class="entity_profile vcard author">
<h2>User profile</h2>
<dl class="entity_nickname">
<dt>Nickname</dt>
<dd>
<a href="<%=@person.url%>" rel="me" class="nickname url uid"><%= @person.real_name%></a>
</dd>
</dl>
<dl class="entity_given_name">
<dt>Full name</dt>
<dd>
<span class="given_name" ><%= @person.profile.first_name %></span>
</dd>
<div id="content">
<h1><%=@person.real_name%></h1>
<div id="content_inner">
<div id="i" class="entity_profile vcard author">
<h2>User profile</h2>
<dl class="entity_nickname">
<dt>Nickname</dt>
<dd>
<a href="<%=@person.url%>" rel="me" class="nickname url uid"><%= @person.real_name%></a>
</dd>
</dl>
<dl class="entity_given_name">
<dt>Full name</dt>
<dd>
<span class="given_name" ><%= @person.profile.first_name %></span>
</dd>
</dl>
<dl class="entity_family_name">
<dt>Full name</dt>
<dd>
<span class="family_name" ><%= @person.profile.last_name %></span>
</dd>
<dl class="entity_family_name">
<dt>Full name</dt>
<dd>
<span class="family_name" ><%= @person.profile.last_name %></span>
</dd>
</dl>
<dl class="entity_fn">
<dt>Full name</dt>
<dd>
<span class="fn" ><%= @person.real_name %></span>
</dd>
</dl>
<dl class="entity_url">
<dt>URL</dt>
<dd>
<a href="<%= @person.url%>" rel="me" id="pod_location" class="url"><%= @person.url%></a>
</dd>
</dl>
<dl class="entity_note">
<dt>Note</dt>
<dd class="note">Diaspora is awesome! vi is better than emacs!</dd>
</dl>
</div>
</div>
</div>
<dl class="entity_fn">
<dt>Full name</dt>
<dd>
<span class="fn" ><%= @person.real_name %></span>
</dd>
</dl>
<dl class="entity_url">
<dt>URL</dt>
<dd>
<a href="<%= @person.url%>" rel="me" id="pod_location" class="url"><%= @person.url%></a>
</dd>
</dl>
<dl class="entity_note">
<dt>Note</dt>
<dd class="note">Diaspora is awesome! vi is better than emacs!</dd>
</dl>
</div>
</div>
</div>

View file

@ -1,8 +1,8 @@
<?xml version='1.0' encoding='UTF-8'?>
<XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'
<XRD xmlns='http://docs.oasis-open.org/ns/xri/xrd-1.0'
xmlns:hm='http://host-meta.net/xrd/1.0'>
<hm:Host><%= terse_url(root_url) %></hm:Host>
<Link rel='lrdd'
<Link rel='lrdd'
template='<%= root_url %>webfinger?q={uri}'>
<Title>Resource Descriptor</Title>
</Link>

View file

@ -1,6 +1,5 @@
= image_tag "http://needcoffee.cachefly.net/needcoffee/uploads/2009/02/predator-arnold-schwarzenegger.jpg"
= form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f|
%p
= f.label :username

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%h1
=t('.add_a_new_friend_to')
%i= aspect.name
@ -10,7 +9,7 @@
= form_for Request.new do |f|
= f.error_messages
=t('.enter_a_diaspora_username')
=t('.enter_a_diaspora_username')
%br
%i= t '.your_diaspora_username_is', :diaspora_handle => current_user.diaspora_handle

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
#friend_pictures
= owner_image_link
- for friend in @friends
@ -10,11 +9,11 @@
-unless @aspect == :all
= 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
= render "requests/new_request", :aspect => @aspect
-else
.clear
= link_to t('.add_friends'), aspects_manage_path
= link_to t('.add_friends'), aspects_manage_path

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
#aspect_nav
%ul
- for aspect in @aspects

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%li.message{:id => post.id, :class => ("mine" if current_user.owns?(post))}
= person_image_link(post.person)
= yield post_yield_tag(post)

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
#publisher
= owner_image_tag
@ -18,5 +17,5 @@
%li
= check_box_tag("aspect_ids[]", aspect.id, @aspect == :all || current_aspect?(aspect) )
= aspect.name
= f.submit t('.share')

View file

@ -2,8 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
:javascript
$(".reshare_button").toggle(function(e){
e.preventDefault();
@ -19,7 +17,7 @@
%ul.reshare_box
- for aspect in current_user.aspects_with_post( post.id )
%li.currently_sharing= aspect.name
- for aspect in current_user.aspects

View file

@ -2,5 +2,4 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
= @log.to_s

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
= form_for StatusMessage.new, :remote => true do |f|
= f.error_messages
%p

View file

@ -2,24 +2,23 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%li.message{:id => post.id, :class => ("mine" if current_user.owns?(post))}
= person_image_link(post.person)
.content
%span.from
= link_to post.person.real_name, post.person
= link_to post.person.real_name, post.person
= post.message
.info
%span.time= link_to(how_long_ago(post), object_path(post))
\--
= link_to "#{t('.show_comments')} (#{post.comments.count})", '#', :class => "show_post_comments"
= render "comments/comments", :post => post
= render "comments/comments", :post => post
- if current_user.owns?(post)
.destroy_link
= link_to t('.delete'), status_message_path(post), :confirm => t('.are_you_sure'), :method => :delete, :remote => true, :class => "delete"
= render "shared/reshare", :post => post, :current_user => current_user
= render "shared/reshare", :post => post, :current_user => current_user

View file

@ -2,11 +2,10 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
%h1.big_text status messages
= render "status_messages/new_status_message", :status_message => @status_message
%ul#stream
- for status_message in @status_messages
= render "status_message", :post => status_message
#pagination

View file

@ -2,7 +2,6 @@
-# licensed under the Affero General Public License version 3. See
-# the COPYRIGHT file.
- content_for :publish do
%h1="#{t('.editing_profile')}"
@ -49,7 +48,7 @@
= p.label :first_name
= p.text_field :first_name, :value => @profile.first_name
%p
= p.label :last_name
= p.label :last_name
= p.text_field :last_name, :value => @profile.last_name
#submit_block

View file

@ -2,6 +2,5 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
Autotest.add_discovery { "rails" }
Autotest.add_discovery { "rspec2" }

View file

@ -2,8 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# This file is used by Rack-based servers to start the application.
require ::File.expand_path('../config/environment', __FILE__)

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
default:
pod_url: "http://example.org/"
debug: false
@ -13,7 +12,7 @@ default:
pubsub_server: 'https://pubsubhubbub.appspot.com/'
mongo_host: 'localhost'
mongo_port: 27017
development:
test:

View file

@ -2,8 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
require File.expand_path('../boot', __FILE__)
require 'action_controller/railtie'

View file

@ -2,8 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
require 'rubygems'
# Set up gems listed in the Gemfile.

8
config/cucumber.yml Normal file
View file

@ -0,0 +1,8 @@
<%
rerun = File.file?('rerun.txt') ? IO.read('rerun.txt') : ""
rerun_opts = rerun.to_s.strip.empty? ? "--format #{ENV['CUCUMBER_FORMAT'] || 'progress'} features" : "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} #{rerun}"
std_opts = "--format #{ENV['CUCUMBER_FORMAT'] || 'progress'} --strict --tags ~@wip"
%>
default: <%= std_opts %> features
wip: --tags @wip:3 --wip features
rerun: <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags ~@wip

View file

@ -2,8 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
config = YAML.load_file(File.dirname(__FILE__) + '/deploy_config.yml')
all = config['cross_server']
@ -108,7 +106,6 @@ namespace :deploy do
run 'gem install bundler'
end
task :migrate do
end
end
@ -152,7 +149,6 @@ namespace :db do
tom_seed
end
end
after "deploy:symlink", "deploy:symlink_images", "deploy:symlink_bundle", 'deploy:symlink_config'

View file

@ -2,8 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
cross_server:
deploy_to: '/usr/local/app/diaspora'
user: 'root'

View file

@ -2,8 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# Load the rails application
require File.expand_path('../application', __FILE__)
Haml::Template.options[:format] = :html5
@ -11,4 +9,3 @@ Haml::Template.options[:escape_html] = true
# Initialize the rails application
Diaspora::Application.initialize!

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
require File.expand_path('../../../lib/mongo_mapper/clear_dev_memory', __FILE__)
Diaspora::Application.configure do
# Settings specified here will take precedence over those in config/environment.rb

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
Diaspora::Application.configure do
# Settings specified here will take precedence over those in config/environment.rb
@ -16,7 +15,7 @@ Diaspora::Application.configure do
# Specifies the header that your server uses for sending files
#config.action_dispatch.x_sendfile_header = "X-Sendfile"
config.active_support.deprecation = :notify
# For nginx:

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
Diaspora::Application.configure do
# Settings specified here will take precedence over those in config/environment.rb
@ -32,13 +31,11 @@ Diaspora::Application.configure do
config.active_support.deprecation = :stderr
config.threadsafe!
# Use SQL instead of Active Record's schema dumper when creating the test database.
# This is necessary if your schema can't be completely dumped by the schema dumper,
# like if you have constraints or database-specific column types
# config.active_record.schema_format = :sql
begin
require 'database_cleaner'
DatabaseCleaner.strategy = :truncation

View file

@ -20,7 +20,7 @@ else
APP_CONFIG = all_envs['default'].symbolize_keys
end
APP_CONFIG[:terse_pod_url] = APP_CONFIG[:pod_url].gsub(/(https?:|www\.)\/\//, '')
APP_CONFIG[:terse_pod_url] = APP_CONFIG[:pod_url].gsub(/(https?:|www\.)\/\//, '')
APP_CONFIG[:terse_pod_url].chop! if APP_CONFIG[:terse_pod_url][-1, 1] == '/'
puts "WARNING: Please modify your app_config.yml to have a proper pod_url!" if APP_CONFIG[:terse_pod_url] == "example.org" && Rails.env != :test

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# Be sure to restart your server when you modify this file.
# You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
CarrierWave.configure do |config|
config.storage = :file
end

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# Use this hook to configure devise mailer, warden hooks and so forth. The first
# four configuration values can also be set straight in your models.
Devise.setup do |config|

View file

@ -2,5 +2,4 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
GIT_INFO = `git show --name-only`

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# Be sure to restart your server when you modify this file.
# Add new inflection rules using the following format

View file

@ -2,7 +2,6 @@
# licensed under the Affero General Public License version 3. See
# the COPYRIGHT file.
# The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
I18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')]
I18n.default_locale = :en
I18n.default_locale = :en

Some files were not shown because too many files have changed in this diff Show more