diff --git a/app/views/layouts/_templates.haml b/app/views/layouts/_templates.haml index 70d26edcf..625d7bb8f 100644 --- a/app/views/layouts/_templates.haml +++ b/app/views/layouts/_templates.haml @@ -3,9 +3,3 @@ - template_name = File.basename(template, ".jst").gsub("_","-") %script{:id => "#{template_name}-template", :type => 'text/template'} != File.read(templates_dir.join(template)) - -- #don't tell my mom I did this, okay? -- Dir[templates_dir.to_s + "/*.handlebars"].each do |template| - - template_name = File.basename(template, ".handlebars").gsub("_","-") - %script{:id => "#{template_name}-template", :type => 'text/template'} - != File.read(templates_dir.join(template)) diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml index ee0e2386f..3c9c401c2 100644 --- a/app/views/layouts/application.html.haml +++ b/app/views/layouts/application.html.haml @@ -82,7 +82,8 @@ = jquery_include_tag - unless @landing_page - = include_javascripts :main + = include_javascripts :main, :templates + :javascript Diaspora.I18n.loadLocale(#{get_javascript_strings_for(I18n.locale).to_json}, "#{I18n.locale}"); Diaspora.Page = "#{params[:controller].camelcase}#{params[:action].camelcase}"; diff --git a/config/assets.yml b/config/assets.yml index 983ed0f18..6458112d4 100644 --- a/config/assets.yml +++ b/config/assets.yml @@ -2,9 +2,17 @@ package_assets: on embed_assets: datauri compress_assets: on gzip_assets: off + +template_function: off +template_extension: 'handlebars' + javascripts: jquery: - public/javascripts/vendor/jquery-1.7.1.min.js + + templates: + - public/javascripts/app/templates/*.handlebars + main: - public/javascripts/vendor/underscore.js - public/javascripts/vendor/backbone.js diff --git a/config/assets_test.yml b/config/assets_test.yml new file mode 100644 index 000000000..4df14904c --- /dev/null +++ b/config/assets_test.yml @@ -0,0 +1,7 @@ +package_assets: on +template_function: off +template_extension: 'handlebars' + +javascripts: + app: + - public/javascripts/app/templates/* \ No newline at end of file diff --git a/app/views/templates/activity_streams_photo.handlebars b/public/javascripts/app/templates/activity-streams-photo.handlebars similarity index 100% rename from app/views/templates/activity_streams_photo.handlebars rename to public/javascripts/app/templates/activity-streams-photo.handlebars diff --git a/app/views/templates/comment_stream.handlebars b/public/javascripts/app/templates/comment-stream.handlebars similarity index 100% rename from app/views/templates/comment_stream.handlebars rename to public/javascripts/app/templates/comment-stream.handlebars diff --git a/app/views/templates/comment.handlebars b/public/javascripts/app/templates/comment.handlebars similarity index 100% rename from app/views/templates/comment.handlebars rename to public/javascripts/app/templates/comment.handlebars diff --git a/app/views/templates/header.handlebars b/public/javascripts/app/templates/header.handlebars similarity index 100% rename from app/views/templates/header.handlebars rename to public/javascripts/app/templates/header.handlebars diff --git a/app/views/templates/static_text.handlebars b/public/javascripts/app/templates/static-text.handlebars similarity index 100% rename from app/views/templates/static_text.handlebars rename to public/javascripts/app/templates/static-text.handlebars diff --git a/app/views/templates/stream_faces.handlebars b/public/javascripts/app/templates/stream-faces.handlebars similarity index 100% rename from app/views/templates/stream_faces.handlebars rename to public/javascripts/app/templates/stream-faces.handlebars diff --git a/public/javascripts/app/views.js b/public/javascripts/app/views.js index e4c918194..8c24996f5 100644 --- a/public/javascripts/app/views.js +++ b/public/javascripts/app/views.js @@ -30,7 +30,7 @@ app.views.Base = Backbone.View.extend({ this.template = _.template(templateHTML); } else { window.templateCache = window.templateCache || {} - templateHTML = $("#" + this.templateName + "-template").html(); //don't forget to regenerate your jasmine fixtures ;-) + templateHTML = JST[this.templateName]; this.template = templateCache[this.templateName] = templateCache[this.templateName] || Handlebars.compile(templateHTML); } diff --git a/spec/javascripts/support/jasmine.yml b/spec/javascripts/support/jasmine.yml index 6059b621f..111dcda82 100644 --- a/spec/javascripts/support/jasmine.yml +++ b/spec/javascripts/support/jasmine.yml @@ -11,6 +11,9 @@ # - dist/**/*.js # src_files: + # load up our outputted templates, bound to window.JST + - public/assets/app.js + - public/javascripts/vendor/underscore.js - public/javascripts/vendor/jquery-1.7.1.min.js - public/javascripts/vendor/jquery-ui-1.8.9.custom.min.js @@ -59,6 +62,7 @@ src_files: - public/javascripts/aspects-dropdown.js - public/javascripts/content-updater.js - public/javascripts/tag-followings.js + # stylesheets # # Return an array of stylesheet filepaths relative to src_dir to include before jasmine specs. diff --git a/spec/javascripts/support/jasmine_config.rb b/spec/javascripts/support/jasmine_config.rb new file mode 100644 index 000000000..3e9a8dc08 --- /dev/null +++ b/spec/javascripts/support/jasmine_config.rb @@ -0,0 +1,9 @@ +require 'jammit' +module Jasmine + class Config + + Jammit.reload! + Jammit.package!({ :config_path => Rails.root.join("config", "assets_test.yml")}) + + end +end \ No newline at end of file