diff --git a/app/controllers/api/v0/tags_controller.rb b/app/controllers/api/v0/tags_controller.rb index 4bb084286..1ce401b1c 100644 --- a/app/controllers/api/v0/tags_controller.rb +++ b/app/controllers/api/v0/tags_controller.rb @@ -1,5 +1,9 @@ +# Copyright (c) 2010-2011, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + class Api::V0::TagsController < ApplicationController def show - head :ok + render :json => Api::V0::Serializers::Tag.new(params[:name]) end end diff --git a/app/controllers/api/v0/users_controller.rb b/app/controllers/api/v0/users_controller.rb index 882a46162..5328a63c3 100644 --- a/app/controllers/api/v0/users_controller.rb +++ b/app/controllers/api/v0/users_controller.rb @@ -1,3 +1,7 @@ +# Copyright (c) 2010-2011, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + class Api::V0::UsersController < ApplicationController def show if user = User.find_by_username(params[:username]) diff --git a/app/models/api/v0/serializers/tag.rb b/app/models/api/v0/serializers/tag.rb new file mode 100644 index 000000000..73ef055d8 --- /dev/null +++ b/app/models/api/v0/serializers/tag.rb @@ -0,0 +1,19 @@ +# Copyright (c) 2010-2011, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + +class Api::V0::Serializers::Tag + + def initialize(tag) + @stream = Stream::Tag.new(nil, tag) + end + + def as_json(opts={}) + { + "name" => @stream.tag_name, + "person_count" => @stream.people_count, + "followed_count" => @stream.tag_follow_count, + "posts" => [] + } + end +end diff --git a/app/models/api/v0/serializers/user.rb b/app/models/api/v0/serializers/user.rb index 7bbaa259d..2dc94fc07 100644 --- a/app/models/api/v0/serializers/user.rb +++ b/app/models/api/v0/serializers/user.rb @@ -1,8 +1,9 @@ -class Api::V0::Serializers::User - attr_accessor :user +# Copyright (c) 2010-2011, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. +class Api::V0::Serializers::User def initialize(user) - @user = user @person = user.person @profile = @person.profile end diff --git a/lib/stream/tag.rb b/lib/stream/tag.rb index 312a3b58f..97d7a7936 100644 --- a/lib/stream/tag.rb +++ b/lib/stream/tag.rb @@ -1,3 +1,7 @@ +# Copyright (c) 2010-2011, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + class Stream::Tag < Stream::Base attr_accessor :tag_name, :people_page diff --git a/spec/lib/stream/tag_spec.rb b/spec/lib/stream/tag_spec.rb index edc9d4e7e..3c12d55f0 100644 --- a/spec/lib/stream/tag_spec.rb +++ b/spec/lib/stream/tag_spec.rb @@ -1,3 +1,7 @@ +# Copyright (c) 2010-2011, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + require 'spec_helper' require File.join(Rails.root, 'spec', 'shared_behaviors', 'stream')