icon_links 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +28 -4
- data/lib/icon_links/method_missing.rb +6 -6
- data/lib/icon_links/view_helpers.rb +5 -5
- metadata +4 -4
data/README.md
CHANGED
@@ -1,10 +1,34 @@
|
|
1
1
|
IconLinks
|
2
2
|
=========
|
3
|
-
Easily link icons of your choosing
|
4
|
-
|
3
|
+
Easily link icons of your choosing, by using the handy Rails helpers included in this plugin. Works great with Silk icons, but will work equally well for any other icon set you have as well. This is basically a set of shortcuts around the standard Rails REST routes and url helpers.
|
5
4
|
|
6
5
|
Example
|
7
6
|
=======
|
8
|
-
|
7
|
+
If you download the [Fam Fam Fam Silk Icons](http://www.famfamfam.com/lab/icons/silk/) and unzip them to `public/images/icons`, you then only need to change the standard Rails idioms:
|
8
|
+
|
9
|
+
link_to 'Show', post_path(@post)
|
10
|
+
link_to 'Edit', edit_posts_path(@post)
|
11
|
+
link_to 'Destroy', posts_path(@post), :confirm => 'Are you sure?', :method => :delete
|
12
|
+
link_to 'Back', posts_path
|
13
|
+
|
14
|
+
To:
|
15
|
+
|
16
|
+
icon_to :show, post_path(@post)
|
17
|
+
icon_to :edit, edit_post_path(@post)
|
18
|
+
icon_to :delete, post_path(@post), :confirm => 'Are you sure?', :method => :delete
|
19
|
+
icon_to :back, posts_path
|
20
|
+
|
21
|
+
And you'll get snazzy, linked silk icons that will make you cry.
|
22
|
+
|
23
|
+
You can even go one fancier, and use REST route helpers with an `_icon` suffix:
|
24
|
+
|
25
|
+
post_icon(@post)
|
26
|
+
edit_post_icon(@post)
|
27
|
+
delete_post_icon(@post, :confirm => 'Are you sure?', :method => :delete)
|
28
|
+
|
29
|
+
Yeah, this plugin is simple and sweet. Sugary, like candy.
|
9
30
|
|
10
|
-
|
31
|
+
Author
|
32
|
+
======
|
33
|
+
Copyright (c) 2008-2010 [Nate Wiger](http://nateware.com). All Rights Reserved.
|
34
|
+
Released under the MIT license.
|
@@ -32,25 +32,25 @@ module IconLinks
|
|
32
32
|
url = send("new_#{meth}_path", options)
|
33
33
|
#options[:rel] = "gb_page_center[600, 500]" # greybox
|
34
34
|
options[:title] ||= "Create a new #{label}"
|
35
|
-
return
|
35
|
+
return icon_to(icon, url, options)
|
36
36
|
|
37
37
|
when 'ajaxnew'
|
38
38
|
url = send("new_#{meth}_path", options)
|
39
39
|
#options[:rel] = "gb_page_center[600, 500]" # greybox
|
40
40
|
options[:title] ||= "Create a new #{label}"
|
41
|
-
return
|
41
|
+
return icon_to(icon, url, options)
|
42
42
|
|
43
43
|
when 'edit'
|
44
44
|
url = send("edit_#{meth}_path", args)
|
45
45
|
#options[:rel] = "gb_page_center[600, 500]" # greybox
|
46
46
|
options[:title] ||= "Edit this #{label}"
|
47
|
-
return
|
47
|
+
return icon_to(icon, url, options)
|
48
48
|
|
49
49
|
when 'delete'
|
50
50
|
url = send("#{meth}_path", args)
|
51
51
|
options[:method] ||= :delete
|
52
52
|
options[:title] ||= "Delete this #{label}"
|
53
|
-
return
|
53
|
+
return icon_to(icon, url, options)
|
54
54
|
|
55
55
|
when 'ajaxdelete'
|
56
56
|
# Delete a record with an id, ala user_path(user)
|
@@ -142,7 +142,7 @@ module IconLinks
|
|
142
142
|
# main index, this does NOT have an id
|
143
143
|
url = send("#{meth}_path", args)
|
144
144
|
options[:title] ||= "View this #{label}"
|
145
|
-
return
|
145
|
+
return icon_to(icon, url, options)
|
146
146
|
else
|
147
147
|
# This generic handler handles all other actions
|
148
148
|
options[:title] ||= "#{type.titleize} this #{label}"
|
@@ -164,7 +164,7 @@ module IconLinks
|
|
164
164
|
options[:url] = url
|
165
165
|
return link_to_remote(icon_tag(icon), options, htmlopt)
|
166
166
|
else
|
167
|
-
return
|
167
|
+
return icon_to(icon, url, options)
|
168
168
|
end
|
169
169
|
end
|
170
170
|
end
|
@@ -5,7 +5,7 @@ module IconLinks
|
|
5
5
|
|
6
6
|
# This creates a link using the specified type of icon. The args
|
7
7
|
# accepted are the exact same as the args for +link_to+.
|
8
|
-
def
|
8
|
+
def icon_to(text, *args)
|
9
9
|
if args.first.is_a?(Hash)
|
10
10
|
return icon_tag(:clear) unless args[0].delete(:if)
|
11
11
|
end
|
@@ -14,20 +14,20 @@ module IconLinks
|
|
14
14
|
|
15
15
|
# This creates a link using the specified type of icon. The args
|
16
16
|
# accepted are the exact same as the args for +link_to_remote+.
|
17
|
-
def
|
17
|
+
def icon_to_remote(text, *args)
|
18
18
|
if args.first.is_a?(Hash)
|
19
19
|
return icon_tag(:clear) unless args[0].delete(:if)
|
20
20
|
end
|
21
21
|
link_to_remote(icon_for(text), *args)
|
22
22
|
end
|
23
23
|
|
24
|
-
# This is similar to
|
24
|
+
# This is similar to icon_to, only it is designed to call a JS function
|
25
25
|
def function_icon(text, function)
|
26
26
|
link_to(icon_for(text), '#', :onclick => function)
|
27
27
|
end
|
28
28
|
|
29
29
|
# This expands the text and returns the icon path. It is used internally
|
30
|
-
# by +
|
30
|
+
# by +icon_to+ and +icon_to_remote+ to render the link text.
|
31
31
|
def icon_for(text, excess=nil)
|
32
32
|
link = nil
|
33
33
|
if text.is_a? Array
|
@@ -61,7 +61,7 @@ module IconLinks
|
|
61
61
|
}.update(options)
|
62
62
|
end
|
63
63
|
|
64
|
-
# This returns a help link similar to +
|
64
|
+
# This returns a help link similar to +icon_to+, only using the help
|
65
65
|
# from the system_help table. If no help is found, then an empty
|
66
66
|
# string is returned (allowing you to randomly call this on any
|
67
67
|
# object, without having to check if help exists first).
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 0.1.
|
8
|
+
- 1
|
9
|
+
version: 0.1.1
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Nate Wiger
|
@@ -30,7 +30,7 @@ dependencies:
|
|
30
30
|
version: "2.3"
|
31
31
|
type: :runtime
|
32
32
|
version_requirements: *id001
|
33
|
-
description:
|
33
|
+
description: Replace boring text links with sexy icons, with handy Rails icon_to helpers.
|
34
34
|
email: nate@wiger.org
|
35
35
|
executables: []
|
36
36
|
|
@@ -78,6 +78,6 @@ rubyforge_project: icon_links
|
|
78
78
|
rubygems_version: 1.3.6
|
79
79
|
signing_key:
|
80
80
|
specification_version: 3
|
81
|
-
summary: Replace text links with icons
|
81
|
+
summary: Replace boring text links with sexy icons, with handy Rails icon_to helpers.
|
82
82
|
test_files: []
|
83
83
|
|