Files
fetsite/doc/app/UploaderInput.html

1098 lines
45 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: UploaderInput</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/inputs/uploader_input_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
class="thickbox" title="app/inputs/uploader_input.rb">app/inputs/uploader_input.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">Formtastic::Inputs::FileInput</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-i-cache_html">#cache_html</a></li>
<li><a href="#method-i-existing_html">#existing_html</a></li>
<li><a href="#method-i-existing_html_options">#existing_html_options</a></li>
<li><a href="#method-i-existing_link_html_options">#existing_link_html_options</a></li>
<li><a href="#method-i-expand_html_options">#expand_html_options</a></li>
<li><a href="#method-i-file_html">#file_html</a></li>
<li><a href="#method-i-linkable-3F">#linkable?</a></li>
<li><a href="#method-i-method_changed-3F">#method_changed?</a></li>
<li><a href="#method-i-method_present-3F">#method_present?</a></li>
<li><a href="#method-i-method_was_present-3F">#method_was_present?</a></li>
<li><a href="#method-i-removable-3F">#removable?</a></li>
<li><a href="#method-i-remove_html">#remove_html</a></li>
<li><a href="#method-i-replace_html">#replace_html</a></li>
<li><a href="#method-i-replace_label_html">#replace_label_html</a></li>
<li><a href="#method-i-replaceable-3F">#replaceable?</a></li>
<li><a href="#method-i-to_html">#to_html</a></li>
<li><a href="#method-i-wrapper_html_options">#wrapper_html_options</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">UploaderInput</h1>
<div id="description" class="description">
<p>A formtastic input which incorporates carrierwave uploader functionality.</p>
<p>Intelligently adds the cache field, displays and links to the current value
if there is one, adds a class to the wrapper when replacing an existing
value, allows removing an existing value with the checkbox taking into
account validation requirements.</p>
<p>There are several options:</p>
<pre>* Toggle the replacement field with `replaceable: true/false`.
* The replace file label is translatable as `replace_label` or using option `replace_label: &quot;value&quot;` (like `label`).
* Toggle the remove checkbox with `removable: true/false` (`true` overrides `required`).
* The remove checkbox label is translatable as `remove_label` or using option `remove_label: &quot;value&quot;` (like `label`).
* Override existing file display and links using `existing_html` and `existing_link_html` (like `wrapper_html`).</pre>
<p>Example: `form.input :file, as: “uploader”`</p>
<p>Copyright © Samuel Cochran 2012, under the [MIT license](<a
href="http://www.opensource.org/licenses/mit-license">www.opensource.org/licenses/mit-license</a>).</p>
</div><!-- description -->
<div id="5Buntitled-5D" class="documentation-section">
<!-- Methods -->
<div id="public-instance-method-details" class="method-section section">
<h3 class="section-header">Public Instance Methods</h3>
<div id="cache_html-method" class="method-detail ">
<a name="method-i-cache_html"></a>
<div class="method-heading">
<span class="method-name">cache_html</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="cache_html-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 66</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">cache_html</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">method_changed?</span>
<span class="ruby-identifier">builder</span>.<span class="ruby-identifier">hidden_field</span>(<span class="ruby-node">&quot;#{method}_cache&quot;</span>)
<span class="ruby-keyword">end</span> <span class="ruby-keyword">or</span> <span class="ruby-string">&quot;&quot;</span>.<span class="ruby-identifier">html_safe</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- cache_html-source -->
</div>
</div><!-- cache_html-method -->
<div id="existing_html-method" class="method-detail ">
<a name="method-i-existing_html"></a>
<div class="method-heading">
<span class="method-name">existing_html</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="existing_html-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 88</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">existing_html</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">method_present?</span>
<span class="ruby-comment"># TODO: Add classes based on mime type for icons, etc.</span>
<span class="ruby-identifier">existing</span> = <span class="ruby-identifier">template</span>.<span class="ruby-identifier">content_tag</span>(<span class="ruby-value">:span</span>, <span class="ruby-identifier">template</span>.<span class="ruby-identifier">image_tag</span>( <span class="ruby-identifier">object</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">method</span>).<span class="ruby-identifier">thumb</span>), <span class="ruby-identifier">existing_html_options</span>)
<span class="ruby-identifier">template</span>.<span class="ruby-identifier">link_to_if</span> <span class="ruby-identifier">linkable?</span>, <span class="ruby-identifier">existing</span>, <span class="ruby-identifier">object</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">method</span>).<span class="ruby-identifier">url</span>, <span class="ruby-identifier">existing_link_html_options</span>
<span class="ruby-keyword">end</span> <span class="ruby-keyword">or</span> <span class="ruby-string">&quot;&quot;</span>.<span class="ruby-identifier">html_safe</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- existing_html-source -->
</div>
</div><!-- existing_html-method -->
<div id="existing_html_options-method" class="method-detail ">
<a name="method-i-existing_html_options"></a>
<div class="method-heading">
<span class="method-name">existing_html_options</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="existing_html_options-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 76</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">existing_html_options</span>
<span class="ruby-identifier">expand_html_options</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:existing_html</span>]) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">opts</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot;existing&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- existing_html_options-source -->
</div>
</div><!-- existing_html_options-method -->
<div id="existing_link_html_options-method" class="method-detail ">
<a name="method-i-existing_link_html_options"></a>
<div class="method-heading">
<span class="method-name">existing_link_html_options</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="existing_link_html_options-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 82</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">existing_link_html_options</span>
<span class="ruby-identifier">expand_html_options</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:existing_link_html</span>]) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">opts</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot;existing&quot;</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- existing_link_html_options-source -->
</div>
</div><!-- existing_link_html_options-method -->
<div id="file_html-method" class="method-detail ">
<a name="method-i-file_html"></a>
<div class="method-heading">
<span class="method-name">file_html</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="file_html-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 72</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">file_html</span>
<span class="ruby-identifier">builder</span>.<span class="ruby-identifier">file_field</span>(<span class="ruby-identifier">method</span>, <span class="ruby-identifier">input_html_options</span>)
<span class="ruby-keyword">end</span></pre>
</div><!-- file_html-source -->
</div>
</div><!-- file_html-method -->
<div id="linkable-3F-method" class="method-detail ">
<a name="method-i-linkable-3F"></a>
<div class="method-heading">
<span class="method-name">linkable?</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="linkable-3F-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 20</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">linkable?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:linkable</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">false</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- linkable-3F-source -->
</div>
</div><!-- linkable-3F-method -->
<div id="method_changed-3F-method" class="method-detail ">
<a name="method-i-method_changed-3F"></a>
<div class="method-heading">
<span class="method-name">method_changed?</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="method_changed-3F-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 40</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">method_changed?</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">respond_to?</span> <span class="ruby-node">&quot;#{method}_changed?&quot;</span>
<span class="ruby-identifier">object</span>.<span class="ruby-identifier">send</span> <span class="ruby-node">&quot;#{method}_changed?&quot;</span>
<span class="ruby-keyword">else</span>
<span class="ruby-keyword">false</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- method_changed-3F-source -->
</div>
</div><!-- method_changed-3F-method -->
<div id="method_present-3F-method" class="method-detail ">
<a name="method-i-method_present-3F"></a>
<div class="method-heading">
<span class="method-name">method_present?</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="method_present-3F-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 32</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">method_present?</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-node">&quot;#{method}?&quot;</span>)
<span class="ruby-identifier">object</span>.<span class="ruby-identifier">send</span>(<span class="ruby-node">&quot;#{method}?&quot;</span>)
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">object</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">method</span>).<span class="ruby-identifier">present?</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- method_present-3F-source -->
</div>
</div><!-- method_present-3F-method -->
<div id="method_was_present-3F-method" class="method-detail ">
<a name="method-i-method_was_present-3F"></a>
<div class="method-heading">
<span class="method-name">method_was_present?</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="method_was_present-3F-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 48</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">method_was_present?</span>
<span class="ruby-keyword">if</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">method_changed?</span>
<span class="ruby-identifier">method_present?</span>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">object</span>.<span class="ruby-identifier">send</span>(<span class="ruby-node">&quot;#{method}_was&quot;</span>).<span class="ruby-identifier">present?</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- method_was_present-3F-source -->
</div>
</div><!-- method_was_present-3F-method -->
<div id="removable-3F-method" class="method-detail ">
<a name="method-i-removable-3F"></a>
<div class="method-heading">
<span class="method-name">removable?</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="removable-3F-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 28</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">removable?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:removable</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">and</span> (<span class="ruby-identifier">options</span>[<span class="ruby-value">:removable</span>] <span class="ruby-operator">==</span> <span class="ruby-keyword">true</span> <span class="ruby-keyword">or</span> <span class="ruby-keyword">not</span> <span class="ruby-identifier">required?</span>)
<span class="ruby-keyword">end</span></pre>
</div><!-- removable-3F-source -->
</div>
</div><!-- removable-3F-method -->
<div id="remove_html-method" class="method-detail ">
<a name="method-i-remove_html"></a>
<div class="method-heading">
<span class="method-name">remove_html</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="remove_html-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 109</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">remove_html</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">removable?</span>
<span class="ruby-identifier">template</span>.<span class="ruby-identifier">content_tag</span>(<span class="ruby-value">:label</span>, <span class="ruby-keyword">class</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;remove_label&quot;</span>) <span class="ruby-keyword">do</span>
<span class="ruby-identifier">template</span>.<span class="ruby-identifier">check_box_tag</span>(<span class="ruby-node">&quot;#{object_name}[remove_#{method}]&quot;</span>, <span class="ruby-string">&quot;1&quot;</span>, <span class="ruby-keyword">false</span>, <span class="ruby-identifier">id</span><span class="ruby-operator">:</span> <span class="ruby-node">&quot;#{sanitized_object_name}_remove_#{sanitized_method_name}&quot;</span>) <span class="ruby-operator">&lt;&lt;</span>
<span class="ruby-comment"># XXX: There are probably better ways to do these translations using defaults.</span>
<span class="ruby-identifier">template</span>.<span class="ruby-identifier">content_tag</span>(<span class="ruby-value">:span</span>, <span class="ruby-identifier">localized_string</span>(<span class="ruby-identifier">method</span>, <span class="ruby-node">&quot;Remove #{method.to_s.titleize}&quot;</span>, <span class="ruby-value">:remove_label</span>))
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span> <span class="ruby-keyword">or</span> <span class="ruby-string">&quot;&quot;</span>.<span class="ruby-identifier">html_safe</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- remove_html-source -->
</div>
</div><!-- remove_html-method -->
<div id="replace_html-method" class="method-detail ">
<a name="method-i-replace_html"></a>
<div class="method-heading">
<span class="method-name">replace_html</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="replace_html-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 102</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">replace_html</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">replaceable?</span>
<span class="ruby-identifier">replace_label_html</span> <span class="ruby-operator">&lt;&lt;</span>
<span class="ruby-identifier">file_html</span>
<span class="ruby-keyword">end</span> <span class="ruby-keyword">or</span> <span class="ruby-string">&quot;&quot;</span>.<span class="ruby-identifier">html_safe</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- replace_html-source -->
</div>
</div><!-- replace_html-method -->
<div id="replace_label_html-method" class="method-detail ">
<a name="method-i-replace_label_html"></a>
<div class="method-heading">
<span class="method-name">replace_label_html</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="replace_label_html-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 96</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">replace_label_html</span>
<span class="ruby-identifier">template</span>.<span class="ruby-identifier">content_tag</span>(<span class="ruby-value">:label</span>, <span class="ruby-keyword">class</span><span class="ruby-operator">:</span> <span class="ruby-string">&quot;replace_label&quot;</span>) <span class="ruby-keyword">do</span>
<span class="ruby-identifier">template</span>.<span class="ruby-identifier">content_tag</span>(<span class="ruby-value">:span</span>, <span class="ruby-identifier">localized_string</span>(<span class="ruby-identifier">method</span>, <span class="ruby-node">&quot;Replace #{method.to_s.titleize}&quot;</span>, <span class="ruby-value">:replace_label</span>))
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- replace_label_html-source -->
</div>
</div><!-- replace_label_html-method -->
<div id="replaceable-3F-method" class="method-detail ">
<a name="method-i-replaceable-3F"></a>
<div class="method-heading">
<span class="method-name">replaceable?</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="replaceable-3F-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 24</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">replaceable?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:replaceable</span>] <span class="ruby-operator">!=</span> <span class="ruby-keyword">false</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- replaceable-3F-source -->
</div>
</div><!-- replaceable-3F-method -->
<div id="to_html-method" class="method-detail ">
<a name="method-i-to_html"></a>
<div class="method-heading">
<span class="method-name">to_html</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="to_html-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 119</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">to_html</span>
<span class="ruby-identifier">input_wrapping</span> <span class="ruby-keyword">do</span>
<span class="ruby-identifier">label_html</span> <span class="ruby-operator">&lt;&lt;</span>
<span class="ruby-identifier">cache_html</span> <span class="ruby-operator">&lt;&lt;</span>
<span class="ruby-keyword">if</span> <span class="ruby-identifier">method_was_present?</span>
<span class="ruby-identifier">existing_html</span> <span class="ruby-operator">&lt;&lt;</span>
<span class="ruby-identifier">replace_html</span> <span class="ruby-operator">&lt;&lt;</span>
<span class="ruby-identifier">remove_html</span>
<span class="ruby-keyword">else</span>
<span class="ruby-identifier">existing_html</span> <span class="ruby-operator">&lt;&lt;</span>
<span class="ruby-identifier">file_html</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- to_html-source -->
</div>
</div><!-- to_html-method -->
<div id="wrapper_html_options-method" class="method-detail ">
<a name="method-i-wrapper_html_options"></a>
<div class="method-heading">
<span class="method-name">wrapper_html_options</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="wrapper_html_options-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 56</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">wrapper_html_options</span>
<span class="ruby-keyword">super</span>.<span class="ruby-identifier">tap</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">options</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:class</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; replaceable&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">replaceable?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:class</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; removable&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">removable?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:class</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; present&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_present?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:class</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; changed&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_changed?</span>
<span class="ruby-identifier">options</span>[<span class="ruby-value">:class</span>] <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&quot; was_present&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">method_was_present?</span>
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- wrapper_html_options-source -->
</div>
</div><!-- wrapper_html_options-method -->
</div><!-- public-instance-method-details -->
<div id="protected-instance-method-details" class="method-section section">
<h3 class="section-header">Protected Instance Methods</h3>
<div id="expand_html_options-method" class="method-detail ">
<a name="method-i-expand_html_options"></a>
<div class="method-heading">
<span class="method-name">expand_html_options</span><span
class="method-args">(opts)</span>
<span class="method-click-advice">click to toggle source</span>
</div>
<div class="method-description">
<div class="method-source-code" id="expand_html_options-source">
<pre>
<span class="ruby-comment"># File app/inputs/uploader_input.rb, line 136</span>
<span class="ruby-keyword">def</span> <span class="ruby-identifier">expand_html_options</span> <span class="ruby-identifier">opts</span>
(<span class="ruby-identifier">opts</span> <span class="ruby-operator">||</span> {}).<span class="ruby-identifier">dup</span>.<span class="ruby-identifier">tap</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">opts</span><span class="ruby-operator">|</span>
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>] =
<span class="ruby-keyword">case</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>]
<span class="ruby-keyword">when</span> <span class="ruby-constant">Array</span>
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>].<span class="ruby-identifier">dup</span>
<span class="ruby-keyword">when</span> <span class="ruby-keyword">nil</span>
[]
<span class="ruby-keyword">else</span>
[<span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>].<span class="ruby-identifier">to_s</span>]
<span class="ruby-keyword">end</span>
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:data</span>] =
<span class="ruby-keyword">case</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:data</span>]
<span class="ruby-keyword">when</span> <span class="ruby-constant">Hash</span>
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:data</span>].<span class="ruby-identifier">dup</span>
<span class="ruby-keyword">when</span> <span class="ruby-keyword">nil</span>
{}
<span class="ruby-keyword">else</span>
{<span class="ruby-string">&quot;&quot;</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">opts</span>[<span class="ruby-value">:data</span>].<span class="ruby-identifier">to_s</span>}
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">yield</span> <span class="ruby-identifier">opts</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
<span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>] = <span class="ruby-identifier">opts</span>[<span class="ruby-value">:class</span>].<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39; &#39;</span>)
<span class="ruby-keyword">end</span>
<span class="ruby-keyword">end</span></pre>
</div><!-- expand_html_options-source -->
</div>
</div><!-- expand_html_options-method -->
</div><!-- protected-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>