fotonauts-facebooker 1.0.67

Sign up to get free protection for your applications and to get access to all the features.
Files changed (156) hide show
  1. data/.autotest +15 -0
  2. data/CHANGELOG.rdoc +24 -0
  3. data/COPYING.rdoc +19 -0
  4. data/Manifest.txt +152 -0
  5. data/README.rdoc +119 -0
  6. data/Rakefile +94 -0
  7. data/TODO.rdoc +4 -0
  8. data/examples/desktop_login.rb +14 -0
  9. data/facebooker.gemspec +45 -0
  10. data/generators/facebook/facebook_generator.rb +14 -0
  11. data/generators/facebook/templates/config/facebooker.yml +49 -0
  12. data/generators/facebook/templates/public/javascripts/facebooker.js +332 -0
  13. data/generators/facebook_controller/USAGE +33 -0
  14. data/generators/facebook_controller/facebook_controller_generator.rb +40 -0
  15. data/generators/facebook_controller/templates/controller.rb +7 -0
  16. data/generators/facebook_controller/templates/functional_test.rb +11 -0
  17. data/generators/facebook_controller/templates/helper.rb +2 -0
  18. data/generators/facebook_controller/templates/view.fbml.erb +2 -0
  19. data/generators/facebook_controller/templates/view.html.erb +2 -0
  20. data/generators/facebook_publisher/facebook_publisher_generator.rb +14 -0
  21. data/generators/facebook_publisher/templates/create_facebook_templates.rb +15 -0
  22. data/generators/facebook_publisher/templates/publisher.rb +3 -0
  23. data/generators/facebook_scaffold/USAGE +27 -0
  24. data/generators/facebook_scaffold/facebook_scaffold_generator.rb +118 -0
  25. data/generators/facebook_scaffold/templates/controller.rb +93 -0
  26. data/generators/facebook_scaffold/templates/facebook_style.css +2579 -0
  27. data/generators/facebook_scaffold/templates/functional_test.rb +89 -0
  28. data/generators/facebook_scaffold/templates/helper.rb +2 -0
  29. data/generators/facebook_scaffold/templates/layout.fbml.erb +6 -0
  30. data/generators/facebook_scaffold/templates/layout.html.erb +17 -0
  31. data/generators/facebook_scaffold/templates/style.css +74 -0
  32. data/generators/facebook_scaffold/templates/view_edit.fbml.erb +13 -0
  33. data/generators/facebook_scaffold/templates/view_edit.html.erb +18 -0
  34. data/generators/facebook_scaffold/templates/view_index.fbml.erb +24 -0
  35. data/generators/facebook_scaffold/templates/view_index.html.erb +24 -0
  36. data/generators/facebook_scaffold/templates/view_new.fbml.erb +12 -0
  37. data/generators/facebook_scaffold/templates/view_new.html.erb +17 -0
  38. data/generators/facebook_scaffold/templates/view_show.fbml.erb +10 -0
  39. data/generators/facebook_scaffold/templates/view_show.html.erb +10 -0
  40. data/generators/publisher/publisher_generator.rb +14 -0
  41. data/generators/xd_receiver/templates/xd_receiver.html +10 -0
  42. data/generators/xd_receiver/templates/xd_receiver_ssl.html +10 -0
  43. data/generators/xd_receiver/xd_receiver_generator.rb +10 -0
  44. data/init.rb +26 -0
  45. data/install.rb +12 -0
  46. data/lib/facebooker.rb +275 -0
  47. data/lib/facebooker/adapters/adapter_base.rb +91 -0
  48. data/lib/facebooker/adapters/bebo_adapter.rb +77 -0
  49. data/lib/facebooker/adapters/facebook_adapter.rb +60 -0
  50. data/lib/facebooker/admin.rb +42 -0
  51. data/lib/facebooker/application.rb +37 -0
  52. data/lib/facebooker/attachment.rb +51 -0
  53. data/lib/facebooker/batch_request.rb +45 -0
  54. data/lib/facebooker/data.rb +57 -0
  55. data/lib/facebooker/feed.rb +78 -0
  56. data/lib/facebooker/logging.rb +44 -0
  57. data/lib/facebooker/mobile.rb +20 -0
  58. data/lib/facebooker/mock/service.rb +50 -0
  59. data/lib/facebooker/mock/session.rb +18 -0
  60. data/lib/facebooker/model.rb +139 -0
  61. data/lib/facebooker/models/affiliation.rb +10 -0
  62. data/lib/facebooker/models/album.rb +11 -0
  63. data/lib/facebooker/models/applicationproperties.rb +39 -0
  64. data/lib/facebooker/models/applicationrestrictions.rb +10 -0
  65. data/lib/facebooker/models/comment.rb +9 -0
  66. data/lib/facebooker/models/cookie.rb +10 -0
  67. data/lib/facebooker/models/education_info.rb +11 -0
  68. data/lib/facebooker/models/event.rb +28 -0
  69. data/lib/facebooker/models/family_relative_info.rb +7 -0
  70. data/lib/facebooker/models/friend_list.rb +16 -0
  71. data/lib/facebooker/models/group.rb +36 -0
  72. data/lib/facebooker/models/info_item.rb +10 -0
  73. data/lib/facebooker/models/info_section.rb +10 -0
  74. data/lib/facebooker/models/location.rb +8 -0
  75. data/lib/facebooker/models/message_thread.rb +89 -0
  76. data/lib/facebooker/models/notifications.rb +17 -0
  77. data/lib/facebooker/models/page.rb +46 -0
  78. data/lib/facebooker/models/photo.rb +19 -0
  79. data/lib/facebooker/models/tag.rb +12 -0
  80. data/lib/facebooker/models/user.rb +751 -0
  81. data/lib/facebooker/models/video.rb +9 -0
  82. data/lib/facebooker/models/work_info.rb +10 -0
  83. data/lib/facebooker/parser.rb +970 -0
  84. data/lib/facebooker/rails/backwards_compatible_param_checks.rb +31 -0
  85. data/lib/facebooker/rails/controller.rb +353 -0
  86. data/lib/facebooker/rails/cucumber.rb +28 -0
  87. data/lib/facebooker/rails/cucumber/world.rb +40 -0
  88. data/lib/facebooker/rails/extensions/action_controller.rb +48 -0
  89. data/lib/facebooker/rails/extensions/rack_setup.rb +16 -0
  90. data/lib/facebooker/rails/extensions/routing.rb +15 -0
  91. data/lib/facebooker/rails/facebook_form_builder.rb +141 -0
  92. data/lib/facebooker/rails/facebook_pretty_errors.rb +22 -0
  93. data/lib/facebooker/rails/facebook_request_fix.rb +28 -0
  94. data/lib/facebooker/rails/facebook_request_fix_2-3.rb +31 -0
  95. data/lib/facebooker/rails/facebook_session_handling.rb +68 -0
  96. data/lib/facebooker/rails/facebook_url_helper.rb +192 -0
  97. data/lib/facebooker/rails/facebook_url_rewriting.rb +60 -0
  98. data/lib/facebooker/rails/helpers.rb +835 -0
  99. data/lib/facebooker/rails/helpers/fb_connect.rb +165 -0
  100. data/lib/facebooker/rails/helpers/stream_publish.rb +22 -0
  101. data/lib/facebooker/rails/integration_session.rb +38 -0
  102. data/lib/facebooker/rails/profile_publisher_extensions.rb +42 -0
  103. data/lib/facebooker/rails/publisher.rb +608 -0
  104. data/lib/facebooker/rails/routing.rb +49 -0
  105. data/lib/facebooker/rails/test_helpers.rb +68 -0
  106. data/lib/facebooker/rails/utilities.rb +22 -0
  107. data/lib/facebooker/server_cache.rb +24 -0
  108. data/lib/facebooker/service.rb +103 -0
  109. data/lib/facebooker/service/base_service.rb +19 -0
  110. data/lib/facebooker/service/curl_service.rb +44 -0
  111. data/lib/facebooker/service/net_http_service.rb +12 -0
  112. data/lib/facebooker/service/typhoeus_multi_service.rb +27 -0
  113. data/lib/facebooker/service/typhoeus_service.rb +17 -0
  114. data/lib/facebooker/session.rb +786 -0
  115. data/lib/facebooker/stream_post.rb +19 -0
  116. data/lib/facebooker/version.rb +9 -0
  117. data/lib/net/http_multipart_post.rb +123 -0
  118. data/lib/rack/facebook.rb +89 -0
  119. data/lib/rack/facebook_session.rb +21 -0
  120. data/lib/tasks/facebooker.rake +19 -0
  121. data/lib/tasks/facebooker.rb +2 -0
  122. data/lib/tasks/tunnel.rake +46 -0
  123. data/rails/init.rb +1 -0
  124. data/setup.rb +1585 -0
  125. data/templates/layout.erb +24 -0
  126. data/test/facebooker/adapters_test.rb +191 -0
  127. data/test/facebooker/admin_test.rb +102 -0
  128. data/test/facebooker/application_test.rb +110 -0
  129. data/test/facebooker/attachment_test.rb +72 -0
  130. data/test/facebooker/batch_request_test.rb +83 -0
  131. data/test/facebooker/data_test.rb +86 -0
  132. data/test/facebooker/logging_test.rb +43 -0
  133. data/test/facebooker/mobile_test.rb +45 -0
  134. data/test/facebooker/model_test.rb +133 -0
  135. data/test/facebooker/models/event_test.rb +15 -0
  136. data/test/facebooker/models/page_test.rb +56 -0
  137. data/test/facebooker/models/photo_test.rb +16 -0
  138. data/test/facebooker/models/user_test.rb +1074 -0
  139. data/test/facebooker/rails/facebook_request_fix_2-3_test.rb +25 -0
  140. data/test/facebooker/rails/facebook_url_rewriting_test.rb +76 -0
  141. data/test/facebooker/rails/integration_session_test.rb +13 -0
  142. data/test/facebooker/rails/publisher_test.rb +538 -0
  143. data/test/facebooker/rails_integration_test.rb +1543 -0
  144. data/test/facebooker/server_cache_test.rb +44 -0
  145. data/test/facebooker/service_test.rb +58 -0
  146. data/test/facebooker/session_test.rb +883 -0
  147. data/test/facebooker_test.rb +1263 -0
  148. data/test/fixtures/multipart_post_body_with_only_parameters.txt +33 -0
  149. data/test/fixtures/multipart_post_body_with_single_file.txt +38 -0
  150. data/test/fixtures/multipart_post_body_with_single_file_that_has_nil_key.txt +38 -0
  151. data/test/net/http_multipart_post_test.rb +52 -0
  152. data/test/rack/facebook_session_test.rb +34 -0
  153. data/test/rack/facebook_test.rb +73 -0
  154. data/test/rails_test_helper.rb +36 -0
  155. data/test/test_helper.rb +74 -0
  156. metadata +303 -0
