]> projects.mako.cc - selectricity/blobdiff - app/controllers/voter_controller.rb
Streamlined and made more consistent the code that checks for custom skin uploads...
[selectricity] / app / controllers / voter_controller.rb
index cdc045da05c3e680d425918a7c0670685590eff5..9e88e9e282b048cfe1b0e9177081fc1300424873 100644 (file)
@@ -61,6 +61,19 @@ class VoterController < ApplicationController
       else
         @sidebar_content = render_to_string(:partial => 'vote_sidebar')
         if @election.embeddable? and params[:embed] == "true"
       else
         @sidebar_content = render_to_string(:partial => 'vote_sidebar')
         if @election.embeddable? and params[:embed] == "true"
+          #look for custom theme, and assign to instance variabels for widget use
+          if @election.embed_custom_string
+            @top_bar = SkinPicture.find(:first,
+            :conditions => ["filename = ?", @election.embed_custom_string + "top_bar.png"])
+            @default_image = SkinPicture.find(:first,
+            :conditions => ["filename = ?", @election.embed_custom_string + "default_image.png"])
+            @bg1 = SkinPicture.find(:first,
+            :conditions => ["filename = ?", @election.embed_custom_string + "bg1.png"])
+            @bg2 = SkinPicture.find(:first,
+            :conditions => ["filename = ?", @election.embed_custom_string + "bg2.png"])
+            @bottom_bar = SkinPicture.find(:first,
+            :conditions => ["filename = ?", @election.embed_custom_string + "bottom_bar.png"])
+          end
           render :template => 'embed/full_vote', :layout => 'embed'
         else
           render :action => 'full_vote'
           render :template => 'embed/full_vote', :layout => 'embed'
         else
           render :action => 'full_vote'
@@ -151,6 +164,19 @@ class VoterController < ApplicationController
       @names = @election.names_by_id
         
       @sidebar_content = render_to_string(:partial => 'results_sidebar')
       @names = @election.names_by_id
         
       @sidebar_content = render_to_string(:partial => 'results_sidebar')
+      #look for custom theme, and assign to instance variabels for widget use
+      if @election.embed_custom_string
+        @top_bar = SkinPicture.find(:first,
+        :conditions => ["filename = ?", @election.embed_custom_string + "top_bar.png"])
+        @default_image = SkinPicture.find(:first,
+        :conditions => ["filename = ?", @election.embed_custom_string + "default_image.png"])
+        @bg1 = SkinPicture.find(:first,
+        :conditions => ["filename = ?", @election.embed_custom_string + "bg1.png"])
+        @bg2 = SkinPicture.find(:first,
+        :conditions => ["filename = ?", @election.embed_custom_string + "bg2.png"])
+        @bottom_bar = SkinPicture.find(:first,
+        :conditions => ["filename = ?", @election.embed_custom_string + "bottom_bar.png"])
+      end
       if @election.embeddable? and params[:embed] == "true"
         render :template => 'embed/results', :layout => 'embed'
       else
       if @election.embeddable? and params[:embed] == "true"
         render :template => 'embed/results', :layout => 'embed'
       else

Benjamin Mako Hill || Want to submit a patch?