Module: Viewerjs::ViewHelpers
- Defined in:
- lib/viewerjs/view_helpers.rb
Instance Method Summary collapse
-
#viewerjs_viewer(options = {viewer_alignment: 'right', title: nil}) ⇒ Object
options = { viewer_alignment: ‘right’, #Possible values ‘right’ or ‘left’ title: nil #If nothing or nil is provided then referred document(with extension) is used in viewer’s header title else the given title) zoom_mode: ‘page-width’ #Possible values are ‘auto’, ‘page-actual’, ‘page-width’, ‘page-height’, ‘page-fit’, ‘custom’.
Instance Method Details
#viewerjs_viewer(options = {viewer_alignment: 'right', title: nil}) ⇒ Object
options = { viewer_alignment: ‘right’, #Possible values ‘right’ or ‘left’ title: nil #If nothing or nil is provided then referred document(with extension) is used in viewer’s header title else the given title) zoom_mode: ‘page-width’ #Possible values are ‘auto’, ‘page-actual’, ‘page-width’, ‘page-height’, ‘page-fit’, ‘custom’. Default it ‘auto’ zoom_level: 1.5 #Only applicable if zoom_mode is set to ‘custom’. Default zoom_level is 1.0 any value above will increase the zoom or will decrease if its less }
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/viewerjs/view_helpers.rb', line 10 def viewerjs_viewer( = {viewer_alignment: 'right', title: nil}) [:viewer_alignment] = (['right', 'left'].include?([:viewer_alignment]) ? [:viewer_alignment] : 'left') _viewer = " <div dir=\"\#{{'right' => 'rtl', 'left' => 'ltr'}[options[:viewer_alignment]]}\">\n <div id=\"viewer\">\n <div id=\"titlebar\">\n <div id=\"documentName\"></div>\n <div id=\"toolbarRight\">\n <button id=\"presentation\" class=\"toolbarButton presentation\" title=\"Presentation\"></button>\n <button id=\"fullscreen\" class=\"toolbarButton fullscreen\" title=\"Fullscreen\"></button>\n <button id=\"download\" class=\"toolbarButton download\" title=\"Download\"></button>\n </div>\n </div>\n <div id=\"toolbarContainer\">\n <div id=\"toolbar\">\n <div id=\"toolbarLeft\">\n <div id=\"navButtons\" class=\"splitToolbarButton\">\n <button id=\"previous\" class=\"toolbarButton pageUp\" title=\"Previous Page\"></button>\n <div class=\"splitToolbarButtonSeparator\"></div>\n <button id=\"next\" class=\"toolbarButton pageDown\" title=\"Next Page\"></button>\n </div>\n <label id=\"pageNumberLabel\" class=\"toolbarLabel\" for=\"pageNumber\">Page:</label>\n <input type=\"number\" id=\"pageNumber\" class=\"toolbarField pageNumber\"/>\n <span id=\"numPages\" class=\"toolbarLabel\"></span>\n </div>\n <div id=\"toolbarMiddleContainer\" class=\"outerCenter\">\n <div id=\"toolbarMiddle\" class=\"innerCenter\">\n <div id='zoomButtons' class=\"splitToolbarButton\">\n <button id=\"zoomOut\" class=\"toolbarButton zoomOut\" title=\"Zoom Out\"></button>\n <div class=\"splitToolbarButtonSeparator\"></div>\n <button id=\"zoomIn\" class=\"toolbarButton zoomIn\" title=\"Zoom In\"></button>\n </div>\n <span id=\"scaleSelectContainer\" class=\"dropdownToolbarButton\">\n <select id=\"scaleSelect\" title=\"Zoom\" oncontextmenu=\"return false;\">\n <option id=\"pageAutoOption\" value=\"auto\" selected>Automatic</option>\n <option id=\"pageActualOption\" value=\"page-actual\">Actual Size</option>\n <option id=\"pageWidthOption\" value=\"page-width\">Full Width</option>\n <option id=\"customScaleOption\" value=\"custom\"></option>\n <option value=\"0.5\">50%</option>\n <option value=\"0.75\">75%</option>\n <option value=\"1\">100%</option>\n <option value=\"1.25\">125%</option>\n <option value=\"1.5\">150%</option>\n <option value=\"2\">200%</option>\n </select>\n </span>\n\n <div id=\"sliderContainer\">\n <div id=\"slider\"></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div id=\"canvasContainer\">\n <div id=\"canvas\"></div>\n </div>\n <div id=\"overlayNavigator\">\n <div id=\"previousPage\"></div>\n <div id=\"nextPage\"></div>\n </div>\n <div id=\"overlayCloseButton\">\n ✖\n </div>\n <div id=\"dialogOverlay\"></div>\n </div>\n </div>\n <script>\n var _document_title = \"\#{options[:title].blank? ? '' : options[:title]}\";\n var _document_zmode = \"\#{options[:zoom_mode].blank? ? 'auto' : options[:zoom_mode]}\";\n var _document_zlevel = \"\#{options[:zoom_level].blank? ? '1.0' : options[:zoom_level]}\";\n loadDocument(window.location.hash);\n </script>\n EOM\n raw(_viewer)\nend\n" |