Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

swf-guess

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

swf-guess

  • 1.0.0
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

= +swf_fu+ {}[https://travis-ci.org/marcandre/swf_fu]

With the +swf_fu+ plugin, rails treats your swf files like any other asset (images, javascripts, etc...).

+swf_fu+ (pronounced "swif-fu", bonus joke for french speakers) uses SWFObject 2.2 to embed swf objects in HTML and supports all its options. SWFObject 2 is such a nice library that Adobe now uses it as the official way to embed swf! SWFObject's project can be found at http://code.google.com/p/swfobject

Comments and pull requests welcome: http://github.com/marcandre/swf_fu

== Compatibility

Version 2 of +swf_fu+ is an engine for Rails 3.1+ and Ruby 1.8.7+.

Version 1.x was a plugin for previous versions of Rails and should not be used with Rails 3.1+. If you want to use it, checkout the v1.x branch[https://github.com/marcandre/swf_fu/tree/v1.x]. If you are upgrading to Rails 3.1+, remove the plugin!

== Install

Add to your +Gemfile+:

gem "swf_fu", "~> 2.0"

Then run bundle install.

You also need to require some javascripts, so in your app/assets/javascripts/application.js you want to append:

\= require swf_fu

== Usage

=== Embedding in HTML

To embed a swf file, use +swf_tag+: <%= swf_tag "i_like_flashing" %>

Exactly like images and javascripts, +swf_tag+ will use +swf_path+ to determine the path of the swf file; it will assume it is in /assets/swfs/ or in /public/swfs/ unless specified otherwise and it will add the ".swf" extension automatically.

You can specify alternate content either with the options :alt => "Get Flash!" or you can use +swf_tag+ as a block:

<% swf_tag "i_like_flashing" do %> Get Flash <% end %>

=== Options

  • :id - the DOM +id+ of the flash +object+ element that is used to contain the Flash object; defaults to the name of the swf in +source+
  • :width, :height - the width & height of the Flash object. Defaults to "100%". These could also specified using :size
  • :size - the size of the Flash object, in the form "400x300".
  • :mode - Either :dynamic (default) or :static. Refer to SWFObject's doc[http://code.google.com/p/swfobject/wiki/documentation#Should_I_use_the_static_or_dynamic_publishing_method?]
  • :flashvars - a Hash of variables that are passed to the swf. Can also be a string like "foo=bar&hello=world". Defaults to {:id => the DOM id}
  • :parameters - a Hash of configuration parameters for the swf. See Adobe's doc[http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_12701#optional]
  • :html_options - a Hash of extra html options for the object tag.
  • :alt - HTML text that is displayed when the Flash player is not available. Defaults to a "Get Flash" image pointing to Adobe Flash's installation page. This can also be specified as a block (see embedding section). In Rails 3, this text is assumed to be HTML, so there is no need to call +html_safe+ on it.
  • :flash_version - the version of the Flash player that is required (e.g. "7" (default) or "8.1.0")
  • :auto_install - a swf file that will upgrade flash player if needed (defaults to "expressInstall" which was installed by +swf_fu+)
  • :javascript_class - specify a javascript class (e.g. "MyFlash") for your flash object. If it exists, the +initialize+ method will be called. See the 'dummy' example in the test folder
  • :initialize - arguments to pass to the initialization method of your javascript class.
  • :div_id - the DOM +id+ of the containing div itself. Defaults to "#{option[:id]}_div"
  • :switch_off_auto_hide_show - switch off SWFObject's default hide/show behavior. SWFObject temporarily hides your SWF or alternative content until the library has decided which content to display. Defaults to nil.

You can override these default options with a global setting:

ActionView::Base.swf_default_options = {:mode => :static} # All swf_tag will use the static mode by default

In your config files, you can write this as:

config.action_view.swf_default_options = {:mode => :static} # All swf_tag will use the static mode by default

Any of these options can be a +Proc+, in which case it will be called each time swf_tag is called.

For example, the following will generate unique IDs:

my_swf_counter = 0 config.action_view.swf_default_options[:id] = Proc.new{"swf_unique_id_#{my_swf_counter+=1}"}

=== swf_path

+swf_tag+ implements and relies on +swf_path+ which behaves in a similar fashion to +image_path+, +javascript_path+, etc...:

swf_path("example") => "/swfs/example.swf" or "/assets/example.swf" swf_path("example.swf") => "/swfs/example.swf" or "/assets/example.swf" swf_path("fonts/optima") => "/swfs/fonts/optima.swf" or "/assets/fonts/optima.swf" swf_path("/fonts/optima") => "/fonts/optima.swf" swf_path("http://www.example.com/game.swf") => "http://www.example.com/game.swf"

It takes into account the global setting +asset_host+, like any other asset:

ActionController::Base.asset_host = "http://assets.example.com" image_path("logo.jpg") => "http://assets.example.com/images/logo.jpg" swf_path("fonts/optima") => "http://assets.example.com/swfs/fonts/optima.swf"

Copyright (c) 2010-2013 Marc-André Lafortune, released under the BSD license

FAQs

Package last updated on 13 Mar 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc