pow-index 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +1 -1
- data/lib/pow-index.rb +36 -21
- data/lib/pow-index/version.rb +1 -1
- data/public/styles.css +17 -3
- metadata +40 -15
data/Gemfile.lock
CHANGED
data/lib/pow-index.rb
CHANGED
@@ -6,10 +6,15 @@ module PowIndex
|
|
6
6
|
class App < Sinatra::Base
|
7
7
|
|
8
8
|
POW_PATH = "#{ENV['HOME']}/.pow"
|
9
|
+
IMAGE_PATH = "#{File.expand_path(File.dirname(__FILE__)).chomp}/../public/snaps/"
|
9
10
|
enable :inline_templates
|
10
11
|
|
12
|
+
def image_generation(link)
|
13
|
+
system "webkit2png -D #{IMAGE_PATH} -o #{link} -C http://#{link}.dev" unless link.eql?("default")
|
14
|
+
end
|
15
|
+
|
11
16
|
get '/' do
|
12
|
-
@pows = (Dir[POW_PATH
|
17
|
+
@pows = (Dir["#{POW_PATH}/*"] - [ "#{POW_PATH}/#{request.host.gsub(/.dev$/, '')}" ]).map { |link| File.basename(link)}
|
13
18
|
haml :index
|
14
19
|
end
|
15
20
|
|
@@ -18,18 +23,21 @@ module PowIndex
|
|
18
23
|
Dir[POW_PATH + "/*"].map { |symlink| FileUtils.rm(symlink) unless File.exists? File.readlink(symlink) }
|
19
24
|
@pows = Dir[POW_PATH + "/*"].map { |link| File.basename(link)}
|
20
25
|
## Snapshots generation
|
21
|
-
path = "#{File.expand_path(File.dirname(__FILE__)).chomp}/../public/snaps/"
|
22
26
|
@snaps = Dir[POW_PATH + "/*"].map { |symlink|
|
23
27
|
link = symlink.rpartition("/").last
|
24
|
-
|
28
|
+
image_generation(link)
|
25
29
|
}
|
26
30
|
haml :linktable
|
27
31
|
end
|
28
32
|
|
29
33
|
get '/linktable' do
|
30
|
-
@pows = (Dir[POW_PATH
|
34
|
+
@pows = (Dir["#{POW_PATH}/*"] - [ "#{POW_PATH}/#{request.host.gsub(/.dev$/, '')}" ]).map { |link| File.basename(link)}
|
31
35
|
haml :linktable
|
32
36
|
end
|
37
|
+
|
38
|
+
get '/regenerate/:link' do
|
39
|
+
image_generation(params[:link])
|
40
|
+
end
|
33
41
|
end
|
34
42
|
|
35
43
|
end
|
@@ -74,15 +82,16 @@ __END__
|
|
74
82
|
%img{:src => "snaps/#{pow}-clipped.png"}
|
75
83
|
%a.title{:href => "http://#{pow}.dev"}
|
76
84
|
= pow
|
85
|
+
.action
|
86
|
+
%a.reload.btn{:href => '#', :onClick => "regenerateImage('#{pow}')", :alt => 'Regenerate Image'}
|
87
|
+
%i.icon-refresh
|
77
88
|
|
78
89
|
@@ js
|
79
90
|
:javascript
|
80
91
|
function loadtable(){
|
81
|
-
$('#linktable').load('/linktable'
|
82
|
-
tableCenter();
|
83
|
-
});
|
84
|
-
|
92
|
+
$('#linktable').load('/linktable');
|
85
93
|
}
|
94
|
+
|
86
95
|
function cleanup() {
|
87
96
|
$.ajax({
|
88
97
|
type: "GET",
|
@@ -91,21 +100,27 @@ __END__
|
|
91
100
|
success: function(){
|
92
101
|
loadtable();
|
93
102
|
$('#toggle').modal('hide');
|
103
|
+
},
|
104
|
+
statusCode: {
|
105
|
+
500: function() {
|
106
|
+
$('#toggle').modal('hide');
|
107
|
+
alert("Sorry, there is some problem");
|
108
|
+
}
|
94
109
|
}
|
95
|
-
})
|
110
|
+
});
|
96
111
|
}
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
112
|
+
|
113
|
+
function regenerateImage(pow) {
|
114
|
+
$.ajax({
|
115
|
+
type: "GET",
|
116
|
+
url: "/regenerate/" + pow,
|
117
|
+
dataType: "html",
|
118
|
+
success: function(){
|
119
|
+
location.reload(true);
|
120
|
+
}
|
121
|
+
});
|
103
122
|
}
|
123
|
+
|
104
124
|
$(document).ready(function(){
|
105
|
-
loadtable();
|
106
|
-
|
107
|
-
$(window).resize(function() {
|
108
|
-
tableCenter();
|
109
|
-
});
|
110
|
-
|
125
|
+
loadtable();
|
111
126
|
});
|
data/lib/pow-index/version.rb
CHANGED
data/public/styles.css
CHANGED
@@ -610,10 +610,13 @@ a.thumbnail:hover{border-color:#0088cc;-webkit-box-shadow:0 1px 4px rgba(0, 105,
|
|
610
610
|
.invisible{visibility:hidden;}
|
611
611
|
|
612
612
|
.container{
|
613
|
-
|
613
|
+
display:table;
|
614
|
+
height: 100%;
|
615
|
+
vertical-align:middle;
|
614
616
|
}
|
615
617
|
#linktable{
|
616
|
-
|
618
|
+
display:table-cell;
|
619
|
+
vertical-align: middle;
|
617
620
|
}
|
618
621
|
#pows{
|
619
622
|
list-style:outside none;
|
@@ -624,8 +627,11 @@ a.thumbnail:hover{border-color:#0088cc;-webkit-box-shadow:0 1px 4px rgba(0, 105,
|
|
624
627
|
display:inline;
|
625
628
|
margin:0 15px 30px;
|
626
629
|
text-align:center;
|
630
|
+
position:relative;
|
627
631
|
}
|
628
632
|
.pow img{
|
633
|
+
width: 200px;
|
634
|
+
height: 150px;
|
629
635
|
display:block;
|
630
636
|
border:1px solid #D2D2CA;
|
631
637
|
webkit-border-radius:3px;
|
@@ -637,7 +643,15 @@ a.thumbnail:hover{border-color:#0088cc;-webkit-box-shadow:0 1px 4px rgba(0, 105,
|
|
637
643
|
display: inline-block;
|
638
644
|
padding:5px 10px;
|
639
645
|
}
|
640
|
-
|
646
|
+
.pow .action{
|
647
|
+
display:none;
|
648
|
+
position: absolute;
|
649
|
+
top:5;
|
650
|
+
right:5;
|
651
|
+
}
|
652
|
+
.pow:hover .action{
|
653
|
+
display:block;
|
654
|
+
}
|
641
655
|
#footer{
|
642
656
|
width:100%;
|
643
657
|
position: absolute;
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pow-index
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-09-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sinatra
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: 1.2.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 1.2.0
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: haml
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: 3.1.0
|
33
38
|
type: :runtime
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 3.1.0
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: shoulda
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ! '>='
|
@@ -43,10 +53,15 @@ dependencies:
|
|
43
53
|
version: '0'
|
44
54
|
type: :development
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
47
62
|
- !ruby/object:Gem::Dependency
|
48
63
|
name: rack-test
|
49
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
50
65
|
none: false
|
51
66
|
requirements:
|
52
67
|
- - ~>
|
@@ -54,10 +69,15 @@ dependencies:
|
|
54
69
|
version: 0.6.1
|
55
70
|
type: :development
|
56
71
|
prerelease: false
|
57
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 0.6.1
|
58
78
|
- !ruby/object:Gem::Dependency
|
59
79
|
name: rake
|
60
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
61
81
|
none: false
|
62
82
|
requirements:
|
63
83
|
- - ! '>='
|
@@ -65,7 +85,12 @@ dependencies:
|
|
65
85
|
version: 0.9.2.2
|
66
86
|
type: :development
|
67
87
|
prerelease: false
|
68
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 0.9.2.2
|
69
94
|
description: Create index page of 37signals-Pow
|
70
95
|
email:
|
71
96
|
- marutanm@gmail.com
|
@@ -108,7 +133,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
108
133
|
version: '0'
|
109
134
|
segments:
|
110
135
|
- 0
|
111
|
-
hash:
|
136
|
+
hash: 3348596689804702841
|
112
137
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
113
138
|
none: false
|
114
139
|
requirements:
|
@@ -117,10 +142,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
117
142
|
version: '0'
|
118
143
|
segments:
|
119
144
|
- 0
|
120
|
-
hash:
|
145
|
+
hash: 3348596689804702841
|
121
146
|
requirements: []
|
122
147
|
rubyforge_project: pow-index
|
123
|
-
rubygems_version: 1.8.
|
148
|
+
rubygems_version: 1.8.23
|
124
149
|
signing_key:
|
125
150
|
specification_version: 3
|
126
151
|
summary: Create index page of 37signals-Pow
|