* Get rid of early pathname requirement
* Use require_relative where approciate
* Drop unused files
* Imported new application.rb, environment.rb and environments/* from fresh Rails app
* Cleaned up boot.rb
* Load config in boot.rb
* Deduplicate environments/integration*.rb
* Move username blacklist into defaults.yml
* Ruby 1.9 Hash syntax everywhere
* Reorganize lib/diaspora/markdownify to match conventions
* Get rid of full path requires where possible
* Add dummy content to production section diaspora.yml.example to prevent warning
* Drop sqlite? method
* Move postgres? method into ConfigurationMethods
* Drop token authentication from User
added marker image for publisher, showing div for address, and added
functionality to close it when clicking 'X' image
showing marker image in publisher
renamed map-marker to locator
fixed style for map marker image in publisher
added locator.js to get user's location
loading google maps api
removed unecessary append and showing location next to publisher
moved location address inside div and added image to close location
styled div location address an image to close location
removing location when clicking close image
cleaned code
cleaned code
showing loader while location is being obtained, translated normal js to
backbone structure, created locations db stuff, and removing location
div when clicking 'share'
refactored code; started to move code to backbone
refactored js code; moving functionality to backbone structure
created address function to make accessible address variable value
refactored locator.js
showing and removing location div from dom
created location; it belongs_to status_message
added location model and created association with status_message
added hidden field for location address and added respective code on js files to retrieve it on ajax call
saving location for status_message (post)
removing location when sharing
renamed locator backbone view to location, added template, showing
location, and saving lat and lng
prepared and added template to show location
added location to post model in order to have it accessible in backbone
retrieving location to show it in template
removed console.log XD
fixes when removing location
cleanind location_address hidden field when location is removed
more fixes; showing location when sharing
saving location just when it exists
created method to retrieve location address just when location was created
fixed issue about showing 'Near from' message when there was not any location
added style for location
cleaned code
renamed locator view
retrieving lat and lng from locator.js
saving lat and lng in location_coords
saving lat and lng
added style for input location_address
removed location_address hidden field; the value will be taken directly from input with the location
replaced div with location for input; the user will be able to edit the place
avoiding submitting the form when pressing Enter key on new input for location
added missed spec file for location model
refactored location_view code
refactored location_view code
cleaned code
added sinon library for testing
added describes for new publisher's view functions
created test for destroyLocation function
added test for showLocation publisher view function
created test for avoidEnter publisher view function
removed unnecessary div
Created first test for locations view, added more specs, added Sinon.js,
and fixed issue with assets
loading locator.js for tests
moved location stuff to app/assets
moved locator.js and sinon.js to app/assets
fixed route for images
included locator.js to assets
fixed issue when post object is different than StatusMessage; also fixed issue with lat and lng
loading Sinon for specs
refactoring locator errorGettingposition and start replacing google maps stuff with OSM
added OpenLayers JS, osmlocator, and added them into the main js
changing the locator from Google to OSM instance
changing lat and lng value in the backbone view
removing google javascript tag in application layout
adding jasmine to locator test and removed locator.js
adding jasmine to locator test using OSM
adding Jasmine test to OSM locator
removed locator.js
removed require locator and updated schema
fixed js response; added location
since we are using OSM Locator we don't need locator-spec test
fixed spec for location view; we are not using google maps anymore
changed description of osmlocator-spec
fixed issue with status-message-location template
fixed style for location_address textbox
fixed tests for locator
moved split function to model
created test for location model
removed puts
added effect for location marker
added translations for locator
removed conflicting-unnecessary lines that were loading files for specs
removed sinon library; using sinon-rails gem
removed useless code
removed puts; added Rails.logger.error
added sinon.js file
added specific version of sinon-rails gem
improving validations sintax
using openlayers-rails gem
removed 'google API' text
using sinon gem
isolating LocationStream view
refactored validation
getting location when post is a Reshare
refactored code
fixed aligment for elements under location message
improved styling for location message
refactored begin-rescue block
getting absolute root instead of just the root
added address method to retrive address of location
removed code from Post model; also added descriptinon why it was removed
removed validation when retrieving address; with latest refactorizations we dont need them any more
interpolated location; using file in locales
fixed width for div of location
moved Sinon gem into development and test group
fixed method's description
added missed indexes
updated schema with locations table
removed openlayers-rails gem
preventing location to be saved if there are not coordinates
fixed spec; wrong closing tag
* Made style consistent
* Add helper functions to print messages
* Abort script if critical command fails
* Made number of started Sidekiq workers configurable again
* Dropped all references to Resque
* Moved all jobs under app/workers since that's the Sidekiq convention
* Renamed Jobs module to Worker to match new location
* Adapted all jobs to Sidekiq
* Replaced all enqueue calls with perform_async
* Dropped Resque hacks from specs and features, replaced with
sidekig/testing in RSpec and sidekig/testing/inline in Cucumber
* Updated scripts to start a Sidekiq server
* Inline Sidekiq sinatra app
* Let Sidekiq create the actual Redis instance
* Workaround already initialized constant warnings in service models
* Resolved ToDo in one job definition by creating proper exception clases
for some errors in receiving posts
* Added sidekiq section to configuration to make it completly
configurable to the user
* Add Sidekiq middleware for clean backtraces
* Delay HttpMulti retry to give offline pods a chance to come back up
* Do not retry on GUID already taken and alike errors
* Be graceful about deleted posts in GatherOEmbedData
* Rename and reorganize post fetcher to fix autoloading, also let it use
Faradays default connection so we get nice redirects
* Add initializer to load libs at a central place
* added lib dir to autoload_once paths to increase thread safety
* Moved lib/exceptions.rb to lib/diaspora/ to conform namespacing
* initial backbone port
* changed AspectMembershipsController#destroy to use aspect_membership_id
* included rudimentary jasmine specs
* more specs, updating the list elements after de-/selection
* update selected aspect count on button
* don't even try to render html in AspectMembershipsController
* more specs for button summary text
* adapt aspect management on contacts page and in the popup boxes
* adapt inline creation of aspects + memberships
TODO
* more tests
* added a presenter for hovercard json
* added new backbone view for handling hovercard JS
* refactoring of PeopleController
* finished the backbone js version of hovercards
* don't try to make people_controller more restfull, out of scope
just add a new route and use that for hovercard json
* added spec for people_controller#hovercard
* add new exception for "AccountClosed" to be able to raise from anywhere
* removed legacy code, since everything got ported to backbone
(except the "cache" stuff, but that's not strictly necessary)
* Throw away old system
* Add new system
* Add new example files
* Replace all calls
* add the most important docs
* Add Specs
* rename disable_ssl_requirement to require_ssl
* cloudfiles isn't used/called in our code
* since community_spotlight.list is only used as enable flag replace it with such one and remove all legacy and irelevant codepaths around it
* die if session secret is unset and on heroku
* First basic infrastructure for version information
Custom Redcarpet renderer to escape hashtags (but not legitimate headers)
in emails before Markdown processing. Prevents hashtags from being rendered
as H1 headers. This also leaves open the possibility of parsing hashtags
into clickable links in the future.
fixes#3325
## your server to contact joindiaspora.com, set this to false:
should be
## their stream and get news about Diaspora, but if you want
## your server to contact joindiaspora.com, set this to false:
This is what I think 28f8db51e7 was supposed to do.
With the initializer in an "unless Rails.env.production?" block
the entire initializer was being ignored in production mode and
loaded in all other environments, but Rails Admin was still
loading regardless of that. 😁
This only loads rails admin in production and excludes it from
all other environments. Also keeps non-admins out of /admin_panel
(without the initializer it was free-for-all) and temp fixes#3210
until a new gem is released.
Rails Admin adds its CSS and Javascript assets to the asset pipeline
in an initializer, which doesn't run if config.assets.initialize_on_precompile
is disabled. This manually adds those assets in config/application.rb to make
sure they get precompiled on each deploy.
See 579785c120
Revert "silence asset noise in development. Thanks to @joshsusser. @denniscollective said I should put something pithy here, but that sounds like a bad idea."
This reverts commit 1307907330.
This re-enables 'config.assets.initialize_on_precompile' to allow the
Rails Admin assets to precompile. On Heroku deploys, this may require
the Heroku Labs 'user_env_compile' feature to be enabled, which you
should be using anyway for Asset Sync to work properly. :)
Upgrade our current Bootstrap 1 and 2 dependencies to use Bootstrap 2.0.2
from the bootstrap-sass gem.
I had to modify layouts/application to get the stream page to render properly,
looks like a slight conflict between Bootstrap and Blueprint grid systems, with
.span-24 instead of .row I was seeing the whole right bar dropped to the bottom
of the page below the left bar.
I also modified two other templates since Bootstrap 2.0.2 includes a "badge"
class that was making our navbar badges look funny. :)
If anybody has a cool idea on how to generally sanitize the input for the tag_path (own helper method?) that would be great
Thanks to jankusanagi for pointing me to this
I consider this a hack, it needs review so I won't push it straight
to the main repo. I tried putting the same code in an initializer but
that appears to be too late to properly initialize the asset_sync
engine.
See diaspora/diaspora#3102
This fixes issues with mobile UI rendering
Issues fixed:
* vendor/bootstrap.css and vendor/bootstrap-responsive.css need to
be precompiled for the mobile UI to render properly
* Rails 3.1 is more strict about layout fallbacks, the single-post
view in the mobile UI needs to have the "application" layout
specified to render properly
This should be the last of them, I've gone through every view and made sure
that every javascript file included by a javascript_include_tag is now on the
list of assets to precompile.
* Fix the javascript_include_tag in the status_messages/new view
* Precompile pubhlsiher.js and jquery.textchange.min.js
This fixes a 500 error that was being thrown when the Mention button
was clicked, due to the above two javascripts not being precompiled
and a javascript include that needed to be updated to load
jquery.textchange.js from the correct path.
Add contact-list.js to the list of precompiled assets.
contact-list.js is required to display user serarch results, but was not
precompiled by default (in jammit or in the asset pipeline), which causes
a 500 error on Heroku.
* Add the Rails 3.1+ Bundler.require statement to config/application.rb
(properly enabling the :assets group)
* Move handlebars_assets gem into the :assets group where it belongs. :)
* Downgrade sass-rails to 3.1.4 since enabling the :assets group exposed
a known bug in sass-rails ~> 3.1.5 [rails/sass-rails#78].
193 specs | 5 failing
The 5 failing specs appear (according to Firebug) to be due to missing
fixtures and/or missing routes in the Jasmine environment. Fixing these
last 5 failures is a task probably best left to a more experienced
Javascript/Jasmine developer.
This commit also moves validation.js and clear-form.js into
app/assets/javascripts and precompiles validation.js
Implement the jquery_include_tag helper, which is used in several
views but was not implemented in the code. This helper attempts to
load jQuery from the Google CDN (matching the version of the vendored
jquery.js in jquery-rails), falling back to the vendored copy if the
google CDN fails. The helper also loads jquery_ujs.js from jquery-rails.
A jquery_cdn setting is added to application.yml to enable or disable
serving jQuery from the Google CDN (for those podmins who would rather
not use Google's services).
Update app/views/application.html.haml to use the jquery_include_tag
helper since it was the only view that was including the vendored
copy of jquery directly with jquery_include_tag.
* Move all Diaspora-specific javascripts to app/assets/javascripts
* Move all vendored javascripts to vendor/assets/javascripts
* Add the appropriate Sprockets require directives to make sure
everything gets included in the right order
* Remove Jammit dependencies
* Fix all templates that were using Jammit's include_javascripts helper
* Add handlebars_assets gem for compiling Handlebars templates
* Move all Handlebars templates to app/assets/templates and rename
from .handlebars to .jst.hbs (this is to keep them in the same
global JST namespace that they were in under Jammit)
* Add public/assets to .gitignore since these files can and should
be re-generated by Heroku or Capistrano during each deploy
* Fix a few Handlebars templates that were looking for images in the
wrong location (I'm sure there are others, but it's late)
* Configure application.rb to precompile all javascript and css assets
that were compiled by Jammit in the Rails 3.0 code