more hacky solution for preview iframe in foundation reveal modal

This commit is contained in:
2015-03-08 10:22:20 +01:00
parent 6a191e5d07
commit ba76940007
6 changed files with 22 additions and 6 deletions
@@ -19,11 +19,13 @@ $ ->
$('.preview-page').click (ev)->
ev.preventDefault()
url = $(@).attr('href')
iframe = $('#preview-modal iframe')
params =
body: $('#page_body').val()
sidebar: $('#page_sidebar').val()
footer: $('#page_footer').val()
layout: $('#page_layout').val()
$.post url, page: params, (response)->
iframe = $('#preview-modal iframe').get(0)
iframe.src = "data:text/html;charset=utf-8,#{escape(response)}"
iframe.attr 'src', url
$('#preview-modal').foundation('reveal', 'open')
false
@@ -0,0 +1,6 @@
.reveal-modal-bg
position: fixed
#preview-modal
width: 90%
height: 90%
margin-top: -70px
+7 -2
View File
@@ -93,8 +93,13 @@ module Cmtool
end
def preview
@page = ::Page.new params.require(:page).permit!
render "pages/show", layout: @page.layout
if request.post?
session[:preview_page] = params[:page].to_hash
head :ok
else
@page = ::Page.new session[:preview_page]
render "pages/show", layout: @page.layout
end
end
private
+1 -1
View File
@@ -1,7 +1,7 @@
javascript:
page_vars = #{Cmtool::YmlFile.all_as_object.to_json.html_safe};
#preview-modal.reveal-modal.large data-reveal=""
iframe allowfullscreen="" frameborder="0" height="720" src="about:blank" width="900"
iframe allowfullscreen="" frameborder="0" height="100%" src="about:blank" width="100%"
a.close-reveal-modal ×
= form_for [cmtool, @page] do |f|
= render 'error_messages', target: @page
+1 -1
View File
@@ -7,7 +7,7 @@ Cmtool::Engine.routes.draw do
resources :pages do
member do
get :generate_name
post :preview
match :preview, via: [:get, :post]
end
collection do
get :generate_name
@@ -11,3 +11,6 @@
*= require_self
*= require_tree .
*/
body{
background-color: #aaf;
}