@@ -0,0 +1,40 @@
1
+ class FacebookControllerGenerator < Rails::Generator::NamedBase
2
+ def manifest
3
+ record do |m|
4
+ # Check for class naming collisions.
5
+ m.class_collisions class_path, "#{class_name}Controller", "#{class_name}ControllerTest", "#{class_name}Helper"
6
+
7
+ # Controller, helper, views, and test directories.
8
+ m.directory File.join('app/controllers', class_path)
9
+ m.directory File.join('app/helpers', class_path)
10
+ m.directory File.join('app/views', class_path, file_name)
11
+ m.directory File.join('test/functional', class_path)
12
+
13
+ # Controller class, functional test, and helper class.
14
+ m.template 'controller.rb',
15
+ File.join('app/controllers',
16
+ class_path,
17
+ "#{file_name}_controller.rb")
18
+
19
+ m.template 'functional_test.rb',
20
+ File.join('test/functional',
21
+ class_path,
22
+ "#{file_name}_controller_test.rb")
23
+
24
+ m.template 'helper.rb',
25
+ File.join('app/helpers',
26
+ class_path,
27
+ "#{file_name}_helper.rb")
28
+
29
+ # View template for each action.
30
+ actions.each do |action|
31
+ html_path = File.join('app/views', class_path, file_name, "#{action}.html.erb")
32
+ m.template 'view.html.erb', html_path,
33
+ :assigns => { :action => action, :path => html_path }
34
+ fbml_path = File.join('app/views', class_path, file_name, "#{action}.fbml.erb")
35
+ m.template 'view.fbml.erb', fbml_path,
36
+ :assigns => { :action => action, :path => fbml_path }
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,7 @@
1
+ class <%= class_name %>Controller < ApplicationController
2
+ <% for action in actions -%>
3
+ def <%= action %>
4
+ end
5
+
6
+ <% end -%>
7
+ end
@@ -0,0 +1,11 @@
1
+ require 'test_helper'
2
+ require File.dirname(__FILE__)+'/../../vendor/plugins/facebooker/lib/facebooker/rails/test_helpers.rb'
3
+
4
+ class <%= class_name %>ControllerTest < ActionController::TestCase
5
+ include Facebooker::Rails::TestHelpers
6
+
7
+ # Replace this with your real tests.
8
+ def test_truth
9
+ assert true
10
+ end
11
+ end
@@ -0,0 +1,2 @@
1
+ module <%= class_name %>Helper
2
+ end
@@ -0,0 +1,2 @@
1
+ <h1><%= class_name %>#<%= action %></h1>
2
+ <p>Find me in <%= path %></p>
@@ -0,0 +1,2 @@
1
+ <h1><%= class_name %>#<%= action %></h1>
2
+ <p>Find me in <%= path %></p>
@@ -0,0 +1,14 @@
1
+ class FacebookPublisherGenerator < Rails::Generator::NamedBase
2
+ def manifest
3
+ record do |m|
4
+ m.directory "app/models"
5
+ m.template "publisher.rb", "app/models/#{file_name}_publisher.rb"
6
+ migration_file_name="create_facebook_templates"
7
+ # unless m.migration_exists?(migration_file_name)
8
+ # THis should work, but it doesn't. So we re-implement it instead
9
+ if Dir.glob(File.join(RAILS_ROOT,"db","migrate","[0-9]*_*.rb")).grep(/[0-9]+_create_facebook_templates.rb$/).blank?
10
+ m.migration_template "create_facebook_templates.rb", "db/migrate", :migration_file_name=>migration_file_name
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ class CreateFacebookTemplates < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :facebook_templates, :force => true do |t|
4
+ t.string :template_name, :null => false
5
+ t.string :content_hash, :null => false
6
+ t.string :bundle_id, :null => true
7
+ end
8
+ add_index :facebook_templates, :template_name, :unique => true
9
+ end
10
+
11
+ def self.down
12
+ remove_index :facebook_templates, :template_name
13
+ drop_table :facebook_templates
14
+ end
15
+ end
@@ -0,0 +1,3 @@
1
+ class <%= class_name %>Publisher < Facebooker::Rails::Publisher
2
+
3
+ end
@@ -0,0 +1,27 @@
1
+ Description:
2
+ Scaffolds an entire resource, from model and migration to controller and
3
+ views, along with a full test suite. The resource is ready to use as a
4
+ starting point for your restful, resource-oriented application.
5
+
6
+ Pass the name of the model, either CamelCased or under_scored, as the first
7
+ argument, and an optional list of attribute pairs.
8
+
9
+ Attribute pairs are column_name:sql_type arguments specifying the
10
+ model's attributes. Timestamps are added by default, so you don't have to
11
+ specify them by hand as 'created_at:datetime updated_at:datetime'.
12
+
13
+ You don't have to think up every attribute up front, but it helps to
14
+ sketch out a few so you can start working with the resource immediately.
15
+
16
+ For example, `scaffold post title:string body:text published:boolean`
17
+ gives you a model with those three attributes, a controller that handles
18
+ the create/show/update/destroy, forms to create and edit your posts, and
19
+ an index that lists them all, as well as a map.resources :posts
20
+ declaration in config/routes.rb.
21
+
22
+ Also, it creates Facebook view templates and functional tests.
23
+
24
+ Examples:
25
+ `./script/generate scaffold post` # no attributes, view will be anemic
26
+ `./script/generate scaffold post title:string body:text published:boolean`
27
+ `./script/generate scaffold purchase order_id:integer amount:decimal`
@@ -0,0 +1,118 @@
1
+ class Rails::Generator::Commands::Create
2
+ def register_fbml_mime_type_alias
3
+ path = destination_path('config/initializers/mime_types.rb')
4
+ content = "Mime::Type.register_alias 'text/html', :fbml"
5
+ unless File.read(path).match(Regexp.escape(content))
6
+ logger.register "text/html, :fbml"
7
+ File.open(path, 'a') { |file| file.write(content) }
8
+ end
9
+ end
10
+ end
11
+ class Rails::Generator::Commands::Destroy
12
+ def register_fbml_mime_type_alias
13
+ # do nothing
14
+ end
15
+ end
16
+
17
+ class FacebookScaffoldGenerator < Rails::Generator::NamedBase
18
+ default_options :skip_timestamps => false, :skip_migration => false
19
+
20
+ attr_reader :controller_name,
21
+ :controller_class_path,
22
+ :controller_file_path,
23
+ :controller_class_nesting,
24
+ :controller_class_nesting_depth,
25
+ :controller_class_name,
26
+ :controller_underscore_name,
27
+ :controller_singular_name,
28
+ :controller_plural_name
29
+ alias_method :controller_file_name, :controller_underscore_name
30
+ alias_method :controller_table_name, :controller_plural_name
31
+
32
+ def initialize(runtime_args, runtime_options = {})
33
+ super
34
+
35
+ @controller_name = @name.pluralize
36
+
37
+ base_name, @controller_class_path, @controller_file_path, @controller_class_nesting, @controller_class_nesting_depth = extract_modules(@controller_name)
38
+ @controller_class_name_without_nesting, @controller_underscore_name, @controller_plural_name = inflect_names(base_name)
39
+ @controller_singular_name=base_name.singularize
40
+ if @controller_class_nesting.empty?
41
+ @controller_class_name = @controller_class_name_without_nesting
42
+ else
43
+ @controller_class_name = "#{@controller_class_nesting}::#{@controller_class_name_without_nesting}"
44
+ end
45
+ end
46
+
47
+ def manifest
48
+ record do |m|
49
+ # Check for class naming collisions.
50
+ m.class_collisions(controller_class_path, "#{controller_class_name}Controller", "#{controller_class_name}Helper")
51
+ m.class_collisions(class_path, "#{class_name}")
52
+
53
+ # Controller, helper, views, test and stylesheets directories.
54
+ m.directory(File.join('app/models', class_path))
55
+ m.directory(File.join('app/controllers', controller_class_path))
56
+ m.directory(File.join('app/helpers', controller_class_path))
57
+ m.directory(File.join('app/views', controller_class_path, controller_file_name))
58
+ m.directory(File.join('app/views/layouts', controller_class_path))
59
+ m.directory(File.join('test/functional', controller_class_path))
60
+ m.directory(File.join('test/unit', class_path))
61
+ m.directory(File.join('public/stylesheets', class_path))
62
+
63
+ for action in scaffold_views
64
+ m.template(
65
+ "view_#{action}.html.erb",
66
+ File.join('app/views', controller_class_path, controller_file_name, "#{action}.html.erb")
67
+ )
68
+ m.template(
69
+ "view_#{action}.fbml.erb",
70
+ File.join('app/views', controller_class_path, controller_file_name, "#{action}.fbml.erb")
71
+ )
72
+ end
73
+
74
+ # Layout and stylesheet.
75
+ m.template('layout.html.erb', File.join('app/views/layouts', controller_class_path, "#{controller_file_name}.html.erb"))
76
+ m.template('layout.fbml.erb', File.join('app/views/layouts', controller_class_path, "#{controller_file_name}.fbml.erb"))
77
+ m.template('style.css', 'public/stylesheets/scaffold.css')
78
+ m.template('facebook_style.css', 'public/stylesheets/facebook_scaffold.css')
79
+
80
+ m.template(
81
+ 'controller.rb', File.join('app/controllers', controller_class_path, "#{controller_file_name}_controller.rb")
82
+ )
83
+
84
+ m.template('functional_test.rb', File.join('test/functional', controller_class_path, "#{controller_file_name}_controller_test.rb"))
85
+ m.template('helper.rb', File.join('app/helpers', controller_class_path, "#{controller_file_name}_helper.rb"))
86
+
87
+ m.route_resources controller_file_name
88
+
89
+ m.dependency 'model', [name] + @args, :collision => :skip
90
+
91
+ m.register_fbml_mime_type_alias
92
+ end
93
+ end
94
+
95
+ protected
96
+ # Override with your own usage banner.
97
+ def banner
98
+ "Usage: #{$0} scaffold ModelName [field:type, field:type]"
99
+ end
100
+
101
+ def add_options!(opt)
102
+ opt.separator ''
103
+ opt.separator 'Options:'
104
+ opt.on("--skip-timestamps",
105
+ "Don't add timestamps to the migration file for this model") { |v| options[:skip_timestamps] = v }
106
+ opt.on("--skip-migration",
107
+ "Don't generate a migration file for this model") { |v| options[:skip_migration] = v }
108
+ end
109
+
110
+ def scaffold_views
111
+ %w[ index show new edit ]
112
+ end
113
+
114
+ def model_name
115
+ class_name.demodulize
116
+ end
117
+
118
+ end
@@ -0,0 +1,93 @@
1
+ class <%= controller_class_name %>Controller < ApplicationController
2
+ # GET /<%= table_name %>
3
+ # GET /<%= table_name %>.xml
4
+ def index
5
+ @<%= table_name %> = <%= class_name %>.find(:all)
6
+
7
+ respond_to do |format|
8
+ format.html # index.html.erb
9
+ format.fbml # index.fbml.erb
10
+ format.xml { render :xml => @<%= table_name %> }
11
+ end
12
+ end
13
+
14
+ # GET /<%= table_name %>/1
15
+ # GET /<%= table_name %>/1.xml
16
+ def show
17
+ @<%= file_name %> = <%= class_name %>.find(params[:id])
18
+
19
+ respond_to do |format|
20
+ format.html # show.html.erb
21
+ format.fbml # show.fbml.erb
22
+ format.xml { render :xml => @<%= file_name %> }
23
+ end
24
+ end
25
+
26
+ # GET /<%= table_name %>/new
27
+ # GET /<%= table_name %>/new.xml
28
+ def new
29
+ @<%= file_name %> = <%= class_name %>.new
30
+
31
+ respond_to do |format|
32
+ format.html # new.html.erb
33
+ format.fbml # new.fbml.erb
34
+ format.xml { render :xml => @<%= file_name %> }
35
+ end
36
+ end
37
+
38
+ # GET /<%= table_name %>/1/edit
39
+ def edit
40
+ @<%= file_name %> = <%= class_name %>.find(params[:id])
41
+ end
42
+
43
+ # POST /<%= table_name %>
44
+ # POST /<%= table_name %>.xml
45
+ def create
46
+ @<%= file_name %> = <%= class_name %>.new(params[:<%= file_name %>])
47
+
48
+ respond_to do |format|
49
+ if @<%= file_name %>.save
50
+ flash[:notice] = '<%= class_name %> was successfully created.'
51
+ format.html { redirect_to(@<%= file_name %>) }
52
+ format.fbml { redirect_to(@<%= file_name %>) }
53
+ format.xml { render :xml => @<%= file_name %>, :status => :created, :location => @<%= file_name %> }
54
+ else
55
+ format.html { render :action => "new" }
56
+ format.fbml { render :action => "new" }
57
+ format.xml { render :xml => @<%= file_name %>.errors, :status => :unprocessable_entity }
58
+ end
59
+ end
60
+ end
61
+
62
+ # PUT /<%= table_name %>/1
63
+ # PUT /<%= table_name %>/1.xml
64
+ def update
65
+ @<%= file_name %> = <%= class_name %>.find(params[:id])
66
+
67
+ respond_to do |format|
68
+ if @<%= file_name %>.update_attributes(params[:<%= file_name %>])
69
+ flash[:notice] = '<%= class_name %> was successfully updated.'
70
+ format.html { redirect_to(@<%= file_name %>) }
71
+ format.fbml { redirect_to(@<%= file_name %>) }
72
+ format.xml { head :ok }
73
+ else
74
+ format.html { render :action => "edit" }
75
+ format.fbml { render :action => "edit" }
76
+ format.xml { render :xml => @<%= file_name %>.errors, :status => :unprocessable_entity }
77
+ end
78
+ end
79
+ end
80
+
81
+ # DELETE /<%= table_name %>/1
82
+ # DELETE /<%= table_name %>/1.xml
83
+ def destroy
84
+ @<%= file_name %> = <%= class_name %>.find(params[:id])
85
+ @<%= file_name %>.destroy
86
+
87
+ respond_to do |format|
88
+ format.html { redirect_to(<%= table_name %>_url) }
89
+ format.fbml { redirect_to(<%= table_name %>_url) }
90
+ format.xml { head :ok }
91
+ end
92
+ end
93
+ end
@@ -0,0 +1,2579 @@
1
+ // Taken from http://wiki.developers.facebook.com/index.php/CSS_Tips_and_Tricks.
2
+ /* ------------------------------------------------------------------------
3
+ Facebook
4
+ ------------------------------------------------------------------------ */
5
+
6
+ body {
7
+ background: #fff;
8
+ font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
9
+ font-size: 11px;
10
+ margin: 0px;
11
+ padding: 0px;
12
+ text-align: left; }
13
+
14
+ h1, h2, h3, h4, h5 {
15
+ font-size: 13px;
16
+ color: #333;
17
+ margin: 0px;
18
+ padding: 0px; }
19
+
20
+ h1 {
21
+ font-size: 14px; }
22
+
23
+ h4, h5 {
24
+ font-size: 11px; }
25
+
26
+ p {
27
+ font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
28
+ font-size: 11px;
29
+ text-align: left; }
30
+
31
+ a {
32
+ color: #3b5998;
33
+ text-decoration: none; }
34
+
35
+ a:hover {
36
+ text-decoration: underline; }
37
+
38
+ img {
39
+ border: 0px; }
40
+
41
+ select {
42
+ border:1px solid #BDC7D8;
43
+ font-family:"lucida grande",tahoma,verdana,arial,sans-serif;
44
+ font-size:11px;
45
+ padding:2px;
46
+ }
47
+
48
+ td,
49
+ td.label {
50
+ font-size: 11px;
51
+ text-align: left; }
52
+
53
+ .wbr { display: block; float:left; }
54
+
55
+ .aural {
56
+ width: 0; height: 0;
57
+ display: block;
58
+ margin-left: -5000px;
59
+ overflow: hidden;
60
+ }
61
+
62
+ /* --------------------------| GLOBAL CLASSES |-------------------------- */
63
+
64
+ /* This is FBML transitional code for backwards compatibility, sorry for the mess */
65
+
66
+ .standard_message {
67
+ padding:10px;
68
+ }
69
+
70
+ .standard_message.no_padding {
71
+ padding:0;
72
+ }
73
+
74
+ .standard_message.shorten {
75
+ padding-bottom:0;
76
+ }
77
+
78
+ .standard_message.has_padding {
79
+ padding:10px;
80
+ }
81
+
82
+ .standard_message #error,
83
+ .standard_message .status,
84
+ .standard_message .explanation_note {
85
+ margin:0;
86
+ }
87
+
88
+ #error,
89
+ .status,
90
+ .explanation_note {
91
+ margin: 0 10px 10px 10px;
92
+ padding: 10px;
93
+ border: solid 1px #dd3c10;
94
+ background: #ffebe8;
95
+ }
96
+
97
+ .created {
98
+ margin: 0 20px 20px;
99
+ }
100
+
101
+ #error p,
102
+ .status p,
103
+ .explanation_note p {
104
+ margin: 4px 0px 0px;
105
+ line-height:14px;
106
+ font-weight:normal;
107
+ }
108
+
109
+ #error a,
110
+ .status a,
111
+ .explanation_note a {
112
+ text-decoration: none;
113
+ color: #dd3c10;
114
+ }
115
+
116
+ .status {
117
+ border-color:#e2c822;
118
+ background: #fff9d7;
119
+ }
120
+
121
+ .status a {
122
+ color: #3b5998;
123
+ text-decoration: none;
124
+ }
125
+
126
+ .page_top_notice {
127
+ color: #444;
128
+ border-bottom: solid 1px #e2c822;
129
+ padding: 5px 20px 4px;
130
+ background: #fff9d7;
131
+ }
132
+
133
+ .explanation_note {
134
+ border-color:#bdc7d8;
135
+ background:#fff;
136
+ }
137
+
138
+ .explanation_note h1 {
139
+ font-size:11px;
140
+ }
141
+
142
+ .pipe {
143
+ color: gray;
144
+ padding: 0px 3px; }
145
+
146
+ .column {
147
+ float: left; }
148
+
149
+ .center {
150
+ margin-left:auto;
151
+ margin-right:auto;
152
+ }
153
+
154
+
155
+ .editor_title {
156
+ background: #f7f7f7;
157
+ padding-bottom: 5px;
158
+ }
159
+
160
+ .standard_title {
161
+ padding-bottom: 5px;
162
+ }
163
+
164
+ .page_title {
165
+ border-bottom: 1px solid #ccc;
166
+ padding: 10px 10px 5px;
167
+ margin: 0px 10px;
168
+ }
169
+
170
+ .standard_title .page_title {
171
+ border-bottom: none;
172
+ }
173
+
174
+ .needs_translated { /* pgh 4ever */
175
+ background: #85b84d;
176
+ }
177
+
178
+ /* ----------------------------| PAGE FRAME |---------------------------- */
179
+
180
+ #book {
181
+ padding: 0px;
182
+ margin: 0px auto;
183
+ text-align: left;
184
+ width: 799px; }
185
+
186
+ #sidebar {
187
+ padding: 0px 0px 0px;
188
+ font-size: 13px; /* Needed for correct text-size handling. Ask Aaron */
189
+ width: 150px;
190
+ float: left; }
191
+
192
+ #sidebar h3 {
193
+ margin: 0px;
194
+ font-size: 11px;
195
+ float: left;
196
+ text-align: left;
197
+ color: #333;
198
+ border: none;
199
+ background: none;
200
+ padding: 0px 0px 3px; }
201
+
202
+ #sidebar h3 a {
203
+ color: #333; }
204
+
205
+ #sidebar h3 a:hover {
206
+ color: #3b5998;
207
+ text-decoration: underline; }
208
+
209
+ #sidebar a.go_home {
210
+ display: block;
211
+ background-color: #3b5998;
212
+ background-position: top left;
213
+ background-repeat: no-repeat;
214
+ height: 26px;
215
+ width: 151px;
216
+ position: absolute;
217
+ z-index: 3;
218
+ margin: 0;
219
+ padding: 29px 0px 0px;
220
+ font-size: 13px;
221
+ }
222
+
223
+ #sidebar a.go_home:hover {
224
+ background-color: #3b5998;
225
+ background-position: bottom left;
226
+ background-repeat: no-repeat;
227
+ }
228
+
229
+ #sidebar a.go_home h1 {
230
+ font-size: 13px; }
231
+
232
+ #sidebar_content {
233
+ font-size: 11px;
234
+ margin: 2em 0 10px;
235
+ padding: 32px 0px 0px;
236
+ color: #000;
237
+ border-bottom: solid 1px #ddd;
238
+ background: #f7f7f7;
239
+ }
240
+
241
+ #sidebar_signup_content {
242
+ background:#F7F7F7 none repeat scroll 0%;
243
+ border-bottom:1px solid #DDDDDD;
244
+ border-top:1px solid #DDDDDD;
245
+ font-size:11px;
246
+ line-height:28px;
247
+ margin:10px 0pt;
248
+ padding: 0px 0 10px 10px;
249
+ }
250
+
251
+ #squicklogin {
252
+ padding: 8px 10px 10px 9px; }
253
+
254
+ #squicklogin label {
255
+ color: #333;
256
+ display: block;
257
+ margin-bottom: 2px;
258
+ }
259
+ #squicklogin .inputtext {
260
+ margin: 0px 0px 5px 0px;
261
+ width: 123px;
262
+ }
263
+ #squicklogin .inputsubmit {
264
+ margin: 5px 0px 2px 0px;
265
+ }
266
+ #squicklogin label.persistent {
267
+ color: #333;
268
+ display: block;
269
+ font-size: 11px;
270
+ font-weight: normal;
271
+ line-height: 16px;
272
+ padding: 1px 0px 3px 0px;
273
+ }
274
+ #squicklogin label.persistent .inputcheckbox,
275
+ #loginform label.persistent .inputcheckbox {
276
+ margin: 0px 4px 0px 0px;
277
+ }
278
+ #squicklogin p {
279
+ line-height: 18px;
280
+ padding: 0px;
281
+ }
282
+
283
+ #squicklogin #doquicklogin{
284
+ margin:5px 0 8px 0;
285
+ }
286
+
287
+ /* GLOBAL QUICK SEARCH */
288
+
289
+ /*fixes whitespace above input box in ie6*/
290
+ #qsearchform #q {
291
+ margin: 0px;
292
+ }
293
+
294
+ #qsearch {
295
+ padding: 8px 4px 2px 10px;
296
+ }
297
+
298
+ #qsearch div.findfriends {
299
+ float: right;
300
+ line-height: 13px;
301
+ margin: 0px;
302
+ padding: 4px 5px 0px 0px;
303
+ }
304
+
305
+ #qsearch a.findfriends {
306
+ line-height: 13px;
307
+ margin: 0px;
308
+ padding: 1px 0px 0px 0px;
309
+ }
310
+
311
+ #qsearch .inputsearch {
312
+ display: block;
313
+ margin-top: 0px;
314
+ margin-right: 20px;
315
+ width: 123px;
316
+ }
317
+
318
+ #qsearch .inputsearch.typeahead_found {
319
+ background-color: white;
320
+ }
321
+
322
+ #qsearch.hourglass #q,
323
+ #qsearch.hourglass #nm { /* name is used for open search for gray accounts */
324
+ float: none;
325
+ border-color: #95a5c6;
326
+ padding-left: 17px;
327
+ margin-right: 0px;
328
+ width: 108px;
329
+ }
330
+
331
+ #qsearch h3.qsearch_header {
332
+ margin: 0px;
333
+ padding: 3px 0px 4px 3px;
334
+ }
335
+
336
+ /* NEW GLOBAL SEARCH INPUT */
337
+
338
+ #qsearch_alternate {
339
+ clear: both;
340
+ margin-bottom: -4px;
341
+ padding: 0px;
342
+ }
343
+
344
+ #qsearch_field {
345
+ float: left;
346
+ padding: 0px 0px 1px 0px;
347
+ }
348
+
349
+ #qsearch_field .inputtext#q {
350
+ border: 1px solid #94a4c6;
351
+ border-right: 0px;
352
+ display: block;
353
+ margin: 0px;
354
+ padding: 3px;
355
+ width: 102px;
356
+ }
357
+
358
+ #qsearch_submit {
359
+ float: left;
360
+ width: 21px;
361
+ }
362
+
363
+ #qsearch_submit a.qsearch_button {
364
+ background: #6d84b4 url(/images/search_input_gloss.gif) top center repeat-x;
365
+ border-bottom: 1px solid #506798;
366
+ border-left: 1px solid #617aad;
367
+ border-right: 1px solid #506798;
368
+ border-top: 1px solid #5973a9;
369
+ display: block;
370
+ font-size: 11px;
371
+ margin: 0px;
372
+ padding: 0px;
373
+ text-decoration: none;
374
+ width: 19px;
375
+ }
376
+ #qsearch_submit a.qsearch_button span.qsearch_glass {
377
+ background: url(/images/search_glass.gif) 0% 70% no-repeat;
378
+ display: block;
379
+ margin: 0px;
380
+ padding: 3px 0px;
381
+ }
382
+ #qsearch_submit a.qsearch_button:active {
383
+ background: #5b75ab;
384
+ border: 1px solid #3b5998;
385
+ }
386
+ #qsearch_submit a.qsearch_button:active span.qsearch_glass {
387
+ background: url(/images/search_glass.gif) 100% 70% no-repeat;
388
+ }
389
+
390
+
391
+ /* SIDEBAR APPLICATION MENU */
392
+
393
+ #sidebar_content .separator {
394
+ border-top: solid 1px #CCCCCC;
395
+ border-bottom: solid 1px white;
396
+ margin: 0px -10px 4px -10px; }
397
+
398
+ #sidebar .app_list {
399
+ font-size: 11px;
400
+ padding: 8px 10px 0px; }
401
+
402
+ #sidebar .app_list h2 {
403
+ float: left;
404
+ padding-left: 2px;
405
+ }
406
+
407
+ #sidebar .app_list h3.app_list_header {
408
+ padding-left: 3px;
409
+ }
410
+
411
+ #sidebar .app_list_outside {
412
+ padding: 2px 14px 5px;
413
+ }
414
+
415
+ #sidebar .browse_apps_link {
416
+ padding-top: 5px;
417
+ }
418
+
419
+ #sidebar .edit_apps {
420
+ float: right;
421
+ text-align: right;
422
+ }
423
+
424
+ #sidebar #app_list, #app_non_nav_list {
425
+ clear: both;
426
+ list-style: none;
427
+ margin: 0;
428
+ padding: 2px 3px 0px; }
429
+
430
+ #sidebar #app_non_nav_list {
431
+ padding-bottom: 5px; }
432
+
433
+ #sidebar .divider_bar {
434
+ margin-left: 22px;
435
+ border-bottom: solid 1px #d6d6d6;
436
+ line-height: 0px;
437
+ margin-bottom: 3px;
438
+ }
439
+
440
+ #sidebar .app_list .list_item {
441
+ margin: 0px 0px 0px -35px;
442
+ padding: 0px 0px 0px 35px; }
443
+
444
+ #sidebar .app_list_outside h2 {
445
+ margin-left: -5px;
446
+ padding: 3px 0px;
447
+ }
448
+
449
+ #sidebar .app_list .list_item .container {
450
+ margin: 0px;
451
+ padding: 0px 0px 0px; }
452
+
453
+ #sidebar .app_list li a {
454
+ margin: 0px;
455
+ padding: 0px; }
456
+
457
+ #sidebar .app_list .photos_app_link {
458
+ background: url(/images/icons/photo.gif) 0px 2px no-repeat; }
459
+ #sidebar .app_list .video_app_link {
460
+ background: url(/images/icons/video.gif) 0px 2px no-repeat; }
461
+ #sidebar .app_list .notes_app_link {
462
+ background: url(/images/icons/note.gif) 0px 2px no-repeat; }
463
+ #sidebar .app_list .groups_app_link {
464
+ background: url(/images/icons/group.gif) 0px 3px no-repeat; }
465
+ #sidebar .app_list .events_app_link {
466
+ background: url(/images/icons/event.gif) 0px 2px no-repeat; }
467
+ #sidebar .app_list .book_app_link {
468
+ background: url(/images/icons/bookreview.gif) 0px 2px no-repeat; }
469
+ #sidebar .app_list .posted_app_link {
470
+ background: url(/images/icons/post.gif) 0px 2px no-repeat; }
471
+
472
+ #sidebar .app_list .icon {
473
+ float: left;
474
+ margin: 0px;
475
+ padding: 0px;
476
+ height: 16px;
477
+ width: 16px; }
478
+
479
+ #sidebar .app_list .link_title {
480
+ background: transparent no-repeat 0px 1px;
481
+ cursor: pointer;
482
+ display: block;
483
+ line-height: 16px;
484
+ padding: 1px 0px 3px 0px;
485
+ margin: 0px 0px 0px 0px;
486
+ overflow: hidden; }
487
+
488
+ #sidebar .app_list .container_link {
489
+ padding-left: 22px;
490
+ }
491
+
492
+ #sidebar .app_list .container_icon {
493
+ position: absolute;
494
+ }
495
+
496
+ #sidebar .app_list .highlight_link {
497
+ font-weight: normal;
498
+ }
499
+
500
+ #sidebar .more_section {
501
+ margin-top: 2px;
502
+ display: block;
503
+ }
504
+
505
+ #sidebar .more_section:hover {
506
+ background: #ececec;
507
+ }
508
+
509
+ #sidebar .expand_link {
510
+ text-align: left;
511
+ font-size: 9px;
512
+ font-weight: bold;
513
+ background: #ccc;
514
+ display: block;
515
+ padding: 2px 10px 2px 22px;
516
+ width: 100px;
517
+ }
518
+
519
+ #sidebar .more_apps {
520
+ background: url(/images/down_arrow_grey_small.gif) no-repeat 10px 2px;
521
+ }
522
+
523
+ #sidebar .less_apps {
524
+ background: url(/images/up_arrow_grey_small.gif) no-repeat 10px 2px;
525
+ }
526
+
527
+ #sidebar .more_apps a, #sidebar .less_apps a, .more_section a {
528
+ color: #666666;
529
+ }
530
+
531
+ #publicity {
532
+ height: 61px;
533
+ padding: 3px 3px 7px; }
534
+
535
+ #publicity h5 {
536
+ border: none;
537
+ margin: 0px;
538
+ padding: 0px;
539
+ color: #333;
540
+ line-height: 19px; }
541
+
542
+ #publicity h5.new {
543
+ line-height: 17px;
544
+ padding: 0px 0px 2px 36px;
545
+ background: url(/images/publicity_new.gif) no-repeat left center; }
546
+
547
+ #publicity h5.tip {
548
+ line-height: 17px;
549
+ padding: 0px 0px 2px 29px;
550
+ background: url(/images/publicity_tip.gif) no-repeat left center; }
551
+
552
+ #publicity p {
553
+ margin: 0px;
554
+ color: #333;
555
+ line-height: 14px; }
556
+
557
+ #widebar {
558
+ width: 649px;
559
+ float: left; }
560
+
561
+ #widebar_shadow {
562
+ width: 1px;
563
+ float: left;
564
+ overflow: hidden; }
565
+
566
+ #navigator {
567
+ z-index: 20;
568
+ position: relative;
569
+ margin: 0px 1px 0px 0px;
570
+ padding: 9px 0px 4px 0px;
571
+ height: 2em;
572
+ background: url(/images/navigator_bg.gif) no-repeat left bottom;
573
+ line-height: 2em; }
574
+
575
+ #navigator a {
576
+ text-decoration: none;
577
+ color: white; }
578
+
579
+ #navigator ul.main_set {
580
+ font-size: 13px;
581
+ float: left;
582
+ display: block;
583
+ list-style: none;
584
+ margin: 0px;
585
+ padding: 0px; }
586
+
587
+ #navigator .main_set li {
588
+ float: left;
589
+ display: block;
590
+ margin: 0px 10px 0px 0px;
591
+ font-weight: bold; }
592
+
593
+ #navigator .main_set li a {
594
+ white-space: nowrap;
595
+ padding: 3px 5px; }
596
+ #navigator .main_set li a.active,
597
+ #navigator .main_set li a:hover {
598
+ background: #5c75aa; }
599
+
600
+ #navigator .main_set li a.edit_link {
601
+ color: #d8dfea;
602
+ font-weight: normal; }
603
+ #navigator .main_set li a.edit_link:hover {
604
+ text-decoration: underline;
605
+ background: transparent; }
606
+
607
+ #navigator ul.secondary_set {
608
+ float: right;
609
+ display: block;
610
+ list-style: none;
611
+ margin: 0px;
612
+ padding: 0px;
613
+ padding-right: 17px;
614
+ font-size: 11px; }
615
+
616
+ #navigator .secondary_set li {
617
+ float: left;
618
+ display: block;
619
+ margin: 0px 10px 0px 0px; }
620
+ #navigator .secondary_set li a {
621
+ color: #c3cddf; }
622
+ #navigator .secondary_set li a:hover {
623
+ color: white;
624
+ text-decoration: underline; }
625
+
626
+ /* Shortened Navigation for certain languages */
627
+
628
+ #navigator.shortened .main_set li {
629
+ margin: 0 0 0 4px;
630
+ }
631
+
632
+ #navigator.shortened .main_set .navigator_menu li {
633
+ margin: 0;
634
+ }
635
+
636
+ #navigator.shortened .main_set li.main_set_first {
637
+ margin: 0 0 0 1px;
638
+ }
639
+
640
+ #navigator.shortened ul.secondary_set {
641
+ padding: 1px 15px 0 0;
642
+ }
643
+
644
+ #navigator.shortened .secondary_set li {
645
+ margin: 0 8px 0 0;
646
+ }
647
+
648
+ #navigator.shortened .main_set li a.edit_link {
649
+ font-size: 11px;
650
+ }
651
+
652
+
653
+ #book #content_shadow {
654
+ margin: 2px 0px 0px 1px;
655
+ background: transparent url(/images/shadow_gray.gif) repeat-y top right;
656
+ padding: 0px;
657
+ border-bottom: solid 1px #ddd; }
658
+
659
+ #content {
660
+ margin: -2px 1px 0px -1px;
661
+ border-top: none;
662
+ border-left: solid 1px #b7b7b7;
663
+ border-right: solid 1px #b7b7b7;
664
+ border-bottom: solid 1px #3b5998;
665
+ font-size: 11px; }
666
+
667
+ #ad_1 {
668
+ clear:both; }
669
+
670
+ #pagefooter {
671
+ clear: both;
672
+ padding: 0px;
673
+ margin: 0px;
674
+ height: 50px;
675
+ line-height: 16px; }
676
+
677
+ #pagefooter ul {
678
+ display: block;
679
+ list-style: none;
680
+ float: right;
681
+ margin: 0px;
682
+ padding: 8px 2px 4px;}
683
+
684
+ #pagefooter li {
685
+ float: left;
686
+ padding: 0px;}
687
+
688
+ #pagefooter .footer_links a {
689
+ padding: 2px 5px;}
690
+
691
+ #pagefooter .f_links {
692
+ width: 400px;
693
+ float: right;
694
+ }
695
+
696
+ #pagefooter .copyright_and_location {
697
+ float: left;
698
+ padding: 8px 8px 0px 10px;
699
+ margin: 0px;
700
+ width: 225px;
701
+ }
702
+
703
+ #pagefooter .copyright_and_location #locale {
704
+ float: left;
705
+ margin-top: -1px;
706
+ }
707
+
708
+ #pagefooter .copyright {
709
+ color: #777;
710
+ float: left;
711
+ margin-right: 10px;
712
+ padding-bottom: 5px;
713
+ }
714
+
715
+ #pagefooter .copyright .brand {
716
+ padding: 0px 0px 2px 22px;
717
+ background: url(/images/icons/hidden.gif) no-repeat; }
718
+
719
+ #subheader {
720
+ border-left: solid 1px #b7b7b7;
721
+ border-right: solid 1px #b7b7b7; }
722
+
723
+
724
+ #navigator .main_set li .with_arrow {
725
+ margin-top: 0px;
726
+ }
727
+
728
+ .global_menu_arrow_active:focus {
729
+ outline: 0px;
730
+ }
731
+
732
+ #navigator .main_set li a.global_menu_arrow,
733
+ #navigator .main_set li a.global_menu_arrow_active {
734
+ height: 19px;
735
+ width: 17px;
736
+ margin: 0px 0px -10px -1px;
737
+ padding: 3px 0px 3px;
738
+ background: transparent url(/images/global_menu_arrow.gif) no-repeat 0px center; }
739
+
740
+ #navigator .main_set li a.global_menu_arrow_active,
741
+ #navigator .main_set li a.global_menu_arrow:hover,
742
+ #navigator .main_set li a.global_menu_arrow_active:hover {
743
+ background: #5c75aa url(/images/global_menu_arrow.gif) no-repeat 0px center; }
744
+
745
+
746
+
747
+ /* Navigator Drop Menus ==================== */
748
+
749
+ #navigator .navigator_menu {
750
+ margin: -1px;
751
+ position: absolute;
752
+ z-index: 100;
753
+ background: white;
754
+ border: solid 1px #3b5998;
755
+ }
756
+
757
+ #navigator .navigator_menu.friends {
758
+ max-width: 250px;
759
+ }
760
+
761
+ #navigator .navigator_menu.networks {
762
+ max-width: 250px;
763
+ }
764
+
765
+ #navigator .navigator_menu.attachments {
766
+ max-width: 250px;
767
+ }
768
+
769
+ #navigator .navigator_menu ul {
770
+ font-size: 11px;
771
+ line-height: 1em;
772
+ font-weight: normal;
773
+ list-style: none;
774
+ padding: 5px 0px;
775
+ margin: 0px; }
776
+
777
+ #navigator .navigator_menu li {
778
+ float: none;
779
+ cursor: pointer;
780
+ font-weight: normal;
781
+ padding: 0px;
782
+ margin: 0px; }
783
+
784
+ #navigator .navigator_menu li.menu_divider {
785
+ display: block;
786
+ margin: 4px 10px;
787
+ font-size: 1px;
788
+ line-height: 1px;
789
+ cursor: default;
790
+ border-bottom: solid 1px #eee; }
791
+
792
+ #navigator .navigator_menu li a {
793
+ display: block;
794
+ color: #3b5998;
795
+ border-right: solid 1px white;
796
+ border-left: solid 1px white;
797
+ padding: 4px 25px 4px 10px; }
798
+
799
+ #navigator .navigator_menu a:hover {
800
+ text-decoration: none;
801
+ background: #3b5998;
802
+ border-right: solid 1px #6d84b4;
803
+ border-left: solid 1px #6d84b4;
804
+ color: white; }
805
+
806
+ /* Title Header ==================== */
807
+
808
+ .title_header {
809
+ background: white;
810
+ padding: 20px 20px 17px; }
811
+
812
+ .title_header h2 {
813
+ margin: 0px;
814
+ font-size: 14px;
815
+ padding: 0px 0px 0px 24px;
816
+ background: url(/images/icons/hidden.gif) no-repeat 1px 1px; }
817
+
818
+ .title_header h2.no_icon {
819
+ padding: 0px;
820
+ background: none;}
821
+
822
+ .title_header.add_border {
823
+ border-bottom: solid 1px #ccc; }
824
+ .title_header.gray {
825
+ background: #f7f7f7; }
826
+ .title_header.shorten {
827
+ padding-bottom: 0px; }
828
+ .title_header.no_padding {
829
+ padding: 0px; }
830
+ .title_header h4 {
831
+ color: #666;
832
+ font-size: 11px;
833
+ font-weight: normal;
834
+ padding: 3px 0 0 24px; }
835
+ .title_header h4.no_icon {
836
+ padding: 3px 0 0 0; }
837
+
838
+
839
+ .login_title_header {
840
+ padding: 20px 0px 10px;
841
+ margin-bottom: 10px;
842
+ border-bottom: solid 1px #ccc;}
843
+
844
+ .login_title_header h2 {
845
+ margin: 0px;
846
+ padding: 0px;
847
+ font-size: 14px;}
848
+
849
+
850
+ /* Media Header ==================== */
851
+
852
+ .obj_media_header {
853
+ background-color: #ffffff;
854
+ padding: 0px 22px 5px 20px; }
855
+ .media_header {
856
+ background-color: #ffffff;
857
+ padding: 0px 12px 5px 20px; }
858
+
859
+ .obj_media_header .user_info {
860
+ float: left;
861
+ padding-top: 18px;
862
+ width: 425px; }
863
+ .media_header .user_info {
864
+ float: left;
865
+ padding-top: 18px;
866
+ width: 545px }
867
+
868
+ .obj_media_header h2 {
869
+ float: left;
870
+ font-size: 14px;
871
+ margin: 0px;
872
+ padding: 3px 0px 5px 0px;
873
+ width: 520px; }
874
+ .media_header h2 {
875
+ float: left;
876
+ font-size: 14px;
877
+ margin: 0px;
878
+ padding: 3px 0px 5px 0px;
879
+ width: 550px; }
880
+
881
+ .obj_media_header h2 span,
882
+ .media_header h2 span {
883
+ font-weight: normal; }
884
+
885
+ .obj_media_header .pipe,
886
+ .media_header .pipe {
887
+ color: gray;
888
+ padding: 0px 3px; }
889
+
890
+ .obj_media_header .picture {
891
+ float: right;
892
+ margin-top: 18px;
893
+ margin-right: 0px;
894
+ position: relative;
895
+ z-index: 1;
896
+ text-align: right;
897
+ overflow: hidden;
898
+ height: 50px;
899
+ width: 150px; }
900
+ .media_header .picture {
901
+ float: left;
902
+ margin-top: 18px;
903
+ margin-right: 10px;
904
+ position: relative;
905
+ z-index: 1;
906
+ overflow: hidden;
907
+ height: 50px;
908
+ width: 50px; }
909
+
910
+ .obj_media_header .picture img {
911
+ height: 50px; }
912
+ .media_header .picture img {
913
+ display: block; }
914
+
915
+ .obj_media_header .media_gray_bg {
916
+ background: #f7f7f7;
917
+ z-index: 0;
918
+ border-bottom: solid 1px #cccccc;
919
+ margin: -18px -254px 7px -20px;
920
+ padding: 18px 114px 0px 20px;
921
+ width: 512px; }
922
+ .media_header .media_gray_bg {
923
+ background: #f7f7f7;
924
+ z-index: 0;
925
+ border-bottom: solid 1px #cccccc;
926
+ margin: -18px -14px 7px -80px;
927
+ padding: 18px 14px 0px 80px;
928
+ width: 552px; }
929
+
930
+ /* Dashboard Header ==================== */
931
+
932
+ .dashboard_header {
933
+ padding: 10px 10px 0px; }
934
+
935
+ .dashboard_header .dh_links {
936
+ padding: 0px 10px 5px;
937
+ border-bottom: solid 1px #ccc; }
938
+
939
+ .dashboard_header .dh_links .dh_actions { float: left; }
940
+ .dashboard_header .dh_links .dh_help { float: right; }
941
+ .dashboard_header .dh_links .pipe { padding: 0px 7px; color: #aaa; }
942
+ .dashboard_header .dh_links form {display: inline; overflow: hidden; width: 0px;}
943
+
944
+ .dashboard_header .dh_links .dh_actions .back_to_link {
945
+ background: url(/images/arrow_micro_back.gif) no-repeat 0% 55%;
946
+ padding-left: 10px; }
947
+
948
+ .dashboard_header .dh_titlebar {
949
+ padding: 10px 10px 12px; }
950
+
951
+ .dashboard_header .dh_titlebar h2 {
952
+ float: left;
953
+ font-size: 14px;
954
+ padding: 7px 0px 7px 24px;
955
+ background-repeat: no-repeat;
956
+ background-position: 1px 8px; }
957
+ .dashboard_header .dh_titlebar .dh_subtitle {
958
+ background-image: url(/images/dashboard_subtitle_arrow.gif);
959
+ background-position: 0px 5px;
960
+ background-repeat: no-repeat;
961
+ color: #000;
962
+ float: left;
963
+ font-weight: bold;
964
+ font-size: 14px;
965
+ margin: 7px 0px 0px 5px;
966
+ padding: 0px 0px 0px 13px;
967
+ }
968
+ .dashboard_header .dh_titlebar .dh_search {
969
+ float: right;
970
+ margin-top: 3px;
971
+ height: 30px;
972
+ line-height: 30px; }
973
+ .dashboard_header .dh_titlebar .dh_search input {
974
+ margin: 0px; }
975
+ .dashboard_header .dh_titlebar .dh_right {
976
+ float: right;
977
+ margin-top: 2px;
978
+ height: 30px; }
979
+
980
+ .dashboard_header .dh_new_media_shell {
981
+ float: right;
982
+ background: url(/images/new_media_button_active.gif) no-repeat bottom -30px;
983
+ margin: 7px 0px 0px 10px; }
984
+
985
+ /* NEW MEDIA BUTTON */
986
+ .dh_new_media {
987
+ display: block;
988
+ float: left;
989
+ color: #777;
990
+ text-decoration: none;
991
+ background: url(/images/new_media_button.gif) no-repeat; }
992
+
993
+ .dh_new_media .tr { background: url(/images/new_media_button.gif) no-repeat top right; }
994
+ .dh_new_media .bl { background: url(/images/new_media_button.gif) no-repeat bottom left; }
995
+ .dh_new_media .br { background: url(/images/new_media_button.gif) no-repeat bottom right; }
996
+ .dh_new_media span {
997
+ background: url(/images/new_media_button_plus.gif) no-repeat 9px center;
998
+ color: #333;
999
+ font-size: 11px;
1000
+ font-weight: bold;
1001
+ display: block;
1002
+ padding: 3px 9px 5px 22px;
1003
+ text-shadow: white 0px 1px 1px; }
1004
+
1005
+ .dh_new_media:hover {
1006
+ text-decoration: underline; }
1007
+ .dh_new_media:active,
1008
+ .dh_new_media:active .tr,
1009
+ .dh_new_media:active .bl,
1010
+ .dh_new_media:active .br {
1011
+ background-image: url(/images/new_media_button_active.gif); }
1012
+
1013
+
1014
+ /* Toolbar Buttons ===================== */
1015
+
1016
+ .dh_toolbar_buttons {
1017
+ background: url(/images/buttons/toolbar_button_hover.gif) no-repeat bottom left;
1018
+ }
1019
+ .dh_toolbar_button {
1020
+ background-image: url(/images/buttons/toolbar_button_active.gif);
1021
+ color: #777;
1022
+ display: block;
1023
+ float: left;
1024
+ text-decoration: none;
1025
+ }
1026
+ .dh_toolbar_button:hover {
1027
+ text-decoration: none;
1028
+ }
1029
+
1030
+ /* LEFT BUTTON */
1031
+ .dh_toolbar_button_left {
1032
+ background: url(/images/buttons/toolbar_button.gif) no-repeat top left;
1033
+ }
1034
+ .dh_toolbar_button_left .bottom_left {
1035
+ background: url(/images/buttons/toolbar_button.gif) no-repeat bottom left;
1036
+ }
1037
+ .dh_toolbar_button_left .bottom_right {
1038
+ background: url(/images/buttons/toolbar_button_border.gif) no-repeat bottom right;
1039
+ }
1040
+ .dh_toolbar_button_left:hover,
1041
+ .dh_toolbar_button_left:hover .bottom_left {
1042
+ background-image: url(/images/buttons/toolbar_button_hover.gif);
1043
+ }
1044
+ .dh_toolbar_button_left:active,
1045
+ .dh_toolbar_button_left:active .bottom_left {
1046
+ background-image: url(/images/buttons/toolbar_button_active.gif);
1047
+ }
1048
+
1049
+ /* CENTER BUTTON */
1050
+ .dh_toolbar_button_center {
1051
+ background: url(/images/buttons/toolbar_button.gif) no-repeat top center;
1052
+ }
1053
+ .dh_toolbar_button_center .bottom_left {
1054
+ background: url(/images/buttons/toolbar_button.gif) no-repeat bottom center;
1055
+ }
1056
+ .dh_toolbar_button_center .bottom_right {
1057
+ background: url(/images/buttons/toolbar_button_border.gif) no-repeat bottom right;
1058
+ }
1059
+ .dh_toolbar_button_center:hover,
1060
+ .dh_toolbar_button_center:hover .bottom_left {
1061
+ background-image: url(/images/buttons/toolbar_button_hover.gif);
1062
+ }
1063
+ .dh_toolbar_button_center:active,
1064
+ .dh_toolbar_button_center:active .bottom_left {
1065
+ background-image: url(/images/buttons/toolbar_button_active.gif);
1066
+ }
1067
+
1068
+ /* RIGHT BUTTON */
1069
+ .dh_toolbar_button_right {
1070
+ background: url(/images/buttons/toolbar_button.gif) no-repeat top center;
1071
+ }
1072
+ .dh_toolbar_button_right .top_right {
1073
+ background: url(/images/buttons/toolbar_button.gif) no-repeat top right;
1074
+ }
1075
+ .dh_toolbar_button_right .bottom_left {
1076
+ background: url(/images/buttons/toolbar_button.gif) no-repeat bottom center;
1077
+ }
1078
+ .dh_toolbar_button_right .bottom_right {
1079
+ background: url(/images/buttons/toolbar_button.gif) no-repeat bottom right;
1080
+ }
1081
+ .dh_toolbar_button_right:hover,
1082
+ .dh_toolbar_button_right:hover .top_right,
1083
+ .dh_toolbar_button_right:hover .bottom_left,
1084
+ .dh_toolbar_button_right:hover .bottom_right {
1085
+ background-image: url(/images/buttons/toolbar_button_hover.gif);
1086
+ }
1087
+ .dh_toolbar_button_right:active,
1088
+ .dh_toolbar_button_right:active .top_right,
1089
+ .dh_toolbar_button_right:active .bottom_left,
1090
+ .dh_toolbar_button_right:active .bottom_right {
1091
+ background-image: url(/images/buttons/toolbar_button_active.gif);
1092
+ }
1093
+
1094
+
1095
+ /* BUTTON ICON & LABEL */
1096
+ .dh_toolbar_button span {
1097
+ background-color: transparent;
1098
+ background-image: url(/images/buttons/toolbar_button_plus.gif);
1099
+ background-position: 9px 48%;
1100
+ background-repeat: no-repeat;
1101
+ color: #333;
1102
+ font-size: 11px;
1103
+ font-weight: bold;
1104
+ display: block;
1105
+ text-shadow: white 0px 1px 1px;
1106
+ }
1107
+ .dh_toolbar_button_left span {
1108
+ background-position: 9px 48%;
1109
+ padding: 3px 9px 5px 22px;
1110
+ }
1111
+ .dh_toolbar_button_center span {
1112
+ background-position: 7px 48%;
1113
+ padding: 3px 9px 5px 20px;
1114
+ }
1115
+ .dh_toolbar_button_right span {
1116
+ background-position: 7px 48%;
1117
+ padding: 3px 12px 5px 20px;
1118
+ }
1119
+
1120
+
1121
+ /* DEFAULT PLUS BUTTON */
1122
+ .dh_toolbar_button#toolbar_button_plus span {
1123
+ background-image: url(/images/buttons/toolbar_button_plus.gif);
1124
+ }
1125
+ /* RECORD BUTTON */
1126
+ .dh_toolbar_button#toolbar_button_record span {
1127
+ background-image: url(/images/buttons/toolbar_button_record.gif);
1128
+ }
1129
+ /* MESSAGE BUTTON */
1130
+ .dh_toolbar_button#toolbar_button_message span {
1131
+ background-image: url(/images/buttons/toolbar_button_message.gif);
1132
+ }
1133
+ .dh_toolbar_button_center#toolbar_button_message span,
1134
+ .dh_toolbar_button_right#toolbar_button_message span {
1135
+ background-position: 6px 48%;
1136
+ }
1137
+
1138
+
1139
+ /* ----------------------| Empty List Message |---------------------- */
1140
+
1141
+ .empty_message {
1142
+ color: #333;
1143
+ font-size: 13px;
1144
+ line-height: 17px;
1145
+ padding: 20px 20px 50px 20px;
1146
+ text-align: center;
1147
+ background: #f7f7f7; }
1148
+
1149
+ /* ----------------------| SWEET BLESSED CLEARFIX |---------------------- */
1150
+
1151
+ .clearfix:after {
1152
+ content: ".";
1153
+ display: block;
1154
+ clear: both;
1155
+ visibility: hidden;
1156
+ line-height: 0;
1157
+ height: 0; }
1158
+
1159
+ .clearfix {
1160
+ display: inline-block; }
1161
+
1162
+ html[xmlns] .clearfix {
1163
+ display: block; }
1164
+
1165
+ * html .clearfix {
1166
+ height: 1%; }
1167
+
1168
+ /* ------------------------------| reset styles | ------------------------- */
1169
+
1170
+ /* reset things that get inheritted and apply some basic stuff we normally set in facebook.css.
1171
+ * this doesn't actually prevent people from modifying the style of the related markup if they want to, but it
1172
+ * does make it less likely that a page with funky css styles will accidentally make something ugly.
1173
+ * see: multi friend selector
1174
+ * useful for: anything in fbml that might get hijakced by developers
1175
+ * example application: at the topmost parent, then style the children and they should be safe
1176
+ * won't someone think of the children? */
1177
+
1178
+ .resetstyles {
1179
+ padding: 0px;
1180
+ border: 0px;
1181
+ margin: 0px;
1182
+ overflow: visible;
1183
+ background: none;
1184
+ border-spacing: 0;
1185
+ color: #000;
1186
+ cursor: auto;
1187
+ direction: ltr;
1188
+ font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
1189
+ font-size: 11px;
1190
+ font-style: normal;
1191
+ font-variant: normal;
1192
+ font-weight: normal;
1193
+ letter-spacing: normal;
1194
+ text-align: left;
1195
+ text-decoration: none;
1196
+ text-indent: 0;
1197
+ text-transform: none;
1198
+ visibility: visible;
1199
+ white-space: normal;
1200
+ word-spacing: normal;
1201
+ }
1202
+
1203
+ /* ------------------------------| FORMS |------------------------------- */
1204
+
1205
+ form {
1206
+ margin: 0px;
1207
+ padding: 0px; }
1208
+
1209
+ /* DO NOT REMOVE cursor: pointer without talking to rgrover */
1210
+ /* This is required for correct label behavior in Safari 2 */
1211
+ label {
1212
+ cursor: pointer;
1213
+ color: #666666;
1214
+ font-weight: bold; }
1215
+
1216
+ label input {
1217
+ font-weight: normal; }
1218
+
1219
+ .formtable {
1220
+ margin: 0px auto; }
1221
+
1222
+ .formtable {
1223
+ margin: 0px; }
1224
+
1225
+ .formtable td {
1226
+ border: none;
1227
+ margin: 0px;
1228
+ padding: 3px 1px; }
1229
+
1230
+ .formtable td.label {
1231
+ color: #666666;
1232
+ font-weight: bold;
1233
+ padding-right: 10px; }
1234
+
1235
+ .formtable tr.tallrow {
1236
+ vertical-align: top; }
1237
+
1238
+ .formbuttons {
1239
+ text-align: center;
1240
+ margin: 10px 10px; }
1241
+
1242
+ .formbuttons .inputsubmit, .formbuttons .inputbutton {
1243
+ margin: 2px 4px; }
1244
+
1245
+ .formbuttons .securetoggle {
1246
+ padding: 9px 0px 0px 0px; }
1247
+
1248
+
1249
+ /* FORM INPUTS */
1250
+
1251
+ .inputtext,
1252
+ .inputpassword {
1253
+ border: 1px solid #bdc7d8;
1254
+ font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
1255
+ font-size: 11px;
1256
+ padding: 3px; }
1257
+
1258
+ textarea {
1259
+ border: 1px solid #bdc7d8;
1260
+ padding: 3px;
1261
+ font-size: 11px;
1262
+ font-family: "lucida grande", tahoma, verdana, arial, sans-serif; }
1263
+
1264
+ .inputbutton,
1265
+ .inputsubmit {
1266
+ padding: 2px 15px 3px 15px;
1267
+ border-style: solid;
1268
+ border-top-width: 1px;
1269
+ border-left-width: 1px;
1270
+ border-bottom-width: 1px;
1271
+ border-right-width: 1px;
1272
+ border-top-color: #D9DFEA;
1273
+ border-left-color: #D9DFEA;
1274
+ border-bottom-color: #0e1f5b;
1275
+ border-right-color: #0e1f5b;
1276
+ background-color: #3b5998;
1277
+ color: #FFFFFF;
1278
+ font-size: 11px;
1279
+ font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
1280
+ text-align: center; }
1281
+
1282
+ .inputaux {
1283
+ background: #f0f0f0;
1284
+ color: #000;
1285
+ border-top-color: #e7e7e7;
1286
+ border-right-color: #666;
1287
+ border-bottom-color: #666;
1288
+ border-left-color: #e7e7e7; }
1289
+
1290
+ .inputcheckbox {
1291
+ border: 0px; }
1292
+
1293
+ .inputsearch {
1294
+ background: white url(/images/magglass.png) no-repeat 3px 4px;
1295
+ padding-left: 17px; }
1296
+
1297
+ .transparent_png_ie6 {
1298
+ display: none;
1299
+ }
1300
+
1301
+ #inline_flyer {
1302
+ background-color: #efeded;
1303
+ color: #909090;
1304
+ border-bottom: 1px solid #d8dfea;
1305
+ padding: 4px 10px 2px 10px;
1306
+ }
1307
+
1308
+ #inline_flyer .external_link a {
1309
+ text-decoration: none;
1310
+ border-bottom: 1px dotted #3b5998;
1311
+ }
1312
+
1313
+ #inline_flyer .external_link a:hover {
1314
+ text-decoration: none;
1315
+ border-bottom: 1px dotted #efeded;
1316
+ }
1317
+
1318
+ #inline_flyer #abbreviated_body {
1319
+ float: left;
1320
+ width: 430px;
1321
+ }
1322
+
1323
+ #inline_flyer #expander {
1324
+ float: right;
1325
+ }
1326
+
1327
+ #inline_flyer_content {
1328
+ background-color: #efeded;
1329
+ border-bottom: 1px solid #d8dfea;
1330
+ padding: 4px 10px;
1331
+ }
1332
+
1333
+ /* ----------------------------| ERROR PAGE |---------------------------- */
1334
+
1335
+ .error_page #content {
1336
+ padding: 20px; }
1337
+
1338
+ .error_page #error {
1339
+ margin: 0px; }
1340
+
1341
+
1342
+ /* -------------------------------| TABS |------------------------------- */
1343
+
1344
+ #tabs {
1345
+ text-align: center;
1346
+ padding: 4px 0px;
1347
+ margin: 10px 20px 0px;
1348
+ border-bottom: solid 1px #3B5998; }
1349
+
1350
+ #tabs div {
1351
+ display: inline;
1352
+ padding: 0px;
1353
+ margin: 0px; }
1354
+ * html #tabs div {
1355
+ margin: 0 3px; }
1356
+
1357
+
1358
+ #tabs a {
1359
+ margin: 0px;
1360
+ padding: 4px; }
1361
+
1362
+ #tabs .activetab a {
1363
+ color: white;
1364
+ background: #3B5998; }
1365
+
1366
+ #tabs .activetab a:hover {
1367
+ text-decoration: none; }
1368
+
1369
+ #tabs .inactivetab a:hover {
1370
+ background: #D8DFEA;
1371
+ text-decoration: none; }
1372
+
1373
+ #tabs .disabled {
1374
+ color: #c0c0c0;
1375
+ margin: 0px;
1376
+ padding: 4px;
1377
+ text-decoration: none; }
1378
+
1379
+
1380
+ /*--| Toggle Tabs |--------------------------------------------------------------|
1381
+ ==================================================================================*/
1382
+
1383
+ .tabs {
1384
+ padding:3px 0;
1385
+ border-bottom:1px solid #898989;
1386
+ }
1387
+
1388
+ .tabs.top {
1389
+ background: #f7f7f7; }
1390
+
1391
+ .tabs .left_tabs {
1392
+ padding-left:10px;
1393
+ float:left;
1394
+ }
1395
+
1396
+ .tabs .right_tabs {
1397
+ padding-right:10px;
1398
+ float:right;
1399
+ }
1400
+
1401
+ .tabs .back_links {
1402
+ padding-right: 20px;
1403
+ float:right;
1404
+ }
1405
+
1406
+ .toggle_tabs {
1407
+ margin:0;
1408
+ padding:0;
1409
+ list-style:none;
1410
+ text-align:center;
1411
+ display:inline;
1412
+ }
1413
+
1414
+ .toggle_tabs li {
1415
+ display:inline;
1416
+ padding: 2px 0px 3px;
1417
+ background: #f1f1f1 url(/images/components/toggle_tab_gloss.gif) top left repeat-x;
1418
+ }
1419
+
1420
+ .toggle_tabs li a {
1421
+ border:1px solid #898989;
1422
+ border-left:0;
1423
+ color:#333;
1424
+ font-weight:bold;
1425
+ padding:2px 8px 3px 9px;
1426
+ }
1427
+ .toggle_tabs li a small {
1428
+ font-size: 11px;
1429
+ font-weight: normal;
1430
+ }
1431
+
1432
+ .toggle_tabs li a:focus {
1433
+ outline: 0px;
1434
+ }
1435
+
1436
+ .toggle_tabs li.first a {
1437
+ border:1px solid #898989;
1438
+ }
1439
+
1440
+ /* SELECTED TAB */
1441
+
1442
+ .toggle_tabs li a.selected {
1443
+ margin-left:-1px;
1444
+ background:#6d84b4;
1445
+ border:1px solid #3b5998;
1446
+ border-left:1px solid #5973a9;
1447
+ border-right:1px solid #5973a9;
1448
+ color:#fff;
1449
+ }
1450
+
1451
+ .toggle_tabs li.last a.selected {
1452
+ margin-left:-1px;
1453
+ border-left:1px solid #5973a9;
1454
+ border-right:1px solid #36538f;
1455
+ }
1456
+
1457
+ .toggle_tabs li.first a.selected {
1458
+ margin:0;
1459
+ border-left:1px solid #36538f;
1460
+ border-right:1px solid #5973a9;
1461
+ }
1462
+
1463
+ .toggle_tabs li.first.last a.selected {
1464
+ border:1px solid #36538f;
1465
+ }
1466
+
1467
+ .toggle_tabs li a.selected:hover {
1468
+ text-decoration:none;
1469
+ }
1470
+
1471
+ /* DISABLED TAB */
1472
+
1473
+ .toggle_tabs li a.disabled {
1474
+ color: #999;
1475
+ cursor: default;
1476
+ }
1477
+
1478
+ .toggle_tabs li a.disabled:hover {
1479
+ text-decoration:none;
1480
+ }
1481
+
1482
+
1483
+ /* -----------------------------| PAGER PRO |---------------------------- */
1484
+
1485
+ .pagerpro {
1486
+ float: right;
1487
+ list-style: none;
1488
+ margin: 0;
1489
+ padding: 0; }
1490
+
1491
+ .pagerpro li {
1492
+ display: inline;
1493
+ float: left; }
1494
+
1495
+ .pagerpro a {
1496
+ display: block;
1497
+ padding: 3px;
1498
+ padding-bottom: 2px; }
1499
+
1500
+ .pagerpro a:hover {
1501
+ background: #3B5998;
1502
+ border-color: #D8DFEA;
1503
+ border-bottom: 1px solid #3B5998;
1504
+ color: white;
1505
+ text-decoration: none; }
1506
+
1507
+ .pagerpro .current a,
1508
+ .pagerpro .current a:hover {
1509
+ background: transparent;
1510
+ border-color: #3B5998;
1511
+ border-bottom: 2px solid #3B5998;
1512
+ color: #3B5998;
1513
+ font-weight: bold;
1514
+ padding-left: 2px;
1515
+ padding-right: 2px; }
1516
+
1517
+
1518
+ /* -------------------------------| BARS |------------------------------- */
1519
+
1520
+ .summary_bar {
1521
+ border-bottom: 1px solid #D8DFEA;
1522
+ clear: both;
1523
+ padding: 11px 20px 0px;
1524
+ color: black;
1525
+ font-weight: normal;
1526
+ line-height: normal; }
1527
+
1528
+ .summary_bar h1, .summary_bar h2, .summary_bar h3, .summary_bar h4, .summary_bar h5 {
1529
+ font-weight: normal; }
1530
+
1531
+ .summary_bar .summary {
1532
+ color: #333;
1533
+ float: left;
1534
+ padding-top: 3px;
1535
+ padding-bottom: 4px; }
1536
+
1537
+ .summary_bar .summary a {
1538
+ font-weight: normal; }
1539
+
1540
+ .tab_bar {
1541
+ padding: 3px 20px 0px 10px;
1542
+ border-bottom: solid 1px #3B5998; }
1543
+
1544
+ .tab_bar #tabs {
1545
+ margin: 0px 10px;
1546
+ display: inline;
1547
+ float: left;
1548
+ border-bottom: none;
1549
+ }
1550
+
1551
+ .tab_bar .back_links {
1552
+ padding: 4px 0px;
1553
+ float: right; }
1554
+
1555
+ .footer_bar {
1556
+ border-top: 1px solid #D8DFEA;
1557
+ padding: 0 20px; }
1558
+
1559
+ .footer_bar .post_editor {
1560
+ padding-bottom: 13px;
1561
+ padding-top: 13px; }
1562
+
1563
+ .footer_bar .pagerpro a {
1564
+ border-top: 2px solid white;
1565
+ padding-top: 1px;
1566
+ padding-bottom: 0px; }
1567
+
1568
+ .footer_bar .pagerpro a:hover {
1569
+ border-bottom: 2px solid #3B5998;
1570
+ border-top: 2px solid #3B5998; }
1571
+
1572
+ .footer_bar .pagerpro .current a,
1573
+ .footer_bar .pagerpro .current a:hover {
1574
+ border-bottom-color: white;
1575
+ border-top: 2px solid #3B5998; }
1576
+
1577
+ .action_bar {
1578
+ padding: 6px 20px 5px;
1579
+ background: #f7f7f7;
1580
+ border-top: solid 1px #b7b7b7;
1581
+ border-bottom: solid 1px #ccc; }
1582
+
1583
+ .action_bar label { color: #444; }
1584
+
1585
+ /* ---------------------------| SHARE | HIDE |--------------------------- */
1586
+
1587
+ .share_and_hide {
1588
+ font-size: 9px; }
1589
+
1590
+ .s_and_h_big {
1591
+ font-size: 11px; }
1592
+
1593
+ .share_and_hide a {
1594
+ padding: 0px 14px 1px 4px;
1595
+ display: block;
1596
+ float: left;
1597
+ background: white url(/images/share_icon_small.gif) repeat-y right center;
1598
+ border: solid 1px #7f93bc; }
1599
+
1600
+ .s_and_h_big a {
1601
+ background: white url(/images/share_icon.gif) repeat-y right center;
1602
+ padding: 1px 18px 2px 4px;
1603
+ }
1604
+
1605
+ .share_and_hide a.save {
1606
+ background: #eceff5;
1607
+ border-left: none; }
1608
+
1609
+ .share_and_hide a.with_share {
1610
+ border: solid 1px #adbad4;
1611
+ border-left: none; }
1612
+
1613
+ .share_and_hide a:hover {
1614
+ color: #fff;
1615
+ border-color: #3B5998;
1616
+ text-decoration: none;
1617
+ background: #3B5998 url(/images/share_icon_small_hover.gif) repeat-y right center; }
1618
+
1619
+ .s_and_h_big a:hover {
1620
+ background: #3B5998 url(/images/share_icon_hover.gif) repeat-y right center; }
1621
+
1622
+ .share_and_hide a.x_to_hide {
1623
+ border: none;
1624
+ width: 3px;
1625
+ padding: 1px 5px 2px;
1626
+ margin-left: 3px;
1627
+ background: transparent url(/images/x_to_hide.gif) no-repeat center center; }
1628
+
1629
+ .s_and_h_big a.x_to_hide {
1630
+ padding: 2px 5px 3px; }
1631
+
1632
+ .share_and_hide a.x_to_hide:hover {
1633
+ background: #3B5998 url(/images/x_to_hide_hover.gif) no-repeat center center; }
1634
+
1635
+
1636
+ .quail {
1637
+ color: #3B5998;
1638
+ float: left;
1639
+ padding: 3px 0px; }
1640
+
1641
+ .quail a:hover {
1642
+ cursor: default;
1643
+ text-decoration: none; }
1644
+
1645
+
1646
+ /* --------------------------| SQUARE BULLETS |-------------------------- */
1647
+
1648
+ ul.square_bullets {
1649
+ list-style: square;
1650
+ padding-left: 20px;
1651
+ color: #3B5998; }
1652
+
1653
+ ul.square_bullets li {
1654
+ padding: 1px 0px; }
1655
+
1656
+ ul.square_bullets li span {
1657
+ color: black; }
1658
+
1659
+
1660
+ /* ----------------------------| MISCELLANY |---------------------------- */
1661
+
1662
+ /* safari won't do word break in a table without a nested div with a fixed
1663
+ * width. firefox does not understand break-word at all yet, though it is
1664
+ * standard css3. */
1665
+ .datawrap { word-wrap: break-word; }
1666
+
1667
+ /* used in conjunction wit the wbr tag, this will cause line breaks
1668
+ * in safari wherever the wbr tag would cause breaks in FF and IE. */
1669
+ .word_break {
1670
+ display:block;
1671
+ float:left;
1672
+ margin-left: -10px;
1673
+ padding: 0px;
1674
+ }
1675
+
1676
+ /* adjustImage goodness */
1677
+ .img_loading {
1678
+ position: absolute;
1679
+ left: -100000px;
1680
+ top: -100000px;
1681
+ }
1682
+
1683
+ .two_column .right,
1684
+ .two_column .left {
1685
+ float: left; }
1686
+
1687
+ .no_padding {
1688
+ padding: 0px; }
1689
+
1690
+ .see_all {
1691
+ text-align: right; }
1692
+
1693
+ .standard_status_element {
1694
+ visibility: hidden;
1695
+ }
1696
+ .standard_status_element.async_saving {
1697
+ visibility: visible;
1698
+ }
1699
+
1700
+
1701
+ /* -----------------------| WELCOME BUTTONS |---------------------------- */
1702
+
1703
+ .welcome_buttons {
1704
+ display:block;
1705
+ padding:8px 0 0 0; }
1706
+
1707
+ .welcome_buttons a {
1708
+ float:left;
1709
+ display:block;
1710
+ width:170px;
1711
+ /* width:200px; */
1712
+ padding:5px;
1713
+ margin-bottom:5px;
1714
+ color:#666;
1715
+ background-color:#f7f7f7;
1716
+ margin-right:12px;
1717
+ /* margin-right:10px; */
1718
+ border-top:1px solid #ccc;
1719
+ border-bottom:1px solid #ccc; }
1720
+
1721
+ html #content .welcome_buttons a:hover {
1722
+ text-decoration:none;
1723
+ color:#333;
1724
+ background:#d8dfea;
1725
+ border-top:1px solid #3b5998;
1726
+ border-bottom:1px solid #3b5998; }
1727
+
1728
+ .welcome_buttons a h4 {
1729
+ margin:0;
1730
+ padding:0 0 0 14px;
1731
+ font-size:13px;
1732
+ color:#333;
1733
+ background:transparent url(/images/sitetour/tour_arrow.gif) no-repeat 3px 2px;
1734
+ border: 0px; }
1735
+
1736
+ .welcome_buttons a:hover h4 {
1737
+ color:#000; }
1738
+
1739
+ .welcome_buttons a p {
1740
+ font-size:11px;
1741
+ margin:0;
1742
+ padding:3px 0 2px 14px; }
1743
+
1744
+ .welcome_buttons a p span {
1745
+ display:block; }
1746
+
1747
+ .under_login_tour {
1748
+ padding:3px 0 0 0; }
1749
+
1750
+ .under_login_tour a {
1751
+ width:112px;
1752
+ padding:3px 4px 4px 4px;
1753
+ margin:8px 0 0 0; }
1754
+
1755
+ html #book .under_login_tour a:hover {
1756
+ text-decoration:none;
1757
+ color:#333;
1758
+ background:#d8dfea;
1759
+ border-top:1px solid #3b5998;
1760
+ border-bottom:1px solid #3b5998; }
1761
+
1762
+ .under_login_tour a h4 {
1763
+ font-size:11px;
1764
+ padding:0 0 0 9px;
1765
+ background:transparent url(/images/sitetour/tour_arrow_micro.gif) no-repeat 2px 4px; }
1766
+
1767
+ .under_login_tour a p {
1768
+ padding: 3px 0 0 9px; }
1769
+
1770
+ .new_feature_tag {
1771
+ padding: 3px 0 0 6px; background:
1772
+ url(/images/new_feature_tag.gif) no-repeat;
1773
+ height: 14px;
1774
+ float: left;
1775
+ margin-right: 6px;
1776
+ width: 32px; }
1777
+
1778
+ .new_feature_tag div {
1779
+ color: #fff; }
1780
+
1781
+ .new_feature_tag_title {
1782
+ padding-top: 1px;
1783
+ margin-bottom: 3px;
1784
+ font-weight: bold; }
1785
+
1786
+ /* -----------------------| LINK_BUTTON STYLE |---------------------------- */
1787
+
1788
+ a.link_btn_style {
1789
+ color: #fff;
1790
+ font-size: 13px;
1791
+ outline: none;
1792
+ display:block;
1793
+ height:23px;
1794
+ background-repeat: no-repeat;
1795
+ background-position: -1000px -1000px;
1796
+ }
1797
+
1798
+ html[xmlns] a.link_btn_style {
1799
+ display:table;
1800
+ }
1801
+
1802
+ a.link_btn_style div,
1803
+ a.link_btn_style span {
1804
+ cursor:pointer;
1805
+ float:left;
1806
+ line-height:15px;
1807
+ padding: 0px 0px 2px 0px;
1808
+ background-repeat: no-repeat;
1809
+ background-position: bottom left;
1810
+ }
1811
+
1812
+ a.link_btn_style div div {
1813
+ padding:0px 2px 0px 0px;
1814
+ background-position: top right;
1815
+ }
1816
+
1817
+ a.link_btn_style div div div {
1818
+ padding:0px;
1819
+ background-position: top left;
1820
+ }
1821
+
1822
+ a.link_btn_style span.btn_text {
1823
+ display:inline;
1824
+ margin:2px -2px -2px 2px;
1825
+ padding:2px 19px 5px 17px;
1826
+ background-position: bottom right;
1827
+ }
1828
+
1829
+ * html a.link_btn_style span {
1830
+ position:relative;
1831
+ }
1832
+
1833
+ /* ---------------------------| SIGN UP LINK BUTTON |--------------------------- */
1834
+
1835
+ /* preload */
1836
+ a.reg_btn_style {
1837
+ background-image: url(/images/welcome/btn_register_signup_active_bg.gif);
1838
+ }
1839
+
1840
+ a.reg_btn_style span.btn_text {
1841
+ color:#fff;
1842
+ font-weight:normal;
1843
+ }
1844
+
1845
+ a.reg_btn_style div,
1846
+ a.reg_btn_style span {
1847
+ background-image: url(/images/welcome/btn_register_signup_bg.gif);
1848
+ }
1849
+
1850
+ a.reg_btn_style:active div,
1851
+ a.reg_btn_style:active span {
1852
+ background-image: url(/images/welcome/btn_register_signup_active_bg.gif);
1853
+ }
1854
+
1855
+
1856
+ /* ---------------------------| APP SWITCHER |--------------------------- */
1857
+
1858
+ .app_switcher {
1859
+ float: right;
1860
+ z-index: 4;
1861
+ width: 130px;
1862
+ position: relative; }
1863
+
1864
+ .app_switcher .app_switcher_unselected {
1865
+ position: relative;
1866
+ float: left; }
1867
+
1868
+ .app_switcher .app_switcher_button {
1869
+ cursor: pointer;
1870
+ color: #555;
1871
+ float: left;
1872
+ display: block;
1873
+ padding: 0px 5px;
1874
+ margin: 0px;
1875
+ font-weight: bold;
1876
+ line-height: 14px; /* Shared by all divs in the link */
1877
+ text-decoration: none;
1878
+ border: solid 1px #dfdfdf; }
1879
+
1880
+ .app_switcher .app_switcher_button .arrow,
1881
+ .app_switcher .app_switcher_button .name,
1882
+ .app_switcher .app_switcher_button .icon {
1883
+ float: left; }
1884
+
1885
+
1886
+ .app_switcher .app_switcher_unselected .app_switcher_button:hover {
1887
+ border: solid 1px #666;
1888
+ background: #fff url(/images/app_switcher_hover_shadow.gif) repeat-x bottom left; }
1889
+
1890
+ .app_switcher .app_switcher_selected .app_switcher_button {
1891
+ color: white;
1892
+ background: #6d84b4;
1893
+ border: solid 1px #3B5998; }
1894
+
1895
+ .app_switcher .app_switcher_button .arrow {
1896
+ width: 13px;
1897
+ padding: 4px 0px 3px;
1898
+ margin-top: 1px;
1899
+ background: transparent url(/images/app_switcher_down_arrow.gif) no-repeat -11px center; }
1900
+
1901
+ .app_switcher .app_switcher_selected .app_switcher_button .arrow {
1902
+ background-position: 2px center; }
1903
+
1904
+ .app_switcher .app_switcher_button .name {
1905
+ padding: 4px 0px 4px 6px; }
1906
+
1907
+ .app_switcher .app_switcher_button .icon {
1908
+ width: 16px;
1909
+ padding: 4px 0px;
1910
+ background-position: -16px center;
1911
+ background-repeat: no-repeat; }
1912
+
1913
+ .app_switcher .app_switcher_selected .app_switcher_button .icon {
1914
+ background-position: 0px center; }
1915
+
1916
+ .app_switcher_menu, #app_switcher_menu_toc {
1917
+ position: absolute;
1918
+ background: white;
1919
+ border: solid 1px #3B5998;
1920
+ z-index: 100;
1921
+ padding: 2px 0px 6px;
1922
+ width: 136px; }
1923
+
1924
+ .app_switcher_menu .menu_list_header {
1925
+ color: #555;
1926
+ font-size: 9px;
1927
+ border-bottom: solid 1px #d8dfea;
1928
+ padding: 2px 7px 3px;
1929
+ margin: 0px 0px 6px; }
1930
+
1931
+ .app_switcher_menu a {
1932
+ display: block;
1933
+ line-height: 14px;
1934
+ padding: 1px 7px;
1935
+ }
1936
+
1937
+ .app_switcher_menu a:hover {
1938
+ color: white;
1939
+ text-decoration: none;
1940
+ background: #6D84B4;
1941
+ margin: 0px -1px;
1942
+ border-right: solid 1px #3B5998;
1943
+ border-left: solid 1px #3B5998;
1944
+ cursor: pointer; }
1945
+
1946
+ .app_switcher_menu .inline_stuff:hover {
1947
+ background: none;
1948
+ color: #3B5998;
1949
+ }
1950
+
1951
+ .app_switcher_menu .inline_stuff .app_name_text {
1952
+ display:inline;
1953
+ }
1954
+
1955
+ .app_switcher_menu .inline_stuff .app_name_text:hover {
1956
+ background: none;
1957
+ text-decoration: underline;
1958
+ color: #3B5998;
1959
+ display: inline;
1960
+ }
1961
+
1962
+ .app_switcher_menu .side_space,
1963
+ .app_switcher_menu .app_icon,
1964
+ .app_switcher_menu .name {
1965
+ float: left; }
1966
+
1967
+ .app_switcher_menu .side_space {
1968
+ width: 7px;
1969
+ padding: 4px 0px;
1970
+ margin: 0px 3px; }
1971
+
1972
+ .app_switcher_menu .selector_arrow {
1973
+ background: url(/images/rightarrow.gif) no-repeat -7px center; }
1974
+
1975
+ .app_switcher_menu a:hover .selector_arrow {
1976
+ background: url(/images/rightarrow.gif) no-repeat 0px center; }
1977
+
1978
+ .app_switcher_menu .app_icon {
1979
+ width: 16px;
1980
+ padding: 4px 0px;
1981
+ margin: 0px 0px 0px 2px;
1982
+ background: url(/images/icons/hidden.gif) no-repeat -16px center; }
1983
+
1984
+ .app_switcher_menu a:hover .app_icon {
1985
+ background-position: 0px center; }
1986
+
1987
+ .app_switcher_menu .name {
1988
+ padding: 4px 0px;
1989
+ margin: 0px 0px 0px 5px; }
1990
+
1991
+
1992
+ .app_switcher_menu .profile_box_name {
1993
+ width: 95px;
1994
+ }
1995
+
1996
+ /* ---------------------------| GRAY HEADER |--------------------------- */
1997
+
1998
+ .grayheader {
1999
+ border-bottom: 1px solid #ccc;
2000
+ margin: 0px 0px 10px;
2001
+ background: #f7f7f7;
2002
+ padding: 15px 20px 10px
2003
+ }
2004
+
2005
+ .grayheader h2 {
2006
+ font-size:13px;
2007
+ margin: 0px 0px 2px;
2008
+ padding:0px;
2009
+ }
2010
+
2011
+ .grayheader .left_side {
2012
+ float: left;
2013
+ width: 380px;
2014
+ }
2015
+
2016
+ .grayheader .right_side {
2017
+ float: right;
2018
+ width: 200px;
2019
+ }
2020
+
2021
+ .grayheader .right_side p {
2022
+ text-align: right;
2023
+ }
2024
+
2025
+ .grayheader p {
2026
+ display: block;
2027
+ color: gray;
2028
+ font-size: 11px;
2029
+ margin: 2px 0px;
2030
+ padding: 0px;
2031
+ }
2032
+
2033
+
2034
+ /* ---------------------------| FLYERS |--------------------------- */
2035
+
2036
+ #announce {
2037
+ width: 134px; }
2038
+
2039
+ #announce .advert {
2040
+ background:#F9F9F9 none repeat scroll 0%;
2041
+ border: solid 1px #D8DFEA;
2042
+ border-bottom: solid 1px #3B5998;
2043
+ display: block;
2044
+ line-height:14px;
2045
+ margin: 0px 0px 7px 14px;
2046
+ width: 120px;
2047
+ padding: 5px 0px 2px 0px;
2048
+
2049
+ }
2050
+
2051
+ #announce .advert .flyers_clickable a {
2052
+ text-decoration: none;
2053
+ cursor: pointer;
2054
+ }
2055
+
2056
+ #announce .advert .flyers_clickable a:hover {
2057
+ text-decoration: none;
2058
+ }
2059
+
2060
+ #announce h4 {
2061
+ border-bottom:1px solid #D8DFEA;
2062
+ color:#3B5998;
2063
+ font-size:13px;
2064
+ font-weight:bold;
2065
+ margin: 0px 5px 3px 5px;
2066
+ padding:0px 0px 3px;
2067
+ text-align:center;
2068
+ }
2069
+
2070
+ #announce h3 {
2071
+ color:black;
2072
+ font-weight:bold;
2073
+ text-align:center;
2074
+ padding: 0px 0px 3px;
2075
+ margin: 4px 5px 3px;
2076
+ font-size: 11px;
2077
+ }
2078
+
2079
+ #announce p {
2080
+ color: #222222;
2081
+ margin: 0px 0px 3px 5px;
2082
+ overflow: hidden;
2083
+ width: 110px;
2084
+ word-wrap: break-word;
2085
+ }
2086
+
2087
+ .sponsors {
2088
+ text-align: center;
2089
+ }
2090
+
2091
+ .sponsor_absolute {
2092
+ position: absolute;
2093
+ top: 302px;
2094
+ }
2095
+
2096
+ #ssponsor {
2097
+ width: 120px;
2098
+ font-size: 11px;
2099
+ text-align: left;
2100
+ padding-top: 0px; }
2101
+
2102
+ .credit {
2103
+ text-align: center;
2104
+ }
2105
+
2106
+ #ssponsor .seeall {
2107
+ margin: 5px 0px;
2108
+ text-align: right;
2109
+ }
2110
+
2111
+ #ssponsor .banner_ad {
2112
+ margin-left: 14px;
2113
+ margin-right: 12px;
2114
+ }
2115
+
2116
+
2117
+ #ssponsor .banner_ad .advert {
2118
+ margin-left: 0px;
2119
+ }
2120
+
2121
+ .footer_ad {
2122
+ clear: both;
2123
+ }
2124
+ .footer_ad .advertise_ads {
2125
+ padding: 0 0 4px 36px;
2126
+ text-align: left;
2127
+ }
2128
+
2129
+ /* ---------------------------| DROP-DOWN MENUS |--------------------------- */
2130
+
2131
+
2132
+ .drop_down_menu {
2133
+ background: white;
2134
+ position: absolute;
2135
+ margin-top: -1px;
2136
+ border: solid 1px #3B5998;
2137
+ width: 150px;
2138
+ padding: 5px 0px;
2139
+ }
2140
+
2141
+ .drop_down_menu .menu_element {
2142
+ padding: 3px 7px;
2143
+ }
2144
+
2145
+ .drop_down_menu .menu_element:hover {
2146
+ color: white;
2147
+ background: #3B5998;
2148
+ cursor: pointer;
2149
+ }
2150
+
2151
+ .drop_down_menu .menu_element:hover a {
2152
+ color: white;
2153
+ text-decoration: none;
2154
+ }
2155
+
2156
+
2157
+ /* ---------------------------| NOTES |--------------------------- */
2158
+
2159
+ .note_dialog {
2160
+ background:#FFFFFF none repeat scroll 0%;
2161
+ border:1px solid #BDC7D8;
2162
+ color:#444444;
2163
+ margin:0pt 10px 10px;
2164
+ padding:10px;
2165
+ }
2166
+
2167
+ /* ---------------------------| RSS |--------------------------- */
2168
+
2169
+ .syndication_feed a {
2170
+ background: url(/images/icons/feed.gif) no-repeat 0px 0.3em;
2171
+ display: block;
2172
+ padding: 3px 0px 4px 20px;
2173
+ }
2174
+
2175
+ .syndication_right {
2176
+ background: url(/images/icons/feed.gif) no-repeat center right;
2177
+ padding-right: 20px;
2178
+ }
2179
+
2180
+ #syndication_sidebar {
2181
+ padding-left: 5px;
2182
+ }
2183
+
2184
+ #syndication_sidebar .learn_more {
2185
+ font-size: 9px;
2186
+ padding: 0px 0px 2px 20px;
2187
+ }
2188
+
2189
+ #syndication_sidebar p {
2190
+ color: #333;
2191
+ padding: 0px;
2192
+ margin: 0px;
2193
+ }
2194
+
2195
+ #syndication_sidebar .syndication_explanation {
2196
+ margin: 0px 15px 0px 0px;
2197
+ padding: 0px;
2198
+ }
2199
+
2200
+ .syndication_divider {
2201
+ border-top: 1px solid #CCCCCC;
2202
+ }
2203
+
2204
+ #syndication_sidebar h2 {
2205
+ color: #333;
2206
+ margin: 0px;
2207
+ padding: 0px 0px 5px 0px;
2208
+ font-size: 11px;
2209
+ }
2210
+
2211
+ /* -------------------------| MISC |--------------------------------- */
2212
+
2213
+ .findfriends_block {
2214
+ text-align: left;
2215
+ margin: auto;
2216
+ }
2217
+
2218
+
2219
+ .findfriends_block li {
2220
+ line-height:18px;
2221
+ list-style-image:none;
2222
+ list-style-position:outside;
2223
+ list-style-type:none;
2224
+ }
2225
+
2226
+ .clickable {
2227
+ cursor: pointer;
2228
+ }
2229
+
2230
+ /* -------------------------| MISC FBML |------------------------------ */
2231
+
2232
+ input.request_form_submit {
2233
+ background: #3B5998 url(/images/icons/request_button_icon.gif) no-repeat 8px 6px;
2234
+ padding: 3px 6px 3px 26px;
2235
+ overflow: visible; /* for ie: http://jehiah.cz/archive/button-width-in-ie */
2236
+ }
2237
+
2238
+
2239
+ /* ----------------------| GENERIC FLASH FALLBACK |---------------------- */
2240
+
2241
+
2242
+ .flash_fallback {
2243
+ background: #f4f8fc;
2244
+ border: 1px solid #d8dfea;
2245
+ clear: both;
2246
+ }
2247
+ .flash_fallback_border {
2248
+ border: 1px solid white;
2249
+ padding: 5px 10px 5px 10px;
2250
+ }
2251
+ .flash_fallback_header {
2252
+ background: transparent url(/images/icons/flashplayer.gif) no-repeat center left;
2253
+ color: #282c30;
2254
+ font-size: 11px;
2255
+ font-weight: bold;
2256
+ line-height: 14px;
2257
+ padding: 5px 0px 5px 22px;
2258
+ text-align: left;
2259
+ }
2260
+ .flash_fallback_explanation {
2261
+ line-height: 14px;
2262
+ margin-top: -3px;
2263
+ padding: 0px 0px 5px 22px;
2264
+ text-align: left;
2265
+ }
2266
+ .flash_fallback_button {
2267
+ padding: 3px 0px 5px 0px;
2268
+ text-align: center;
2269
+ }
2270
+ .expressinstall_swf {
2271
+ padding: 15px 0px 15px 0px;
2272
+ text-align: center;
2273
+ }
2274
+
2275
+
2276
+ /* -------------------------| SOCIAL ADS |------------------------------ */
2277
+
2278
+ .ad_story {
2279
+ width: 150px;
2280
+ display: block;
2281
+ padding: 0px;
2282
+ background-color: #f7f7f7;
2283
+ }
2284
+
2285
+ .ad_story:hover {
2286
+ text-decoration: none;
2287
+ }
2288
+
2289
+ .ad_story .social_ad_story {
2290
+ position: relative;
2291
+ z-index: 4;
2292
+ border-top: solid 1px #ccc;
2293
+ padding: 7px 7px;
2294
+ border-bottom: solid 1px #eaeaea;
2295
+ margin-bottom: -1px;
2296
+ }
2297
+
2298
+ .ad_story .social_ad_profile {
2299
+ width: 50px;
2300
+ overflow: hidden;
2301
+ margin-right: 6px;
2302
+ padding-top: 3px;
2303
+ float: left;
2304
+ }
2305
+
2306
+ .ad_story .social_ad_image {
2307
+ margin: 0px auto;
2308
+ text-align: left;
2309
+ }
2310
+
2311
+ .ad_story .social_ad_text {
2312
+ color: #666;
2313
+ line-height: 14px;
2314
+ float: left;
2315
+ overflow: hidden;
2316
+ width: 80px;
2317
+ }
2318
+
2319
+ .ad_story .social_ad_text strong {
2320
+ font-weight: bold;
2321
+ color: #444;
2322
+ }
2323
+
2324
+
2325
+ .ad_story .social_ad_advert {
2326
+ z-index: 3;
2327
+ position: relative;
2328
+ border-top: solid 1px #ccc;
2329
+ border-bottom: solid 1px #ccc;
2330
+ padding: 7px 7px;
2331
+ }
2332
+
2333
+ /* both cascades are necessary because
2334
+ #sidebar h2 will bind more tightly than
2335
+ .social_ad_advert h2, yet the latter style
2336
+ is used across the site */
2337
+
2338
+ #sidebar .social_ad_advert h2,
2339
+ .social_ad_advert h2 {
2340
+ color: #3B5998;
2341
+ display: block;
2342
+ float: none;
2343
+ font-size: 12px;
2344
+ overflow: hidden;
2345
+ padding-bottom: 7px;
2346
+ text-align: left;
2347
+ }
2348
+
2349
+ #sidebar .ad_story:hover .social_ad_advert h2,
2350
+ .ad_story:hover .social_ad_advert h2 {
2351
+ text-decoration: underline;
2352
+ }
2353
+
2354
+ #sidebar .social_ad_advert .social_ad_advert_text,
2355
+ .social_ad_advert .social_ad_advert_text {
2356
+ color: #333;
2357
+ overflow: hidden;
2358
+ padding-top: 5px;
2359
+ }
2360
+
2361
+ .below_social_ad {
2362
+ width: 150px;
2363
+ padding-top: 3px;
2364
+ }
2365
+
2366
+ .below_social_ad .sponsored_links {
2367
+ font-size: 9px;
2368
+ float: left;
2369
+ padding: 2px 0px 0px 3px;
2370
+ width: 105px;
2371
+ }
2372
+
2373
+ .below_social_ad .sponsored_question {
2374
+ float: right;
2375
+ padding-right: 3px;
2376
+ }
2377
+
2378
+ .below_social_ad .sponsored_question a {
2379
+ background: transparent url(/images/question_mark_informational_off.gif) no-repeat scroll right bottom;
2380
+ display: block;
2381
+ height: 12px;
2382
+ text-decoration:none;
2383
+ width: 12px;
2384
+ }
2385
+
2386
+ /** ads feedback test **/
2387
+ .below_social_ad #ads_feedback {
2388
+ float: right;
2389
+ padding-right: 1px;
2390
+ }
2391
+
2392
+ .below_social_ad #ads_feedback .thumbs_up {
2393
+ background: url(/images/icons/promote_t2_off.png) no-repeat scroll;
2394
+ display: block;
2395
+ float: left;
2396
+ height: 18px;
2397
+ vertical-align: top;
2398
+ width: 18px;
2399
+
2400
+ }
2401
+
2402
+ .below_social_ad #ads_feedback .thumbs_up:hover {
2403
+ background: url(/images/icons/promote_t2_hover.png) no-repeat scroll;
2404
+ }
2405
+
2406
+ .below_social_ad #ads_feedback .ex {
2407
+ background: url(/images/x_to_hide_gray.gif) no-repeat scroll;
2408
+ display: block;
2409
+ float: left;
2410
+ height: 18px;
2411
+ margin-top: 1px;
2412
+ vertical-align: top;
2413
+ width: 15px;
2414
+ }
2415
+
2416
+ .below_social_ad #ads_feedback .ex:hover {
2417
+ background: url(/images/x_to_hide_hover.gif) no-repeat scroll;
2418
+ }
2419
+
2420
+ .below_social_ad #ads_feedback .pipe {
2421
+ display:block;
2422
+ color: #ccc;
2423
+ float: left;
2424
+ padding: 0px 0px;
2425
+ vertical-align: top;
2426
+ }
2427
+
2428
+ .below_social_ad #next_ad_button {
2429
+ float: right;
2430
+ padding: 1px 10px 0 0;
2431
+ }
2432
+
2433
+ .feedback_dialog select {
2434
+ margin-left: 5px;
2435
+ }
2436
+
2437
+ /** end -- ads feedback test **/
2438
+
2439
+ .above_social_ad {
2440
+ width: 130px;
2441
+ line-height: 14px;
2442
+ padding: 3px 7px;
2443
+ }
2444
+
2445
+ .above_social_ad .sponsored_links {
2446
+ font-size: 9px;
2447
+ float: left;
2448
+ padding-top: 2px;
2449
+ }
2450
+
2451
+ .above_social_ad .next_link {
2452
+ float: right;
2453
+ }
2454
+
2455
+ #sidebar .advertise_ads {
2456
+ font-size: 9px;
2457
+ margin: 0 0 3px 15px;
2458
+ text-align: left;
2459
+ }
2460
+
2461
+
2462
+ /********************** INTERNAL ******************************/
2463
+
2464
+ .latest_to_production_link {
2465
+ overflow: hidden;
2466
+ display: block;
2467
+ position: absolute;
2468
+ z-index: 1000;
2469
+ top: 0px;
2470
+ left: 0px;
2471
+ }
2472
+
2473
+ #friday_snipe {
2474
+ overflow: visible;
2475
+ display: block;
2476
+ width: 94px;
2477
+ height: 94px;
2478
+ margin: 0px;
2479
+ padding: 0px;
2480
+ position: absolute;
2481
+ z-index: 1000;
2482
+ top: 0px;
2483
+ right: 0px;
2484
+ }
2485
+
2486
+ #friday_snipe .inner_image {
2487
+ width: 66px;
2488
+ height: 184px;
2489
+ position: absolute;
2490
+ margin: 0px;
2491
+ padding: 0px;
2492
+ display: block;
2493
+ z-index: 1001;
2494
+ top: 0px;
2495
+ right: 0px;
2496
+ }
2497
+
2498
+
2499
+
2500
+ /*********************** TOOLTIP *******************************/
2501
+
2502
+ .tooltip_pro {
2503
+ position: absolute;
2504
+ z-index: 35;
2505
+ display:none;
2506
+ }
2507
+
2508
+ .tooltip_pro .tooltip_text {
2509
+ padding: 3px 8px 3px 9px;
2510
+ text-align: center;
2511
+ white-space: nowrap;
2512
+ left: 0px;
2513
+ color: white;
2514
+ font-size: 11px;
2515
+ background: #282828;
2516
+ position: relative;
2517
+ }
2518
+
2519
+ .tooltip_pro .tooltip_pointer {
2520
+ height: 4px;
2521
+ width: 7px;
2522
+ font-size: 1px;
2523
+ margin: 0px auto 0px;
2524
+ padding: 0px;
2525
+ background: transparent url(/images/dark-pointer.gif) top center no-repeat;
2526
+ }
2527
+
2528
+ /**
2529
+ * This class is added to unfocused text inputs by the Javascript
2530
+ * TextInputControl class in order to give the placeholder text a placeholdery
2531
+ * look while it is placeholdering in place.
2532
+ *
2533
+ * @author epriestley
2534
+ */
2535
+ .DOMControl_placeholder {
2536
+ color: #777777;
2537
+ }
2538
+
2539
+ /**
2540
+ * Added to the "shadow div" used by TextAreaControl to calculate font metrics,
2541
+ * this div needs
2542
+ *
2543
+ * @author epriestley
2544
+ */
2545
+ .DOMControl_shadow {
2546
+ position: absolute;
2547
+ left: -10000px;
2548
+ top: -10000px;
2549
+ }
2550
+
2551
+
2552
+ /* ---------------------------| ACTIONS PRO |---------------------------- */
2553
+
2554
+ .actionspro {
2555
+ list-style: none;
2556
+ margin: 0px;
2557
+ padding: 0px; }
2558
+
2559
+ .actionspro li { border-bottom: 1px solid #D8DFEA; }
2560
+
2561
+ .actionspro a {
2562
+ background: transparent;
2563
+ display: block;
2564
+ margin: 0px;
2565
+ padding: 2px 3px;
2566
+ text-decoration: none; }
2567
+
2568
+ .actionspro a:hover {
2569
+ background: #3b5998;
2570
+ color: white;
2571
+ text-decoration: none; }
2572
+
2573
+ .actionspro .inactive {
2574
+ padding: 2px 3px;
2575
+ color: gray; }
2576
+
2577
+
2578
+
2579
+ /* Here, take it. It's a goodbye gift. Go clean. ------------------------- */