peeper-rails 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +4 -0
- data/Gemfile +4 -0
- data/README.md +17 -0
- data/Rakefile +1 -0
- data/lib/peeper-rails.rb +6 -0
- data/lib/peeper-rails/version.rb +5 -0
- data/peeper-rails.gemspec +24 -0
- data/vendor/assets/javascripts/peeper.js +68 -0
- metadata +75 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
# peeper-rails
|
2
|
+
|
3
|
+
Vendors [peeper.js](https://github.com/islandr/peeper.js) for rails. Version will always mirror underlying peeper source version.
|
4
|
+
|
5
|
+
# installation
|
6
|
+
|
7
|
+
## Step 1: Add `peeper-rails` to your Gemfile and `bundle install`
|
8
|
+
|
9
|
+
```
|
10
|
+
gem 'peeper-rails', :require => false
|
11
|
+
```
|
12
|
+
|
13
|
+
## Step 2: Require `peeper` in application.js
|
14
|
+
|
15
|
+
```
|
16
|
+
//= require peeper
|
17
|
+
```
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/lib/peeper-rails.rb
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "peeper-rails/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "peeper-rails"
|
7
|
+
s.version = Peeper::Rails::VERSION
|
8
|
+
s.authors = ["Ryan Mohr"]
|
9
|
+
s.email = ["ryan.mohr@gmail.com"]
|
10
|
+
s.homepage = ""
|
11
|
+
s.summary = %q{Vendors peeper.js for rails}
|
12
|
+
#s.description = %q{TODO: Write a gem description}
|
13
|
+
|
14
|
+
s.rubyforge_project = "peeper-rails"
|
15
|
+
|
16
|
+
s.files = `git ls-files`.split("\n")
|
17
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
18
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
19
|
+
s.require_paths = ["lib"]
|
20
|
+
|
21
|
+
# specify any dependencies here; for example:
|
22
|
+
# s.add_development_dependency "rspec"
|
23
|
+
# s.add_runtime_dependency "rest-client"
|
24
|
+
end
|
@@ -0,0 +1,68 @@
|
|
1
|
+
var Peeper = (function() {
|
2
|
+
var version = '1.0.0';
|
3
|
+
|
4
|
+
function init() {
|
5
|
+
var $peepers = $("[data-source]");
|
6
|
+
|
7
|
+
$peepers.each(function(index, element) {
|
8
|
+
var $peeper = $(element);
|
9
|
+
var $source = $("#" + $peeper.attr('data-source'));
|
10
|
+
|
11
|
+
initPeeper($peeper, $source);
|
12
|
+
});
|
13
|
+
}
|
14
|
+
|
15
|
+
function initPeeper($peeper, $source) {
|
16
|
+
if ($source.length == 1) {
|
17
|
+
if ($source.is(":text")) {
|
18
|
+
bind($peeper, $source);
|
19
|
+
} else {
|
20
|
+
raise("source type not supported " + selector);
|
21
|
+
}
|
22
|
+
} else {
|
23
|
+
var error;
|
24
|
+
|
25
|
+
if ($source.length == 0) {
|
26
|
+
error = "source not found: " + selector;
|
27
|
+
} else {
|
28
|
+
error = "source is not unique: " + selector;
|
29
|
+
}
|
30
|
+
|
31
|
+
raise(error);
|
32
|
+
}
|
33
|
+
}
|
34
|
+
|
35
|
+
function bind($peeper, $source) {
|
36
|
+
$peeper.data("peeper-placeholder", $peeper.html());
|
37
|
+
|
38
|
+
$source.bind('keyup', function(event) {
|
39
|
+
var value = $source.val();
|
40
|
+
|
41
|
+
if (!value || value == "")
|
42
|
+
value = $peeper.data("peeper-placeholder");
|
43
|
+
|
44
|
+
update($peeper, value);
|
45
|
+
});
|
46
|
+
|
47
|
+
if ($source.val())
|
48
|
+
update($peeper, $source.val());
|
49
|
+
}
|
50
|
+
|
51
|
+
function update($peeper, value) {
|
52
|
+
$peeper.text(value); // using text will escape html for us
|
53
|
+
}
|
54
|
+
|
55
|
+
function capitalize(string) {
|
56
|
+
return string.charAt(0).toUpperCase() + string.slice(1);
|
57
|
+
}
|
58
|
+
|
59
|
+
function raise(error) {
|
60
|
+
throw "Peeper: " + error;
|
61
|
+
}
|
62
|
+
|
63
|
+
return {init: init, version: version};
|
64
|
+
})();
|
65
|
+
|
66
|
+
$(function() {
|
67
|
+
Peeper.init();
|
68
|
+
});
|
metadata
ADDED
@@ -0,0 +1,75 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: peeper-rails
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 23
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
- 0
|
10
|
+
version: 1.0.0
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Ryan Mohr
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2012-01-03 00:00:00 -10:00
|
19
|
+
default_executable:
|
20
|
+
dependencies: []
|
21
|
+
|
22
|
+
description:
|
23
|
+
email:
|
24
|
+
- ryan.mohr@gmail.com
|
25
|
+
executables: []
|
26
|
+
|
27
|
+
extensions: []
|
28
|
+
|
29
|
+
extra_rdoc_files: []
|
30
|
+
|
31
|
+
files:
|
32
|
+
- .gitignore
|
33
|
+
- Gemfile
|
34
|
+
- README.md
|
35
|
+
- Rakefile
|
36
|
+
- lib/peeper-rails.rb
|
37
|
+
- lib/peeper-rails/version.rb
|
38
|
+
- peeper-rails.gemspec
|
39
|
+
- vendor/assets/javascripts/peeper.js
|
40
|
+
has_rdoc: true
|
41
|
+
homepage: ""
|
42
|
+
licenses: []
|
43
|
+
|
44
|
+
post_install_message:
|
45
|
+
rdoc_options: []
|
46
|
+
|
47
|
+
require_paths:
|
48
|
+
- lib
|
49
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
hash: 3
|
55
|
+
segments:
|
56
|
+
- 0
|
57
|
+
version: "0"
|
58
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
hash: 3
|
64
|
+
segments:
|
65
|
+
- 0
|
66
|
+
version: "0"
|
67
|
+
requirements: []
|
68
|
+
|
69
|
+
rubyforge_project: peeper-rails
|
70
|
+
rubygems_version: 1.3.7
|
71
|
+
signing_key:
|
72
|
+
specification_version: 3
|
73
|
+
summary: Vendors peeper.js for rails
|
74
|
+
test_files: []
|
75
|
+
|