├── lib ├── tasks │ ├── .gitkeep │ └── cron.rake └── batched.rb ├── public ├── favicon.ico ├── stylesheets │ └── .gitkeep ├── images │ ├── date.png │ ├── dashed.png │ ├── background.jpg │ ├── eventdate.gif │ ├── iconsprite.png │ ├── appsterdam_maps.png │ ├── date_upcoming.png │ ├── eventlocation.gif │ └── twitter-dashed.png ├── javascripts │ ├── tinymce │ │ └── jscripts │ │ │ └── tiny_mce │ │ │ ├── plugins │ │ │ ├── example │ │ │ │ ├── langs │ │ │ │ │ ├── en.js │ │ │ │ │ └── en_dlg.js │ │ │ │ ├── img │ │ │ │ │ └── example.gif │ │ │ │ ├── js │ │ │ │ │ └── dialog.js │ │ │ │ ├── editor_plugin.js │ │ │ │ └── dialog.htm │ │ │ ├── spellchecker │ │ │ │ ├── css │ │ │ │ │ └── content.css │ │ │ │ └── img │ │ │ │ │ └── wline.gif │ │ │ ├── media │ │ │ │ ├── moxieplayer.swf │ │ │ │ ├── css │ │ │ │ │ └── media.css │ │ │ │ └── js │ │ │ │ │ └── embed.js │ │ │ ├── advimage │ │ │ │ ├── img │ │ │ │ │ └── sample.gif │ │ │ │ ├── css │ │ │ │ │ └── advimage.css │ │ │ │ ├── editor_plugin.js │ │ │ │ └── langs │ │ │ │ │ └── en_dlg.js │ │ │ ├── emotions │ │ │ │ ├── img │ │ │ │ │ ├── smiley-cry.gif │ │ │ │ │ ├── smiley-cool.gif │ │ │ │ │ ├── smiley-frown.gif │ │ │ │ │ ├── smiley-kiss.gif │ │ │ │ │ ├── smiley-sealed.gif │ │ │ │ │ ├── smiley-smile.gif │ │ │ │ │ ├── smiley-wink.gif │ │ │ │ │ ├── smiley-yell.gif │ │ │ │ │ ├── smiley-innocent.gif │ │ │ │ │ ├── smiley-laughing.gif │ │ │ │ │ ├── smiley-embarassed.gif │ │ │ │ │ ├── smiley-money-mouth.gif │ │ │ │ │ ├── smiley-surprised.gif │ │ │ │ │ ├── smiley-tongue-out.gif │ │ │ │ │ ├── smiley-undecided.gif │ │ │ │ │ └── smiley-foot-in-mouth.gif │ │ │ │ ├── langs │ │ │ │ │ └── en_dlg.js │ │ │ │ ├── js │ │ │ │ │ └── emotions.js │ │ │ │ └── editor_plugin.js │ │ │ ├── advhr │ │ │ │ ├── langs │ │ │ │ │ └── en_dlg.js │ │ │ │ ├── css │ │ │ │ │ └── advhr.css │ │ │ │ ├── editor_plugin.js │ │ │ │ └── js │ │ │ │ │ └── rule.js │ │ │ ├── inlinepopups │ │ │ │ └── skins │ │ │ │ │ └── clearlooks2 │ │ │ │ │ └── img │ │ │ │ │ ├── alert.gif │ │ │ │ │ ├── button.gif │ │ │ │ │ ├── buttons.gif │ │ │ │ │ ├── confirm.gif │ │ │ │ │ ├── corners.gif │ │ │ │ │ ├── vertical.gif │ │ │ │ │ └── horizontal.gif │ │ │ ├── searchreplace │ │ │ │ ├── css │ │ │ │ │ └── searchreplace.css │ │ │ │ ├── langs │ │ │ │ │ └── en_dlg.js │ │ │ │ └── editor_plugin.js │ │ │ ├── table │ │ │ │ ├── css │ │ │ │ │ ├── table.css │ │ │ │ │ ├── cell.css │ │ │ │ │ └── row.css │ │ │ │ ├── js │ │ │ │ │ └── merge_cells.js │ │ │ │ └── merge_cells.htm │ │ │ ├── paste │ │ │ │ ├── langs │ │ │ │ │ └── en_dlg.js │ │ │ │ ├── pasteword.htm │ │ │ │ ├── js │ │ │ │ │ ├── pastetext.js │ │ │ │ │ └── pasteword.js │ │ │ │ └── pastetext.htm │ │ │ ├── xhtmlxtras │ │ │ │ ├── css │ │ │ │ │ ├── attributes.css │ │ │ │ │ └── popup.css │ │ │ │ ├── js │ │ │ │ │ ├── abbr.js │ │ │ │ │ ├── cite.js │ │ │ │ │ ├── acronym.js │ │ │ │ │ ├── del.js │ │ │ │ │ └── ins.js │ │ │ │ └── langs │ │ │ │ │ └── en_dlg.js │ │ │ ├── autosave │ │ │ │ └── langs │ │ │ │ │ └── en.js │ │ │ ├── template │ │ │ │ ├── blank.htm │ │ │ │ ├── css │ │ │ │ │ └── template.css │ │ │ │ ├── langs │ │ │ │ │ └── en_dlg.js │ │ │ │ └── template.htm │ │ │ ├── print │ │ │ │ └── editor_plugin.js │ │ │ ├── advlink │ │ │ │ ├── css │ │ │ │ │ └── advlink.css │ │ │ │ ├── editor_plugin.js │ │ │ │ └── langs │ │ │ │ │ └── en_dlg.js │ │ │ ├── preview │ │ │ │ ├── preview.html │ │ │ │ ├── example.html │ │ │ │ ├── editor_plugin.js │ │ │ │ └── jscripts │ │ │ │ │ └── embed.js │ │ │ ├── iespell │ │ │ │ └── editor_plugin.js │ │ │ ├── style │ │ │ │ ├── css │ │ │ │ │ └── props.css │ │ │ │ ├── editor_plugin.js │ │ │ │ └── langs │ │ │ │ │ └── en_dlg.js │ │ │ ├── nonbreaking │ │ │ │ └── editor_plugin.js │ │ │ ├── autoresize │ │ │ │ └── editor_plugin.js │ │ │ ├── directionality │ │ │ │ └── editor_plugin.js │ │ │ ├── visualchars │ │ │ │ └── editor_plugin.js │ │ │ ├── pagebreak │ │ │ │ └── editor_plugin.js │ │ │ ├── tabfocus │ │ │ │ └── editor_plugin.js │ │ │ ├── noneditable │ │ │ │ └── editor_plugin.js │ │ │ ├── save │ │ │ │ └── editor_plugin.js │ │ │ ├── wordcount │ │ │ │ └── editor_plugin.js │ │ │ ├── insertdatetime │ │ │ │ └── editor_plugin.js │ │ │ ├── legacyoutput │ │ │ │ └── editor_plugin.js │ │ │ ├── autolink │ │ │ │ └── editor_plugin.js │ │ │ └── advlist │ │ │ │ └── editor_plugin.js │ │ │ ├── themes │ │ │ ├── simple │ │ │ │ ├── img │ │ │ │ │ └── icons.gif │ │ │ │ ├── skins │ │ │ │ │ ├── o2k7 │ │ │ │ │ │ ├── img │ │ │ │ │ │ │ └── button_bg.png │ │ │ │ │ │ └── content.css │ │ │ │ │ └── default │ │ │ │ │ │ ├── content.css │ │ │ │ │ │ └── ui.css │ │ │ │ ├── langs │ │ │ │ │ └── en.js │ │ │ │ └── editor_template.js │ │ │ └── advanced │ │ │ │ ├── img │ │ │ │ ├── flash.gif │ │ │ │ ├── icons.gif │ │ │ │ ├── iframe.gif │ │ │ │ ├── trans.gif │ │ │ │ ├── video.gif │ │ │ │ ├── pagebreak.gif │ │ │ │ ├── quicktime.gif │ │ │ │ ├── realmedia.gif │ │ │ │ ├── shockwave.gif │ │ │ │ ├── colorpicker.jpg │ │ │ │ └── windowsmedia.gif │ │ │ │ ├── skins │ │ │ │ ├── default │ │ │ │ │ └── img │ │ │ │ │ │ ├── items.gif │ │ │ │ │ │ ├── tabs.gif │ │ │ │ │ │ ├── buttons.png │ │ │ │ │ │ ├── menu_arrow.gif │ │ │ │ │ │ ├── menu_check.gif │ │ │ │ │ │ └── progress.gif │ │ │ │ ├── o2k7 │ │ │ │ │ ├── img │ │ │ │ │ │ ├── button_bg.png │ │ │ │ │ │ ├── button_bg_black.png │ │ │ │ │ │ └── button_bg_silver.png │ │ │ │ │ ├── ui_silver.css │ │ │ │ │ └── ui_black.css │ │ │ │ └── highcontrast │ │ │ │ │ └── content.css │ │ │ │ ├── js │ │ │ │ ├── anchor.js │ │ │ │ └── source_editor.js │ │ │ │ ├── anchor.htm │ │ │ │ ├── source_editor.htm │ │ │ │ ├── shortcuts.htm │ │ │ │ └── langs │ │ │ │ └── en_dlg.js │ │ │ └── utils │ │ │ └── editable_selects.js │ ├── application.js │ └── use_tinymce_init.js ├── robots.txt ├── 403.html ├── 401.html ├── 422.html ├── 404.html └── 500.html ├── vendor └── plugins │ └── .gitkeep ├── test ├── fixtures │ ├── events.yml │ ├── articles.yml │ ├── classifieds.yml │ └── members.yml ├── unit │ ├── helpers │ │ ├── events_helper_test.rb │ │ ├── article_helper_test.rb │ │ ├── classified_helper_test.rb │ │ └── application_helper_test.rb │ ├── spam_report_test.rb │ └── classified_test.rb ├── performance │ └── browsing_test.rb ├── functional │ ├── events_controller_test.rb │ ├── commands_controller_test.rb │ ├── article_controller_test.rb │ └── application_controller_test.rb ├── test_helper.rb ├── test_helper │ ├── authentication.rb │ └── fake_twitter.rb └── lib │ ├── batched_test.rb │ └── meetup_test.rb ├── config ├── initializers │ ├── ext.rb │ ├── twitter.rb │ ├── mime_types.rb │ ├── meetup.rb │ ├── inflections.rb │ ├── backtrace_silencers.rb │ ├── session_store.rb │ ├── ical_subscriptions.rb │ └── secret_token.rb ├── environment.rb ├── sphinx.yml ├── boot.rb ├── locales │ └── en.yml ├── database.yml ├── newrelic.yml ├── environments │ ├── development.rb │ ├── test.rb │ └── production.rb └── routes.rb ├── app ├── views │ ├── articles │ │ ├── show.html.erb │ │ ├── index.html.erb │ │ ├── edit.html.erb │ │ ├── new.html.erb │ │ ├── _article.html.erb │ │ └── _form.html.erb │ ├── members │ │ ├── _page.html.erb │ │ ├── new.html.erb │ │ ├── exists.html.erb │ │ ├── unauthorized.html.erb │ │ ├── edit.html.erb │ │ ├── _member.html.erb │ │ ├── _select.html.erb │ │ └── index.html.erb │ ├── classifieds │ │ ├── new.html.erb │ │ ├── edit.html.erb │ │ ├── show.html.erb │ │ ├── _select.html.erb │ │ ├── _classified.html.erb │ │ ├── _form.html.erb │ │ └── index.html.erb │ ├── sessions │ │ └── unauthorized.html.erb │ ├── spam_reports │ │ └── index.html.erb │ └── events │ │ ├── _event.html.erb │ │ └── show.html.erb ├── helpers │ ├── article_helper.rb │ ├── classified_helper.rb │ ├── application_helper.rb │ ├── events_helper.rb │ └── member_helper.rb ├── models │ ├── spam_report.rb │ ├── article.rb │ ├── classified.rb │ └── selection.rb ├── controllers │ ├── sessions_controller.rb │ ├── spam_reports_controller.rb │ ├── commands_controller.rb │ ├── events_controller.rb │ ├── application_controller.rb │ ├── articles_controller.rb │ └── classifieds_controller.rb └── concerns │ └── twitter.rb ├── Procfile ├── design ├── LICENSE └── public │ ├── post_classified.html │ └── classifieds.html ├── config.ru ├── .gitignore ├── db └── migrate │ ├── 20110708102633_add_platforms_to_members.rb │ ├── 20110708124407_add_work_types_to_members.rb │ ├── 20110712095001_add_role_to_members.rb │ ├── 20110712142938_add_as_new_to_members.rb │ ├── 20110708103447_add_job_offers_url_to_members.rb │ ├── 20110712124246_rename_spam_markings_to_spam_reports.rb │ ├── 20110707114730_change_members_twitter_id_to_string.rb │ ├── 20110708112814_add_available_for_hire_to_members.rb │ ├── 20110712104816_add_marked_as_spam_to_members.rb │ ├── 20110712090310_create_spam_markings.rb │ ├── 20110707165738_add_entity_and_work_location_to_members.rb │ ├── 20110929152144_create_articles.rb │ ├── 20110712143907_create_classifieds.rb │ ├── 20110712103803_rename_platforms_and_work_types.rb │ ├── 20110707102601_create_members.rb │ └── 20110727153538_create_events.rb ├── script ├── rails ├── refresh ├── fetch_twitter_profile_data └── seed_members.rb ├── .kick ├── Gemfile ├── TODO ├── Rakefile ├── LICENSE └── README.rdoc /lib/tasks/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /vendor/plugins/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/stylesheets/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test/fixtures/events.yml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /config/initializers/ext.rb: -------------------------------------------------------------------------------- 1 | require 'batched' -------------------------------------------------------------------------------- /app/views/articles/show.html.erb: -------------------------------------------------------------------------------- 1 | <%= render @article %> -------------------------------------------------------------------------------- /app/helpers/article_helper.rb: -------------------------------------------------------------------------------- 1 | module ArticleHelper 2 | end 3 | -------------------------------------------------------------------------------- /Procfile: -------------------------------------------------------------------------------- 1 | web: bundle exec rails server -p $PORT -e $RACK_ENV thin -------------------------------------------------------------------------------- /design/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright © 2011 Thijs van der Vossen, Fingertips. All rights reserved. -------------------------------------------------------------------------------- /app/views/articles/index.html.erb: -------------------------------------------------------------------------------- 1 | <%= render @articles %> 2 | 3 | <%= will_paginate @posts %> -------------------------------------------------------------------------------- /public/images/date.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/date.png -------------------------------------------------------------------------------- /public/images/dashed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/dashed.png -------------------------------------------------------------------------------- /public/images/background.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/background.jpg -------------------------------------------------------------------------------- /public/images/eventdate.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/eventdate.gif -------------------------------------------------------------------------------- /public/images/iconsprite.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/iconsprite.png -------------------------------------------------------------------------------- /app/views/members/_page.html.erb: -------------------------------------------------------------------------------- 1 | <%= render @members %> 2 |
3 | <%= link_to_next_page %> 4 | -------------------------------------------------------------------------------- /public/images/appsterdam_maps.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/appsterdam_maps.png -------------------------------------------------------------------------------- /public/images/date_upcoming.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/date_upcoming.png -------------------------------------------------------------------------------- /public/images/eventlocation.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/eventlocation.gif -------------------------------------------------------------------------------- /public/images/twitter-dashed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/images/twitter-dashed.png -------------------------------------------------------------------------------- /app/views/classifieds/new.html.erb: -------------------------------------------------------------------------------- 1 |4 | You're already in the member list. You can <%= link_to 'edit your profile', edit_member_path(@member) %> 5 | if you want. 6 |
-------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.advhr_dlg',{ 2 | normal:"Normal", 3 | width:"Width", 4 | widthunits:"Units", 5 | size:"Height", 6 | noshade:"No shadow" 7 | }); -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif -------------------------------------------------------------------------------- /config/boot.rb: -------------------------------------------------------------------------------- 1 | require 'rubygems' 2 | 3 | # Set up gems listed in the Gemfile. 4 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__) 5 | 6 | require 'bundler/setup' if File.exists?(ENV['BUNDLE_GEMFILE']) 7 | -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | # See http://www.robotstxt.org/wc/norobots.html for documentation on how to use the robots.txt file 2 | # 3 | # To ban all spiders from the entire site uncomment the next two lines: 4 | # User-Agent: * 5 | # Disallow: / 6 | -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png -------------------------------------------------------------------------------- /config/initializers/mime_types.rb: -------------------------------------------------------------------------------- 1 | # Be sure to restart your server when you modify this file. 2 | 3 | # Add new mime types for use in respond_to blocks: 4 | # Mime::Type.register "text/richtext", :rtf 5 | # Mime::Type.register_alias "text/html", :iphone 6 | -------------------------------------------------------------------------------- /config/locales/en.yml: -------------------------------------------------------------------------------- 1 | # Sample localization file for English. Add more files in this directory for other locales. 2 | # See http://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale for starting points. 3 | 4 | en: 5 | hello: "Hello world" 6 | -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Appsterdam/appsterdam/HEAD/public/javascripts/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif -------------------------------------------------------------------------------- /app/views/members/unauthorized.html.erb: -------------------------------------------------------------------------------- 1 |4 | It seems something went wrong an we weren't able to authenticate you with 5 | Twitter. If you like, you can <%= link_to 'give it another try', new_member_path %>. 6 |
-------------------------------------------------------------------------------- /app/views/sessions/unauthorized.html.erb: -------------------------------------------------------------------------------- 1 |4 | It seems something went wrong an we weren't able to authenticate you with 5 | Twitter. If you like, you can <%= link_to 'give it another try', new_session_path %>. 6 |
-------------------------------------------------------------------------------- /db/migrate/20110708102633_add_platforms_to_members.rb: -------------------------------------------------------------------------------- 1 | class AddPlatformsToMembers < ActiveRecord::Migration 2 | def self.up 3 | add_column :members, :platforms, :text 4 | end 5 | 6 | def self.down 7 | remove_column :members, :platforms 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /config/initializers/meetup.rb: -------------------------------------------------------------------------------- 1 | # get your meetup API key here: http://www.meetup.com/meetup_api/key/ 2 | Appsterdam::Application.meetup_api_options = { 3 | :events_url => "https://api.meetup.com/2/events", 4 | :key => ENV["MEETUP_KEY"], 5 | :group_name => "Appsterdam" 6 | } -------------------------------------------------------------------------------- /db/migrate/20110708124407_add_work_types_to_members.rb: -------------------------------------------------------------------------------- 1 | class AddWorkTypesToMembers < ActiveRecord::Migration 2 | def self.up 3 | add_column :members, :work_types, :text 4 | end 5 | 6 | def self.down 7 | remove_column :members, :work_types 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /db/migrate/20110712095001_add_role_to_members.rb: -------------------------------------------------------------------------------- 1 | class AddRoleToMembers < ActiveRecord::Migration 2 | def self.up 3 | add_column :members, :role, :string, :default => 'member' 4 | end 5 | 6 | def self.down 7 | remove_column :members, :role 8 | end 9 | end 10 | -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css: -------------------------------------------------------------------------------- 1 | .panel_wrapper {height:85px;} 2 | .panel_wrapper div.current {height:85px;} 3 | 4 | /* IE */ 5 | * html .panel_wrapper {height:100px;} 6 | * html .panel_wrapper div.current {height:100px;} 7 | -------------------------------------------------------------------------------- /app/views/classifieds/edit.html.erb: -------------------------------------------------------------------------------- 1 |7 | <% if classified.offered? %> 8 | Offered 9 | <% else %> 10 | Wanted 11 | <% end %> 12 | by <%= link_to classified.placer.name, "http://twitter.com/#{classified.placer.username}" %> 13 |
14 |You have to authenticate/authorize first.
24 |You have to authenticate/authorize first.
24 |Maybe you tried to change something you didn't have access to.
24 |You may have mistyped the address or the page may have moved.
24 |We've been notified about this issue and we'll take a look at it shortly.
24 |' + row + '
'; 18 | }); 19 | } 20 | } 21 | 22 | tinyMCEPopup.editor.execCommand('mceInsertClipboardContent', false, {content : h}); 23 | tinyMCEPopup.close(); 24 | }, 25 | 26 | resize : function() { 27 | var vp = tinyMCEPopup.dom.getViewPort(window), el; 28 | 29 | el = document.getElementById('content'); 30 | 31 | el.style.width = (vp.w - 20) + 'px'; 32 | el.style.height = (vp.h - 90) + 'px'; 33 | } 34 | }; 35 | 36 | tinyMCEPopup.onInit.add(PasteTextDialog.init, PasteTextDialog); 37 | -------------------------------------------------------------------------------- /script/fetch_twitter_profile_data: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby 2 | 3 | require File.expand_path('../../config/environment', __FILE__) 4 | 5 | USER = 'appsterdamrs' 6 | LISTS = %w{ 7 | appsterdammers 8 | appsterdammers2 9 | students 10 | founders 11 | hiring 12 | available 13 | designers 14 | collectives 15 | consultants 16 | creatives 17 | developers 18 | companies 19 | marketeers 20 | } 21 | 22 | SEEDS_ROOT = Rails.root + 'db/seeds' 23 | 24 | module TwitterOAuth 25 | class Client 26 | public :access_token 27 | end 28 | end 29 | 30 | twitter_client = TwitterOAuth::Client.new 31 | 32 | LISTS.each do |list_name| 33 | counter = 1 34 | cursor = nil 35 | loop do 36 | response = twitter_client.access_token.get("/1/#{USER}/#{list_name}/members.json#{"?cursor=#{cursor}" if cursor}") 37 | file = SEEDS_ROOT + "#{list_name}-#{counter}.json" 38 | puts file 39 | File.open(file, 'w') { |f| f << response.body } 40 | json = JSON.parse(response.body) 41 | cursor = json['next_cursor'] 42 | break if cursor == 0 # we've got all members 43 | counter += 1 44 | end 45 | end 46 | -------------------------------------------------------------------------------- /script/seed_members.rb: -------------------------------------------------------------------------------- 1 | Dir.glob(Rails.root + 'db/seeds/*.json').each do |file| 2 | list_name = File.basename(file, '.json').split('-').first 3 | list = JSON.parse(File.read(file)) 4 | users = list['users'] 5 | users.each do |attributes| 6 | member = Member.find_by_twitter_id(attributes['id'].to_s) || Member.create_with_twitter_user_attributes(attributes) 7 | 8 | # TODO Check for better way of setting properties in seed 9 | member.entity = case list_name 10 | when "companies" then "company" 11 | when "students" then "student" 12 | when "collectives" then "group" 13 | else 14 | "individual" 15 | end 16 | 17 | member.work_location = "appsterdam" if list_name == "appsterdammers" 18 | 19 | 20 | member.work_types = member.work_types.push 21 | 22 | member.work_types = member.work_types << case list_name 23 | when "designers" then "design" 24 | when "developers" then "developer" 25 | when "marketeers" then "marketing" 26 | else 27 | nil 28 | end 29 | 30 | member.available_for_hire = true if list_name == "available" 31 | 32 | member.save 33 | end 34 | end 35 | 36 | -------------------------------------------------------------------------------- /test/unit/spam_report_test.rb: -------------------------------------------------------------------------------- 1 | require File.expand_path("../../test_helper", __FILE__) 2 | 3 | describe SpamReport, "concerning validation" do 4 | before do 5 | @marking = members(:developer).spam_reports.build(:ip_address => '1.2.3.4') 6 | end 7 | 8 | it "is invalid without a `member'" do 9 | @marking.member = nil 10 | @marking.should.be.invalid 11 | @marking.errors[:member_id].should.not.be.blank 12 | end 13 | 14 | it "is invalid without an `ip_address'" do 15 | @marking.ip_address = '' 16 | @marking.should.be.invalid 17 | @marking.errors[:ip_address].should.not.be.blank 18 | end 19 | end 20 | 21 | describe "A", SpamReport do 22 | before do 23 | @marking = members(:developer).spam_reports.build(:ip_address => '1.2.3.4') 24 | end 25 | 26 | it "returns the member that's reported as being spam" do 27 | @marking.member.should == members(:developer) 28 | end 29 | 30 | it "returns the reporter, if there is one" do 31 | @marking.reporter.should == nil 32 | @marking.reporter = members(:designer) 33 | @marking.save! 34 | @marking.reload.reporter.should == members(:designer) 35 | end 36 | end 37 | -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/content.css: -------------------------------------------------------------------------------- 1 | body, td, pre { margin:8px;} 2 | body.mceForceColors {background:#FFF; color:#000;} 3 | h1 {font-size: 2em} 4 | h2 {font-size: 1.5em} 5 | h3 {font-size: 1.17em} 6 | h4 {font-size: 1em} 7 | h5 {font-size: .83em} 8 | h6 {font-size: .75em} 9 | .mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;} 10 | a.mceItemAnchor {display:inline-block; width:11px !important; height:11px !important; background:url(../default/img/items.gif) no-repeat 0 0;} 11 | span.mceItemNbsp {background: #DDD} 12 | td.mceSelected, th.mceSelected {background-color:#3399ff !important} 13 | img {border:0;} 14 | table {cursor:default} 15 | table td, table th {cursor:text} 16 | ins {border-bottom:1px solid green; text-decoration: none; color:green} 17 | del {color:red; text-decoration:line-through} 18 | cite {border-bottom:1px dashed blue} 19 | acronym {border-bottom:1px dotted #CCC; cursor:help} 20 | abbr {border-bottom:1px dashed #CCC; cursor:help} 21 | 22 | img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px} 23 | font[face=mceinline] {font-family:inherit !important} 24 | -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js: -------------------------------------------------------------------------------- 1 | tinyMCEPopup.requireLangPack(); 2 | 3 | var AnchorDialog = { 4 | init : function(ed) { 5 | var action, elm, f = document.forms[0]; 6 | 7 | this.editor = ed; 8 | elm = ed.dom.getParent(ed.selection.getNode(), 'A'); 9 | v = ed.dom.getAttrib(elm, 'name'); 10 | 11 | if (v) { 12 | this.action = 'update'; 13 | f.anchorName.value = v; 14 | } 15 | 16 | f.insert.value = ed.getLang(elm ? 'update' : 'insert'); 17 | }, 18 | 19 | update : function() { 20 | var ed = this.editor, elm, name = document.forms[0].anchorName.value; 21 | 22 | if (!name || !/^[a-z][a-z0-9\-\_:\.]*$/i.test(name)) { 23 | tinyMCEPopup.alert('advanced_dlg.anchor_invalid'); 24 | return; 25 | } 26 | 27 | tinyMCEPopup.restoreSelection(); 28 | 29 | if (this.action != 'update') 30 | ed.selection.collapse(1); 31 | 32 | elm = ed.dom.getParent(ed.selection.getNode(), 'A'); 33 | if (elm) 34 | elm.name = name; 35 | else 36 | ed.execCommand('mceInsertContent', 0, ed.dom.createHTML('a', {name : name, 'class' : 'mceItemAnchor'}, '')); 37 | 38 | tinyMCEPopup.close(); 39 | } 40 | }; 41 | 42 | tinyMCEPopup.onInit.add(AnchorDialog.init, AnchorDialog); 43 | -------------------------------------------------------------------------------- /README.rdoc: -------------------------------------------------------------------------------- 1 | = Appsterdam Members Listing 2 | 3 | We're in full development mode. For background chatter about the development process, check: @appsterdamrs, @fngtps, @alloy, @thijs. 4 | 5 | If you want to know what we're building, you can read the {requirements}[https://raw.github.com/Fingertips/appsterdam/master/design/requirements.html]. 6 | 7 | == Development 8 | 9 | First do the regular Rails 3 dance. 10 | 11 | $ bundle install 12 | $ rake db:setup 13 | 14 | Export some environment variables: 15 | 16 | # You can get Twitter's consumer key and secret here: http://dev.twitter.com/. 17 | $ export TWITTER_CONSUMER_KEY="consumer_key" 18 | 19 | # You can get a Meetup api key here: http://www.meetup.com/meetup_api/key/. 20 | $ export TWITTER_CONSUMER_SECRET="consumer_secret" 21 | $ export MEETUP_KEY="meetup_key" 22 | 23 | After that install Sphinx 24 | 25 | $ brew instal sphinx 26 | $ rake ts:index 27 | $ rake ts:start 28 | 29 | Then initialize the application: 30 | 31 | $ bundle exec rails s 32 | 33 | To import events from all external sources use 34 | 35 | $ rake import_events 36 | 37 | == Production 38 | 39 | Removal of outdated classifieds, updates of Sphinx index and retrieval of new events are done by rake's `cron' task. -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js: -------------------------------------------------------------------------------- 1 | tinyMCE.addI18n('en.xhtmlxtras_dlg',{ 2 | attribute_label_title:"Title", 3 | attribute_label_id:"ID", 4 | attribute_label_class:"Class", 5 | attribute_label_style:"Style", 6 | attribute_label_cite:"Cite", 7 | attribute_label_datetime:"Date/Time", 8 | attribute_label_langdir:"Text Direction", 9 | attribute_option_ltr:"Left to right", 10 | attribute_option_rtl:"Right to left", 11 | attribute_label_langcode:"Language", 12 | attribute_label_tabindex:"TabIndex", 13 | attribute_label_accesskey:"AccessKey", 14 | attribute_events_tab:"Events", 15 | attribute_attrib_tab:"Attributes", 16 | general_tab:"General", 17 | attrib_tab:"Attributes", 18 | events_tab:"Events", 19 | fieldset_general_tab:"General Settings", 20 | fieldset_attrib_tab:"Element Attributes", 21 | fieldset_events_tab:"Element Events", 22 | title_ins_element:"Insertion Element", 23 | title_del_element:"Deletion Element", 24 | title_acronym_element:"Acronym Element", 25 | title_abbr_element:"Abbreviation Element", 26 | title_cite_element:"Citation Element", 27 | remove:"Remove", 28 | insert_date:"Insert current date/time", 29 | option_ltr:"Left to right", 30 | option_rtl:"Right to left", 31 | attribs_title:"Insert/Edit Attributes" 32 | }); -------------------------------------------------------------------------------- /public/javascripts/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
',a="mcePageBreak",c=b.getParam("pagebreak_separator",""),e;e=new RegExp(c.replace(/[\?\.\*\[\]\(\)\{\}\+\^\$\:]/g,function(g){return"\\"+g}),"g");b.addCommand("mcePageBreak",function(){b.execCommand("mceInsertContent",0,f)});b.addButton("pagebreak",{title:"pagebreak.desc",cmd:a});b.onInit.add(function(){if(b.theme.onResolveName){b.theme.onResolveName.add(function(g,h){if(h.node.nodeName=="IMG"&&b.dom.hasClass(h.node,a)){h.name="pagebreak"}})}});b.onClick.add(function(g,h){h=h.target;if(h.nodeName==="IMG"&&g.dom.hasClass(h,a)){g.selection.select(h)}});b.onNodeChange.add(function(h,g,i){g.setActive("pagebreak",i.nodeName==="IMG"&&h.dom.hasClass(i,a))});b.onBeforeSetContent.add(function(g,h){h.content=h.content.replace(e,f)});b.onPostProcess.add(function(g,h){if(h.get){h.content=h.content.replace(/<%= member.bio %>
14 | <%== member_tags(member.work_types, member.platforms) %> 15 |16 |
22 | <% if member.marked_as_spam? %> 23 | Removed from membership listing. 24 | <% else %> 25 | <%= form_for member do |f| %> 26 | <%= f.hidden_field :marked_as_spam, :value => true %> 27 | <%= f.submit "Remove membership listing", :confirm => "Remove `#{member.name}' from the membership listing?" %> 28 | <% end %> 29 | <% end %> 30 | <%= form_for member do |f| %> 31 | <%= f.hidden_field :marked_as_spam, :value => false %> 32 | <%= f.submit "Unmark as spam", :confirm => "Add `#{member.name}' back to the membership listing?" %> 33 | <% end %> 34 |
35 |TODO: Posts
43 | 44 | 45 | 69 | 70 |Press ALT-F10 to move focus to the toolbars. Navigate through the buttons using the arrow keys. 12 | Press enter to activate a button and return focus to the editor. 13 | Press escape to return focus to the editor without performing any actions.
14 | 15 |To access the editor status bar, press ALT-F11. Use the left and right arrow keys to navigate between elements in the path. 17 | Press enter or space to select an element. Press escape to return focus to the editor without changing the selection.
18 | 19 |Press shift-F10 to activate the context menu. Use the up and down arrow keys to move between menu items. To open sub-menus press the right arrow key. 21 | To close submenus press the left arrow key. Press escape to close the context menu.
22 | 23 || Keystroke | 28 |Function | 29 |
|---|---|
| Control-B | Bold | 34 |
| Control-I | Italic | 37 |
| Control-Z | Undo | 40 |
| Control-Y | Redo | 43 |
Join Appsterdam for a weekly Meeten en Drinken at Café Bax, 19.00h.<\/p>\n"
47 |
48 |
49 | end
50 |
51 |
52 | end
--------------------------------------------------------------------------------
/public/javascripts/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js:
--------------------------------------------------------------------------------
1 | (function(){var a=tinymce.each;tinymce.create("tinymce.plugins.AdvListPlugin",{init:function(b,c){var d=this;d.editor=b;function e(g){var f=[];a(g.split(/,/),function(h){f.push({title:"advlist."+(h=="default"?"def":h.replace(/-/g,"_")),styles:{listStyleType:h=="default"?"":h}})});return f}d.numlist=b.getParam("advlist_number_styles")||e("default,lower-alpha,lower-greek,lower-roman,upper-alpha,upper-roman");d.bullist=b.getParam("advlist_bullet_styles")||e("default,circle,disc,square");if(tinymce.isIE&&/MSIE [2-7]/.test(navigator.userAgent)){d.isIE7=true}},createControl:function(d,b){var f=this,e,h;if(d=="numlist"||d=="bullist"){if(f[d][0].title=="advlist.def"){h=f[d][0]}function c(i,k){var j=true;a(k.styles,function(m,l){if(f.editor.dom.getStyle(i,l)!=m){j=false;return false}});return j}function g(){var k,i=f.editor,l=i.dom,j=i.selection;k=l.getParent(j.getNode(),"ol,ul");if(!k||k.nodeName==(d=="bullist"?"OL":"UL")||c(k,h)){i.execCommand(d=="bullist"?"InsertUnorderedList":"InsertOrderedList")}if(h){k=l.getParent(j.getNode(),"ol,ul");if(k){l.setStyles(k,h.styles);k.removeAttribute("data-mce-style")}}i.focus()}e=b.createSplitButton(d,{title:"advanced."+d+"_desc","class":"mce_"+d,onclick:function(){g()}});e.onRenderMenu.add(function(i,j){j.onShowMenu.add(function(){var m=f.editor.dom,l=m.getParent(f.editor.selection.getNode(),"ol,ul"),k;if(l||h){k=f[d];a(j.items,function(n){var o=true;n.setSelected(0);if(l&&!n.isDisabled()){a(k,function(p){if(p.id==n.id){if(!c(l,p)){o=false;return false}}});if(o){n.setSelected(1)}}});if(!l){j.items[h.id].setSelected(1)}}});j.add({id:f.editor.dom.uniqueId(),title:"advlist.types","class":"mceMenuItemTitle",titleItem:true}).setDisabled(1);a(f[d],function(k){if(f.isIE7&&k.styles.listStyleType=="lower-greek"){return}k.id=f.editor.dom.uniqueId();j.add({id:k.id,title:k.title,onclick:function(){h=k;g()}})})});return e}},getInfo:function(){return{longname:"Advanced lists",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/advlist",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("advlist",tinymce.plugins.AdvListPlugin)})();
--------------------------------------------------------------------------------
/public/javascripts/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js:
--------------------------------------------------------------------------------
1 | (function(){var a=tinymce.DOM;tinymce.ThemeManager.requireLangPack("simple");tinymce.create("tinymce.themes.SimpleTheme",{init:function(c,d){var e=this,b=["Bold","Italic","Underline","Strikethrough","InsertUnorderedList","InsertOrderedList"],f=c.settings;e.editor=c;c.contentCSS.push(d+"/skins/"+f.skin+"/content.css");c.onInit.add(function(){c.onNodeChange.add(function(h,g){tinymce.each(b,function(i){g.get(i.toLowerCase()).setActive(h.queryCommandState(i))})})});a.loadCSS((f.editor_css?c.documentBaseURI.toAbsolute(f.editor_css):"")||d+"/skins/"+f.skin+"/ui.css")},renderUI:function(h){var e=this,i=h.targetNode,b,c,d=e.editor,f=d.controlManager,g;i=a.insertAfter(a.create("span",{id:d.id+"_container","class":"mceEditor "+d.settings.skin+"SimpleSkin"}),i);i=g=a.add(i,"table",{cellPadding:0,cellSpacing:0,"class":"mceLayout"});i=c=a.add(i,"tbody");i=a.add(c,"tr");i=b=a.add(a.add(i,"td"),"div",{"class":"mceIframeContainer"});i=a.add(a.add(c,"tr",{"class":"last"}),"td",{"class":"mceToolbar mceLast",align:"center"});c=e.toolbar=f.createToolbar("tools1");c.add(f.createButton("bold",{title:"simple.bold_desc",cmd:"Bold"}));c.add(f.createButton("italic",{title:"simple.italic_desc",cmd:"Italic"}));c.add(f.createButton("underline",{title:"simple.underline_desc",cmd:"Underline"}));c.add(f.createButton("strikethrough",{title:"simple.striketrough_desc",cmd:"Strikethrough"}));c.add(f.createSeparator());c.add(f.createButton("undo",{title:"simple.undo_desc",cmd:"Undo"}));c.add(f.createButton("redo",{title:"simple.redo_desc",cmd:"Redo"}));c.add(f.createSeparator());c.add(f.createButton("cleanup",{title:"simple.cleanup_desc",cmd:"mceCleanup"}));c.add(f.createSeparator());c.add(f.createButton("insertunorderedlist",{title:"simple.bullist_desc",cmd:"InsertUnorderedList"}));c.add(f.createButton("insertorderedlist",{title:"simple.numlist_desc",cmd:"InsertOrderedList"}));c.renderTo(i);return{iframeContainer:b,editorContainer:d.id+"_container",sizeContainer:g,deltaHeight:-20}},getInfo:function(){return{longname:"Simple theme",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.ThemeManager.add("simple",tinymce.themes.SimpleTheme)})();
--------------------------------------------------------------------------------
/public/javascripts/tinymce/jscripts/tiny_mce/themes/simple/skins/default/ui.css:
--------------------------------------------------------------------------------
1 | /* Reset */
2 | .defaultSimpleSkin table, .defaultSimpleSkin tbody, .defaultSimpleSkin a, .defaultSimpleSkin img, .defaultSimpleSkin tr, .defaultSimpleSkin div, .defaultSimpleSkin td, .defaultSimpleSkin iframe, .defaultSimpleSkin span, .defaultSimpleSkin * {border:0; margin:0; padding:0; background:transparent; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; color:#000}
3 |
4 | /* Containers */
5 | .defaultSimpleSkin {position:relative}
6 | .defaultSimpleSkin table.mceLayout {background:#F0F0EE; border:1px solid #CCC;}
7 | .defaultSimpleSkin iframe {display:block; background:#FFF; border-bottom:1px solid #CCC;}
8 | .defaultSimpleSkin .mceToolbar {height:24px;}
9 |
10 | /* Layout */
11 | .defaultSimpleSkin span.mceIcon, .defaultSimpleSkin img.mceIcon {display:block; width:20px; height:20px}
12 | .defaultSimpleSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}
13 |
14 | /* Button */
15 | .defaultSimpleSkin .mceButton {display:block; border:1px solid #F0F0EE; width:20px; height:20px}
16 | .defaultSimpleSkin a.mceButtonEnabled:hover {border:1px solid #0A246A; background-color:#B2BBD0}
17 | .defaultSimpleSkin a.mceButtonActive {border:1px solid #0A246A; background-color:#C2CBE0}
18 | .defaultSimpleSkin .mceButtonDisabled span {opacity:0.3; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=30)}
19 |
20 | /* Separator */
21 | .defaultSimpleSkin .mceSeparator {display:block; background:url(../../img/icons.gif) -180px 0; width:2px; height:20px; margin:0 2px 0 4px}
22 |
23 | /* Theme */
24 | .defaultSimpleSkin span.mce_bold {background-position:0 0}
25 | .defaultSimpleSkin span.mce_italic {background-position:-60px 0}
26 | .defaultSimpleSkin span.mce_underline {background-position:-140px 0}
27 | .defaultSimpleSkin span.mce_strikethrough {background-position:-120px 0}
28 | .defaultSimpleSkin span.mce_undo {background-position:-160px 0}
29 | .defaultSimpleSkin span.mce_redo {background-position:-100px 0}
30 | .defaultSimpleSkin span.mce_cleanup {background-position:-40px 0}
31 | .defaultSimpleSkin span.mce_insertunorderedlist {background-position:-20px 0}
32 | .defaultSimpleSkin span.mce_insertorderedlist {background-position:-80px 0}
33 |
--------------------------------------------------------------------------------
/public/javascripts/tinymce/jscripts/tiny_mce/plugins/media/js/embed.js:
--------------------------------------------------------------------------------
1 | /**
2 | * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose.
3 | */
4 |
5 | function writeFlash(p) {
6 | writeEmbed(
7 | 'D27CDB6E-AE6D-11cf-96B8-444553540000',
8 | 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',
9 | 'application/x-shockwave-flash',
10 | p
11 | );
12 | }
13 |
14 | function writeShockWave(p) {
15 | writeEmbed(
16 | '166B1BCA-3F9C-11CF-8075-444553540000',
17 | 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',
18 | 'application/x-director',
19 | p
20 | );
21 | }
22 |
23 | function writeQuickTime(p) {
24 | writeEmbed(
25 | '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',
26 | 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',
27 | 'video/quicktime',
28 | p
29 | );
30 | }
31 |
32 | function writeRealMedia(p) {
33 | writeEmbed(
34 | 'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',
35 | 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',
36 | 'audio/x-pn-realaudio-plugin',
37 | p
38 | );
39 | }
40 |
41 | function writeWindowsMedia(p) {
42 | p.url = p.src;
43 | writeEmbed(
44 | '6BF52A52-394A-11D3-B153-00C04F79FAA6',
45 | 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',
46 | 'application/x-mplayer2',
47 | p
48 | );
49 | }
50 |
51 | function writeEmbed(cls, cb, mt, p) {
52 | var h = '', n;
53 |
54 | h += '';
71 |
72 | document.write(h);
73 | }
74 |
--------------------------------------------------------------------------------
/public/javascripts/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js:
--------------------------------------------------------------------------------
1 | /**
2 | * This script contains embed functions for common plugins. This scripts are complety free to use for any purpose.
3 | */
4 |
5 | function writeFlash(p) {
6 | writeEmbed(
7 | 'D27CDB6E-AE6D-11cf-96B8-444553540000',
8 | 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',
9 | 'application/x-shockwave-flash',
10 | p
11 | );
12 | }
13 |
14 | function writeShockWave(p) {
15 | writeEmbed(
16 | '166B1BCA-3F9C-11CF-8075-444553540000',
17 | 'http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0',
18 | 'application/x-director',
19 | p
20 | );
21 | }
22 |
23 | function writeQuickTime(p) {
24 | writeEmbed(
25 | '02BF25D5-8C17-4B23-BC80-D3488ABDDC6B',
26 | 'http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0',
27 | 'video/quicktime',
28 | p
29 | );
30 | }
31 |
32 | function writeRealMedia(p) {
33 | writeEmbed(
34 | 'CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA',
35 | 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0',
36 | 'audio/x-pn-realaudio-plugin',
37 | p
38 | );
39 | }
40 |
41 | function writeWindowsMedia(p) {
42 | p.url = p.src;
43 | writeEmbed(
44 | '6BF52A52-394A-11D3-B153-00C04F79FAA6',
45 | 'http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701',
46 | 'application/x-mplayer2',
47 | p
48 | );
49 | }
50 |
51 | function writeEmbed(cls, cb, mt, p) {
52 | var h = '', n;
53 |
54 | h += '';
71 |
72 | document.write(h);
73 | }
74 |
--------------------------------------------------------------------------------
/public/javascripts/tinymce/jscripts/tiny_mce/utils/editable_selects.js:
--------------------------------------------------------------------------------
1 | /**
2 | * editable_selects.js
3 | *
4 | * Copyright 2009, Moxiecode Systems AB
5 | * Released under LGPL License.
6 | *
7 | * License: http://tinymce.moxiecode.com/license
8 | * Contributing: http://tinymce.moxiecode.com/contributing
9 | */
10 |
11 | var TinyMCE_EditableSelects = {
12 | editSelectElm : null,
13 |
14 | init : function() {
15 | var nl = document.getElementsByTagName("select"), i, d = document, o;
16 |
17 | for (i=0; i #{link_to("Load more", members_path(params.merge(:page => page)))}