Files
fetsite/doc/app/Document.html

1025 lines
49 KiB
HTML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Class: Document</title>
<link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
<script src="./js/jquery.js" type="text/javascript" charset="utf-8"></script>
<script src="./js/thickbox-compressed.js" type="text/javascript" charset="utf-8"></script>
<script src="./js/quicksearch.js" type="text/javascript" charset="utf-8"></script>
<script src="./js/darkfish.js" type="text/javascript" charset="utf-8"></script>
</head>
<body id="top" class="class">
<div id="metadata">
<div id="home-metadata">
<div id="home-section" class="section">
<h3 class="section-header">
<a href="./index.html">Home</a>
<a href="./index.html#classes">Classes</a>
<a href="./index.html#methods">Methods</a>
</h3>
</div>
</div>
<div id="file-metadata">
<div id="file-list-section" class="section">
<h3 class="section-header">In Files</h3>
<div class="section-body">
<ul>
<li><a href="./app/models/document_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
class="thickbox" title="app/models/document.rb">app/models/document.rb</a></li>
</ul>
</div>
</div>
</div>
<div id="class-metadata">
<!-- Parent Class -->
<div id="parent-class-section" class="section">
<h3 class="section-header">Parent</h3>
<p class="link">ActiveRecord::Base</p>
</div>
<!-- Method Quickref -->
<div id="method-list-section" class="section">
<h3 class="section-header">Methods</h3>
<ul class="link-list">
<li><a href="#method-c-ether">::ether</a></li>
<li><a href="#method-c-new_divid_for">::new_divid_for</a></li>
<li><a href="#method-i-create_pdf">#create_pdf</a></li>
<li><a href="#method-i-divid">#divid</a></li>
<li><a href="#method-i-dump_to_etherpad">#dump_to_etherpad</a></li>
<li><a href="#method-i-ep_group">#ep_group</a></li>
<li><a href="#method-i-ep_pad">#ep_pad</a></li>
<li><a href="#method-i-ether">#ether</a></li>
<li><a href="#method-i-is_etherpad-3F">#is_etherpad?</a></li>
<li><a href="#method-i-long_name">#long_name</a></li>
<li><a href="#method-i-maketoc">#maketoc</a></li>
<li><a href="#method-i-move_to_etherpad">#move_to_etherpad</a></li>
<li><a href="#method-i-read_from_etherpad">#read_from_etherpad</a></li>
<li><a href="#method-i-sanitize">#sanitize</a></li>
<li><a href="#method-i-text_stripped">#text_stripped</a></li>
</ul>
</div>
</div>
<div id="project-metadata">
<div id="fileindex-section" class="section project-section">
<h3 class="section-header">Files</h3>
<ul>
<li class="file"><a href="./doc/README_FOR_APP.html">README_FOR_APP</a></li>
</ul>
</div>
<div id="classindex-section" class="section project-section">
<h3 class="section-header">Class/Module Index
<span class="search-toggle"><img src="./images/find.png"
height="16" width="16" alt="[+]"
title="show/hide quicksearch" /></span></h3>
<form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
<fieldset>
<legend>Quicksearch</legend>
<input type="text" name="quicksearch" value=""
class="quicksearch-field" />
</fieldset>
</form>
<ul class="link-list">
<li><a href="./Flagable.html">Flagable</a></li>
<li><a href="./Flagable/ActsAsFlagableController.html">Flagable::ActsAsFlagableController</a></li>
<li><a href="./Flagable/ActsAsFlagableController/ClassMethods.html">Flagable::ActsAsFlagableController::ClassMethods</a></li>
<li><a href="./Flagable/ActsAsFlagableController/LocalClassMethods.html">Flagable::ActsAsFlagableController::LocalClassMethods</a></li>
<li><a href="./Flagable/ActsAsFlagableController/LocalInstanceMethods.html">Flagable::ActsAsFlagableController::LocalInstanceMethods</a></li>
<li><a href="./Flagable/ActsAsFlagableRecord.html">Flagable::ActsAsFlagableRecord</a></li>
<li><a href="./Flagable/ActsAsFlagableRecord/ClassMethods.html">Flagable::ActsAsFlagableRecord::ClassMethods</a></li>
<li><a href="./Flagable/ActsAsFlagableRecord/LocalInstanceMethods.html">Flagable::ActsAsFlagableRecord::LocalInstanceMethods</a></li>
<li><a href="./Flagable/FlagableHelper.html">Flagable::FlagableHelper</a></li>
<li><a href="./Survey.html">Survey</a></li>
<li><a href="./Survey/Answer.html">Survey::Answer</a></li>
<li><a href="./Survey/AnswersHelper.html">Survey::AnswersHelper</a></li>
<li><a href="./Survey/Choice.html">Survey::Choice</a></li>
<li><a href="./Survey/ChoicesController.html">Survey::ChoicesController</a></li>
<li><a href="./Survey/ChoicesHelper.html">Survey::ChoicesHelper</a></li>
<li><a href="./Survey/Question.html">Survey::Question</a></li>
<li><a href="./Survey/QuestionsController.html">Survey::QuestionsController</a></li>
<li><a href="./Survey/QuestionsHelper.html">Survey::QuestionsHelper</a></li>
<li><a href="./IsCommentable.html">IsCommentable</a></li>
<li><a href="./IsCommentable/InstanceMethods.html">IsCommentable::InstanceMethods</a></li>
<li><a href="./LikeVoteable.html">LikeVoteable</a></li>
<li><a href="./LikeVoteable/InstanceMethods.html">LikeVoteable::InstanceMethods</a></li>
<li><a href="./Users.html">Users</a></li>
<li><a href="./Users/OmniauthCallbacksController.html">Users::OmniauthCallbacksController</a></li>
<li><a href="./Ability.html">Ability</a></li>
<li><a href="./ApplicationController.html">ApplicationController</a></li>
<li><a href="./ApplicationHelper.html">ApplicationHelper</a></li>
<li><a href="./Attachment.html">Attachment</a></li>
<li><a href="./AttachmentUploader.html">AttachmentUploader</a></li>
<li><a href="./AttachmentsController.html">AttachmentsController</a></li>
<li><a href="./AttachmentsHelper.html">AttachmentsHelper</a></li>
<li><a href="./Beispiel.html">Beispiel</a></li>
<li><a href="./BeispieldateiUploader.html">BeispieldateiUploader</a></li>
<li><a href="./BeispieleController.html">BeispieleController</a></li>
<li><a href="./BeispieleHelper.html">BeispieleHelper</a></li>
<li><a href="./Calendar.html">Calendar</a></li>
<li><a href="./CalendarsController.html">CalendarsController</a></li>
<li><a href="./CalendarsHelper.html">CalendarsHelper</a></li>
<li><a href="./CalentriesController.html">CalentriesController</a></li>
<li><a href="./CalentriesHelper.html">CalentriesHelper</a></li>
<li><a href="./Calentry.html">Calentry</a></li>
<li><a href="./CheckboxAutocompleteInput.html">CheckboxAutocompleteInput</a></li>
<li><a href="./Comment.html">Comment</a></li>
<li><a href="./CommentsController.html">CommentsController</a></li>
<li><a href="./CommentsHelper.html">CommentsHelper</a></li>
<li><a href="./ConfigController.html">ConfigController</a></li>
<li><a href="./Confirmmailer.html">Confirmmailer</a></li>
<li><a href="./CrawlerController.html">CrawlerController</a></li>
<li><a href="./Crawlobject.html">Crawlobject</a></li>
<li><a href="./CrawlobjectHelper.html">CrawlobjectHelper</a></li>
<li><a href="./DateStringInput.html">DateStringInput</a></li>
<li><a href="./DatepickerInput.html">DatepickerInput</a></li>
<li><a href="./DatetimepickerInput.html">DatetimepickerInput</a></li>
<li><a href="./Document.html">Document</a></li>
<li><a href="./DocumentsController.html">DocumentsController</a></li>
<li><a href="./EmailsController.html">EmailsController</a></li>
<li><a href="./Fetprofile.html">Fetprofile</a></li>
<li><a href="./FetprofilesController.html">FetprofilesController</a></li>
<li><a href="./FetprofilesHelper.html">FetprofilesHelper</a></li>
<li><a href="./Fetznedition.html">Fetznedition</a></li>
<li><a href="./FetzneditionsController.html">FetzneditionsController</a></li>
<li><a href="./FetzneditionsHelper.html">FetzneditionsHelper</a></li>
<li><a href="./Foto.html">Foto</a></li>
<li><a href="./FotoUploader.html">FotoUploader</a></li>
<li><a href="./FotosController.html">FotosController</a></li>
<li><a href="./FotosHelper.html">FotosHelper</a></li>
<li><a href="./Frage.html">Frage</a></li>
<li><a href="./FragenController.html">FragenController</a></li>
<li><a href="./FragenHelper.html">FragenHelper</a></li>
<li><a href="./GalleriesController.html">GalleriesController</a></li>
<li><a href="./GalleriesHelper.html">GalleriesHelper</a></li>
<li><a href="./Gallery.html">Gallery</a></li>
<li><a href="./GremienController.html">GremienController</a></li>
<li><a href="./GremienHelper.html">GremienHelper</a></li>
<li><a href="./Gremium.html">Gremium</a></li>
<li><a href="./HomeController.html">HomeController</a></li>
<li><a href="./Key.html">Key</a></li>
<li><a href="./Lecturer.html">Lecturer</a></li>
<li><a href="./LecturersController.html">LecturersController</a></li>
<li><a href="./LecturersHelper.html">LecturersHelper</a></li>
<li><a href="./Lva.html">Lva</a></li>
<li><a href="./LvasController.html">LvasController</a></li>
<li><a href="./MailerHelper.html">MailerHelper</a></li>
<li><a href="./Meeting.html">Meeting</a></li>
<li><a href="./MeetingsController.html">MeetingsController</a></li>
<li><a href="./MeetingsHelper.html">MeetingsHelper</a></li>
<li><a href="./Meetingtyp.html">Meetingtyp</a></li>
<li><a href="./MeetingtypsController.html">MeetingtypsController</a></li>
<li><a href="./MeetingtypsHelper.html">MeetingtypsHelper</a></li>
<li><a href="./Membership.html">Membership</a></li>
<li><a href="./MembershipsController.html">MembershipsController</a></li>
<li><a href="./MembershipsHelper.html">MembershipsHelper</a></li>
<li><a href="./Modul.html">Modul</a></li>
<li><a href="./Modulgruppe.html">Modulgruppe</a></li>
<li><a href="./ModulgruppenController.html">ModulgruppenController</a></li>
<li><a href="./ModulgruppenHelper.html">ModulgruppenHelper</a></li>
<li><a href="./ModulsController.html">ModulsController</a></li>
<li><a href="./ModulsHelper.html">ModulsHelper</a></li>
<li><a href="./Neuigkeit.html">Neuigkeit</a></li>
<li><a href="./NeuigkeitenController.html">NeuigkeitenController</a></li>
<li><a href="./NewsMailer.html">NewsMailer</a></li>
<li><a href="./Nlink.html">Nlink</a></li>
<li><a href="./PagesHelper.html">PagesHelper</a></li>
<li><a href="./PictureUploader.html">PictureUploader</a></li>
<li><a href="./PluginsHelper.html">PluginsHelper</a></li>
<li><a href="./Role.html">Role</a></li>
<li><a href="./Rubrik.html">Rubrik</a></li>
<li><a href="./RubrikenController.html">RubrikenController</a></li>
<li><a href="./RubrikenHelper.html">RubrikenHelper</a></li>
<li><a href="./Semester.html">Semester</a></li>
<li><a href="./SemestersController.html">SemestersController</a></li>
<li><a href="./SemestersHelper.html">SemestersHelper</a></li>
<li><a href="./StudienController.html">StudienController</a></li>
<li><a href="./StudienHelper.html">StudienHelper</a></li>
<li><a href="./Studium.html">Studium</a></li>
<li><a href="./StudmodsHelper.html">StudmodsHelper</a></li>
<li><a href="./Thema.html">Thema</a></li>
<li><a href="./ThemenController.html">ThemenController</a></li>
<li><a href="./ThemenHelper.html">ThemenHelper</a></li>
<li><a href="./Themengruppe.html">Themengruppe</a></li>
<li><a href="./ThemengruppenController.html">ThemengruppenController</a></li>
<li><a href="./ThemengruppenHelper.html">ThemengruppenHelper</a></li>
<li><a href="./TinymceTextInput.html">TinymceTextInput</a></li>
<li><a href="./UploaderInput.html">UploaderInput</a></li>
<li><a href="./User.html">User</a></li>
<li><a href="./UsersController.html">UsersController</a></li>
</ul>
<div id="no-class-search-results" style="display: none;">No matching classes.</div>
</div>
</div>
</div>
<div id="documentation">
<h1 class="class">Document</h1>
<div id="description" class="description">
</div><!-- description -->
<div id="5Buntitled-5D" class="documentation-section">
<!-- Constants -->
<div id="constants-list" class="section">
<h3 class="section-header">Constants</h3>
<dl>
<dt><a name="TYPS">TYPS</a></dt>
<dd class="description"></dd>
</dl>
</div>
<!-- Methods -->
<div id="public-class-method-details" class="method-section section">
<h3 class="section-header">Public Class Methods</h3>
<div id="ether-method" class="method-detail ">
<a name="method-c-ether"></a>
<div class="method-heading">
<span class="method-name">ether</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="ether-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 26</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">ether</span>
<span class="ruby-constant">EtherpadLite</span>.<span class="ruby-identifier">connect</span>(<span class="ruby-string">&#39;https://www.fet.at/etherpad&#39;</span>, <span class="ruby-constant">File</span>.<span class="ruby-identifier">new</span>(<span class="ruby-string">&#39;config/etherpad/APIKEY.txt&#39;</span>))<span class="ruby-comment">#https://www.etherpad.fet.at</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- ether-source -->
</div>
</div><!-- ether-method -->
<div id="new_divid_for-method" class="method-detail ">
<a name="method-c-new_divid_for"></a>
<div class="method-heading">
<span class="method-name">new_divid_for</span><span
class="method-args">(parent)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="new_divid_for-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 20</span>
<span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">new_divid_for</span>(<span class="ruby-identifier">parent</span>)
<span class="ruby-string">&quot;document_new_parent_&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">parent</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot;_&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">parent</span>.<span class="ruby-identifier">id</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- new_divid_for-source -->
</div>
</div><!-- new_divid_for-method -->
</div><!-- public-class-method-details -->
<div id="public-instance-method-details" class="method-section section">
<h3 class="section-header">Public Instance Methods</h3>
<div id="create_pdf-method" class="method-detail ">
<a name="method-i-create_pdf"></a>
<div class="method-heading">
<span class="method-name">create_pdf</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="create_pdf-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 29</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">create_pdf</span>
<span class="ruby-identifier">require</span> <span class="ruby-string">&quot;open3&quot;</span>
<span class="ruby-comment">#url=blank_document_url({id: self.id, host: host, port: port})</span>
<span class="ruby-comment"># url=Rails.application.routes.url_helpers.blank_document_url({id: self.id, host: host, port: port})</span>
<span class="ruby-identifier">file</span> = <span class="ruby-constant">Tempfile</span>.<span class="ruby-identifier">new</span>([<span class="ruby-string">&#39;document&#39;</span>, <span class="ruby-string">&#39;.pdf&#39;</span>])
<span class="ruby-identifier">bin</span>=<span class="ruby-constant">Rails</span>.<span class="ruby-identifier">application</span>.<span class="ruby-identifier">config</span>.<span class="ruby-identifier">pdf_bin</span>
<span class="ruby-identifier">sin</span>,<span class="ruby-identifier">sout</span>,<span class="ruby-identifier">serr</span>=<span class="ruby-constant">Open3</span>.<span class="ruby-identifier">popen3</span>(<span class="ruby-node">&quot;#{bin} --header-html \&quot;file://#{Rails.root}/app/views/documents/header.html\&quot; --footer-html \&quot;file://#{Rails.root}/app/views/documents/footer.html\&quot; --replace title1 \&quot;#{self.name}\&quot; - #{file.path}&quot;</span>)
<span class="ruby-comment">#Rails.logger.puts(&quot;#{bin} --header-html \&quot;file://#{Rails.root}/app/views/documents/header.html\&quot; --footer-html \&quot;file://#{Rails.root}/app/views/documents/footer.html\&quot; --replace title1 \&quot;#{self.name}\&quot; \&quot;#{url}\&quot; \&quot;#{file.path}\&quot; &quot;)</span>
<span class="ruby-comment"># `#{bin} --header-html &quot;file://#{Rails.root}/app/views/documents/header.html&quot; --footer-html &quot;file://#{Rails.root}/app/views/documents/footer.html&quot; --replace title1 &quot;#{self.name}&quot; #{url} #{file.path} `</span>
<span class="ruby-identifier">sin</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-node">&quot;&lt;h1&gt;#{self.name}&lt;/h1&gt;&quot;</span>)
<span class="ruby-identifier">t</span>=<span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span>
<span class="ruby-identifier">t</span>.<span class="ruby-identifier">gsub!</span>(<span class="ruby-regexp">/src=&quot;[\.\/]*(uploads[^&quot;]*)&quot;/</span>){<span class="ruby-operator">|</span><span class="ruby-identifier">s</span><span class="ruby-operator">|</span> <span class="ruby-node">&quot;src=\&quot;#{Rails.root}/public/&quot;</span><span class="ruby-operator">+</span><span class="ruby-node">$1</span>.<span class="ruby-identifier">to_s</span><span class="ruby-operator">+</span><span class="ruby-string">&#39;&quot;&#39;</span>}
<span class="ruby-identifier">sin</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-identifier">t</span>)
<span class="ruby-identifier">sin</span>.<span class="ruby-identifier">close</span>
<span class="ruby-constant">Rails</span>.<span class="ruby-identifier">logger</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-identifier">serr</span>.<span class="ruby-identifier">read</span>)
<span class="ruby-identifier">file</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- create_pdf-source -->
</div>
</div><!-- create_pdf-method -->
<div id="divid-method" class="method-detail ">
<a name="method-i-divid"></a>
<div class="method-heading">
<span class="method-name">divid</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="divid-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 23</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">divid</span>
<span class="ruby-string">&quot;document_&quot;</span><span class="ruby-operator">+</span><span class="ruby-keyword">self</span>.<span class="ruby-identifier">id</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- divid-source -->
</div>
</div><!-- divid-method -->
<div id="dump_to_etherpad-method" class="method-detail ">
<a name="method-i-dump_to_etherpad"></a>
<div class="method-heading">
<span class="method-name">dump_to_etherpad</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="dump_to_etherpad-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 82</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">dump_to_etherpad</span>
<span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">is_etherpad?</span>
<span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">ep_pad</span>.<span class="ruby-identifier">html</span> = <span class="ruby-string">&#39;&lt;div&gt;&#39;</span><span class="ruby-operator">+</span><span class="ruby-string">&quot;text&quot;</span><span class="ruby-operator">+</span><span class="ruby-string">&#39;&lt;/div&gt;&#39;</span>
<span class="ruby-keyword">else</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">ep_pad</span>.<span class="ruby-identifier">html</span> = <span class="ruby-string">&#39;&lt;div&gt;&#39;</span><span class="ruby-operator">+</span><span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span><span class="ruby-operator">+</span><span class="ruby-string">&#39;&lt;/div&gt;&#39;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">else</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">move_to_etherpad</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- dump_to_etherpad-source -->
</div>
</div><!-- dump_to_etherpad-method -->
<div id="ep_group-method" class="method-detail ">
<a name="method-i-ep_group"></a>
<div class="method-heading">
<span class="method-name">ep_group</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="ep_group-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 100</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ep_group</span>
<span class="ruby-identifier">t</span>= (<span class="ruby-keyword">self</span>.<span class="ruby-identifier">typ</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">typ</span> <span class="ruby-operator">==</span><span class="ruby-value">0</span>) <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">typ</span>
<span class="ruby-constant">Document</span>.<span class="ruby-identifier">ether</span>.<span class="ruby-identifier">group</span>(<span class="ruby-constant">Document</span><span class="ruby-operator">::</span><span class="ruby-constant">TYPS</span>[<span class="ruby-identifier">t</span>])
<span class="ruby-keyword">end</span></pre>
</div><!-- ep_group-source -->
</div>
</div><!-- ep_group-method -->
<div id="ep_pad-method" class="method-detail ">
<a name="method-i-ep_pad"></a>
<div class="method-heading">
<span class="method-name">ep_pad</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="ep_pad-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 97</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ep_pad</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">ep_group</span>.<span class="ruby-identifier">pad</span>(<span class="ruby-keyword">self</span>.<span class="ruby-identifier">etherpadkey</span>)
<span class="ruby-keyword">end</span></pre>
</div><!-- ep_pad-source -->
</div>
</div><!-- ep_pad-method -->
<div id="ether-method" class="method-detail ">
<a name="method-i-ether"></a>
<div class="method-heading">
<span class="method-name">ether</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="ether-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 62</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">ether</span>
<span class="ruby-keyword">if</span> <span class="ruby-ivar">@ep</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-ivar">@ep</span>=<span class="ruby-constant">Document</span>.<span class="ruby-identifier">ether</span>
<span class="ruby-keyword">end</span>
<span class="ruby-ivar">@ep</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- ether-source -->
</div>
</div><!-- ether-method -->
<div id="is_etherpad-3F-method" class="method-detail ">
<a name="method-i-is_etherpad-3F"></a>
<div class="method-heading">
<span class="method-name">is_etherpad?</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="is_etherpad-3F-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 68</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">is_etherpad?</span>
<span class="ruby-operator">!</span>(<span class="ruby-identifier">etherpadkey</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">etherpadkey</span>.<span class="ruby-identifier">empty?</span>)
<span class="ruby-keyword">end</span></pre>
</div><!-- is_etherpad-3F-source -->
</div>
</div><!-- is_etherpad-3F-method -->
<div id="long_name-method" class="method-detail ">
<a name="method-i-long_name"></a>
<div class="method-heading">
<span class="method-name">long_name</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="long_name-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 13</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">long_name</span>
<span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">class</span><span class="ruby-operator">==</span><span class="ruby-string">&quot;Meeting&quot;</span>
<span class="ruby-string">&quot;&lt;b&gt;&quot;</span><span class="ruby-operator">+</span><span class="ruby-keyword">self</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">text</span><span class="ruby-operator">+</span> <span class="ruby-string">&quot;&lt;/b&gt;&quot;</span><span class="ruby-operator">+</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span>
<span class="ruby-keyword">else</span>
<span class="ruby-string">&quot;&lt;b&gt;&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">title</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot;:&lt;/b&gt;&quot;</span><span class="ruby-operator">+</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">name</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- long_name-source -->
</div>
</div><!-- long_name-method -->
<div id="maketoc-method" class="method-detail ">
<a name="method-i-maketoc"></a>
<div class="method-heading">
<span class="method-name">maketoc</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="maketoc-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 117</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">maketoc</span>
<span class="ruby-identifier">require</span> <span class="ruby-string">&quot;open3&quot;</span>
<span class="ruby-identifier">require</span> <span class="ruby-string">&quot;json&quot;</span>
<span class="ruby-identifier">sin</span>,<span class="ruby-identifier">sout</span>,<span class="ruby-identifier">serr</span>=<span class="ruby-constant">Open3</span>.<span class="ruby-identifier">popen3</span>(<span class="ruby-node">&quot;python #{Rails.root}/bin/maketoc.py&quot;</span>)
<span class="ruby-identifier">sin</span>.<span class="ruby-identifier">puts</span>(<span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span>)
<span class="ruby-identifier">sin</span>.<span class="ruby-identifier">close</span>
<span class="ruby-identifier">b</span>=<span class="ruby-identifier">sout</span>.<span class="ruby-identifier">read</span>()
<span class="ruby-identifier">c</span>=<span class="ruby-constant">JSON</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">b</span>)
<span class="ruby-identifier">l</span>=<span class="ruby-value">2</span>
<span class="ruby-identifier">f</span>=<span class="ruby-keyword">true</span>;
<span class="ruby-identifier">s</span>=<span class="ruby-string">&quot;&lt;ul&gt;&quot;</span>
<span class="ruby-identifier">c</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">s</span>=<span class="ruby-identifier">s</span><span class="ruby-operator">+</span> <span class="ruby-string">&quot;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&quot;</span>*(<span class="ruby-identifier">l</span><span class="ruby-operator">-</span><span class="ruby-identifier">h</span>[<span class="ruby-string">&quot;level&quot;</span>]) <span class="ruby-keyword">if</span> (<span class="ruby-identifier">h</span>[<span class="ruby-string">&quot;level&quot;</span>]<span class="ruby-operator">&lt;</span><span class="ruby-identifier">l</span>) <span class="ruby-keyword">and</span> <span class="ruby-operator">!</span><span class="ruby-identifier">f</span>
<span class="ruby-identifier">s</span>=<span class="ruby-identifier">s</span><span class="ruby-operator">+</span><span class="ruby-string">&quot; &lt;/li&gt;&quot;</span> <span class="ruby-keyword">if</span> (<span class="ruby-identifier">h</span>[<span class="ruby-string">&quot;level&quot;</span>]<span class="ruby-operator">==</span><span class="ruby-identifier">l</span>) <span class="ruby-keyword">and</span> <span class="ruby-operator">!</span><span class="ruby-identifier">f</span>
<span class="ruby-keyword">if</span> (<span class="ruby-identifier">h</span>[<span class="ruby-string">&quot;level&quot;</span>]<span class="ruby-operator">&gt;</span><span class="ruby-identifier">l</span>)
<span class="ruby-identifier">s</span>=<span class="ruby-identifier">s</span> <span class="ruby-operator">+</span> <span class="ruby-string">&quot;&lt;ul&gt;&lt;li&gt;&quot;</span> * (<span class="ruby-identifier">h</span>[<span class="ruby-string">&quot;level&quot;</span>]<span class="ruby-operator">-</span><span class="ruby-identifier">l</span>)
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">s</span>=<span class="ruby-identifier">s</span><span class="ruby-operator">+</span><span class="ruby-string">&quot;&lt;li&gt;&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">s</span>=<span class="ruby-identifier">s</span><span class="ruby-operator">+</span><span class="ruby-identifier">h</span>[<span class="ruby-string">&quot;text&quot;</span>]
<span class="ruby-identifier">l</span> = <span class="ruby-identifier">h</span>[<span class="ruby-string">&quot;level&quot;</span>]
<span class="ruby-identifier">f</span>=<span class="ruby-keyword">false</span>
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">s</span>=<span class="ruby-identifier">s</span><span class="ruby-operator">+</span><span class="ruby-string">&quot;&lt;/ul&gt;&quot;</span>*(<span class="ruby-identifier">l</span><span class="ruby-operator">-</span><span class="ruby-value">2</span>) <span class="ruby-keyword">if</span> (<span class="ruby-identifier">l</span><span class="ruby-operator">&gt;</span><span class="ruby-value">2</span>)
<span class="ruby-identifier">s</span>=<span class="ruby-identifier">s</span><span class="ruby-operator">+</span><span class="ruby-string">&quot;&lt;/ul&gt;&quot;</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">toc</span>=<span class="ruby-identifier">s</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- maketoc-source -->
</div>
</div><!-- maketoc-method -->
<div id="move_to_etherpad-method" class="method-detail ">
<a name="method-i-move_to_etherpad"></a>
<div class="method-heading">
<span class="method-name">move_to_etherpad</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="move_to_etherpad-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 71</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">move_to_etherpad</span>
<span class="ruby-keyword">unless</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">is_etherpad?</span> <span class="ruby-operator">||</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">id</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">etherpadkey</span>=<span class="ruby-string">&quot;document_&quot;</span><span class="ruby-operator">+</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">id</span>.<span class="ruby-identifier">to_s</span>
<span class="ruby-keyword">if</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span>.<span class="ruby-identifier">nil?</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">ep_pad</span>.<span class="ruby-identifier">html</span> = <span class="ruby-string">&#39;&lt;div&gt;&#39;</span><span class="ruby-operator">+</span><span class="ruby-string">&quot;text&quot;</span><span class="ruby-operator">+</span><span class="ruby-string">&#39;&lt;/div&gt;&#39;</span>
<span class="ruby-keyword">else</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">ep_pad</span>.<span class="ruby-identifier">html</span> = <span class="ruby-string">&#39;&lt;div&gt;&#39;</span><span class="ruby-operator">+</span><span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span><span class="ruby-operator">+</span><span class="ruby-string">&#39;&lt;/div&gt;&#39;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- move_to_etherpad-source -->
</div>
</div><!-- move_to_etherpad-method -->
<div id="read_from_etherpad-method" class="method-detail ">
<a name="method-i-read_from_etherpad"></a>
<div class="method-heading">
<span class="method-name">read_from_etherpad</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="read_from_etherpad-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 93</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">read_from_etherpad</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span>=<span class="ruby-constant">ApplicationController</span>.<span class="ruby-identifier">helpers</span>.<span class="ruby-identifier">strip_control_chars</span>( <span class="ruby-keyword">self</span>.<span class="ruby-identifier">ep_pad</span>.<span class="ruby-identifier">html</span>)
<span class="ruby-keyword">end</span></pre>
</div><!-- read_from_etherpad-source -->
</div>
</div><!-- read_from_etherpad-method -->
<div id="sanitize-method" class="method-detail ">
<a name="method-i-sanitize"></a>
<div class="method-heading">
<span class="method-name">sanitize</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="sanitize-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 48</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">sanitize</span>
<span class="ruby-identifier">trans_icons</span>= <span class="ruby-identifier">lambda</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">env</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">node</span>=<span class="ruby-identifier">env</span>[<span class="ruby-value">:node</span>]
<span class="ruby-identifier">node_name</span>=<span class="ruby-identifier">env</span>[<span class="ruby-value">:node_name</span>]
<span class="ruby-keyword">return</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">env</span>[<span class="ruby-value">:is_whitelisted</span>] <span class="ruby-operator">||</span> <span class="ruby-operator">!</span><span class="ruby-identifier">node</span>.<span class="ruby-identifier">element?</span>
<span class="ruby-keyword">return</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">node_name</span> <span class="ruby-operator">==</span> <span class="ruby-string">&#39;span&#39;</span>
<span class="ruby-comment"># return unless node[&quot;class&quot;] =~ /.*ffi.*/</span>
<span class="ruby-constant">Sanitize</span>.<span class="ruby-identifier">node!</span>(<span class="ruby-identifier">node</span>,{<span class="ruby-value">:elements=</span><span class="ruby-operator">&gt;</span>[<span class="ruby-string">&quot;span&quot;</span>],<span class="ruby-value">:attributes=</span><span class="ruby-operator">&gt;</span>{<span class="ruby-string">&quot;span&quot;</span>=<span class="ruby-operator">&gt;</span>[<span class="ruby-string">&quot;class&quot;</span>,<span class="ruby-string">&quot;style&quot;</span>]},<span class="ruby-value">:css=</span><span class="ruby-operator">&gt;</span>{<span class="ruby-value">:properties=</span><span class="ruby-operator">&gt;</span>[<span class="ruby-string">&quot;color&quot;</span>]}})
{<span class="ruby-value">:node_whitelist=</span><span class="ruby-operator">&gt;</span>[<span class="ruby-identifier">node</span>]}
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span> = <span class="ruby-constant">Sanitize</span>.<span class="ruby-identifier">fragment</span>(<span class="ruby-keyword">self</span>.<span class="ruby-identifier">text</span>, {<span class="ruby-value">:elements=</span><span class="ruby-operator">&gt;</span>[<span class="ruby-string">&#39;table&#39;</span>,<span class="ruby-string">&#39;tr&#39;</span>,<span class="ruby-string">&#39;td&#39;</span>,<span class="ruby-string">&#39;p&#39;</span>,<span class="ruby-string">&#39;h1&#39;</span>,<span class="ruby-string">&#39;h2&#39;</span>,<span class="ruby-string">&#39;h3&#39;</span>,<span class="ruby-string">&#39;h4&#39;</span>,<span class="ruby-string">&#39;h5&#39;</span>,<span class="ruby-string">&#39;a&#39;</span>,<span class="ruby-string">&#39;th&#39;</span>,<span class="ruby-string">&#39;img&#39;</span>,<span class="ruby-string">&#39;ul&#39;</span>,<span class="ruby-string">&#39;li&#39;</span>,<span class="ruby-string">&#39;i&#39;</span>,<span class="ruby-string">&#39;b&#39;</span>,<span class="ruby-string">&#39;em&#39;</span>,<span class="ruby-string">&#39;pre&#39;</span>,<span class="ruby-string">&#39;code&#39;</span>],<span class="ruby-value">:attributes=</span><span class="ruby-operator">&gt;</span>{<span class="ruby-string">&#39;p&#39;</span>=<span class="ruby-operator">&gt;</span>[<span class="ruby-string">&#39;class&#39;</span>],<span class="ruby-string">&#39;table&#39;</span>=<span class="ruby-operator">&gt;</span>[<span class="ruby-string">&#39;class&#39;</span>],<span class="ruby-string">&#39;a&#39;</span>=<span class="ruby-operator">&gt;</span>[<span class="ruby-string">&#39;href&#39;</span>,<span class="ruby-string">&#39;data&#39;</span>],<span class="ruby-string">&#39;img&#39;</span>=<span class="ruby-operator">&gt;</span>[<span class="ruby-string">&#39;src&#39;</span>,<span class="ruby-string">&#39;width&#39;</span>,<span class="ruby-string">&#39;height&#39;</span>],<span class="ruby-value">:all=</span><span class="ruby-operator">&gt;</span>[<span class="ruby-string">&#39;class&#39;</span>]},<span class="ruby-value">:css=</span><span class="ruby-operator">&gt;</span>{<span class="ruby-value">:properties=</span><span class="ruby-operator">&gt;</span>[<span class="ruby-string">&#39;float&#39;</span>]},<span class="ruby-value">:transformers=</span><span class="ruby-operator">&gt;</span>[<span class="ruby-identifier">trans_icons</span>]})
<span class="ruby-keyword">end</span></pre>
</div><!-- sanitize-source -->
</div>
</div><!-- sanitize-method -->
<div id="text_stripped-method" class="method-detail ">
<a name="method-i-text_stripped"></a>
<div class="method-heading">
<span class="method-name">text_stripped</span><span
class="method-args">()</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="text_stripped-source">
<pre>
<span class="ruby-comment"># File app/models/document.rb, line 104</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">text_stripped</span>
<span class="ruby-constant">ApplicationController</span>.<span class="ruby-identifier">helpers</span>.<span class="ruby-identifier">strip_control_chars</span>(<span class="ruby-constant">ApplicationController</span>.<span class="ruby-identifier">helpers</span>.<span class="ruby-identifier">strip_tags</span>(<span class="ruby-identifier">text</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-string">&quot;&lt;&quot;</span>,<span class="ruby-string">&quot; &lt;&quot;</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-string">&quot;&gt;&quot;</span>,<span class="ruby-string">&quot;&gt; &quot;</span>).<span class="ruby-identifier">to_s</span>))
<span class="ruby-keyword">end</span></pre>
</div><!-- text_stripped-source -->
</div>
</div><!-- text_stripped-method -->
</div><!-- public-instance-method-details -->
</div><!-- 5Buntitled-5D -->
</div><!-- documentation -->
<div id="validator-badges">
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
<p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
Rdoc Generator</a> 2</small>.</p>
</div>
</body>
</html>