pow-index 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. data/README.md +10 -0
  2. data/lib/pow-index.rb +55 -8
  3. metadata +13 -11
data/README.md ADDED
@@ -0,0 +1,10 @@
1
+ Create index page for [Pow](http://pow.cx)
2
+
3
+ Install
4
+ =======
5
+ gem install pow-index
6
+
7
+ Usage
8
+ =====
9
+ $ pow-index [linkname]
10
+ => create symbolic link to gem's path
data/lib/pow-index.rb CHANGED
@@ -11,6 +11,19 @@ module PowIndex
11
11
  @pows = Dir[POW_PATH + "/*"].map { |link| File.basename(link) }
12
12
  haml :index
13
13
  end
14
+
15
+ get '/cleanup' do
16
+ require 'fileutils'
17
+ Dir[POW_PATH + "/*"].map { |symlink| FileUtils.rm(symlink) unless File.exists? File.readlink(symlink) }
18
+ @pows = Dir[POW_PATH + "/*"].map { |link| File.basename(link) }
19
+ haml :linktable
20
+ end
21
+
22
+ get '/linktable' do
23
+ @pows = Dir[POW_PATH + "/*"].map { |link| File.basename(link) }
24
+ haml :linktable
25
+ end
26
+
14
27
  end
15
28
 
16
29
  end
@@ -22,13 +35,47 @@ __END__
22
35
  %head
23
36
  %title pow index
24
37
  %link{:rel => 'stylesheet', :href => 'http://twitter.github.com/bootstrap/assets/css/bootstrap-1.2.0.min.css'}
38
+ %script{:type => 'text/javascript', :src => 'https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js'}
39
+ :javascript
40
+ function loadtable(){
41
+ $('#linktable').load('/linktable')
42
+ }
43
+ function toggle(){
44
+ $.each(['toggle', 'confirm'], function() {
45
+ if(document.getElementById(this).style.display == 'none'){
46
+ document.getElementById(this).style.display = 'block';
47
+ }else{
48
+ document.getElementById(this).style.display = 'none';
49
+ }
50
+ })
51
+ }
52
+ function cleanup() {
53
+ $.ajax({
54
+ type: "GET",
55
+ url: "/cleanup",
56
+ dataType: "html",
57
+ success: function(){
58
+ loadtable();
59
+ toggle();
60
+ }
61
+ })
62
+ }
63
+ $(function(){ loadtable(); })
25
64
  %body
26
65
  .container
27
- %h1 index
28
- %table.zebra-striped
29
- %tbody
30
- - @pows.each do |pow|
31
- %tr
32
- %td
33
- %a{:href => 'http://' + pow + '.dev'}
34
- = pow
66
+ %h1 pow index
67
+ %table.zebra-striped#linktable
68
+ .row
69
+ %button.btn.small#toggle{:onClick => 'toggle()'} Cleanup
70
+ .alert-message.block-message.warning#confirm{'style' => 'display: none'}
71
+ %button.btn.small{:onClick => 'cleanup()'} Clenup
72
+ %button.btn.small{:onClick => 'toggle()'} Cancel
73
+ %p= "Pushing 'Cleanup' removes invalid symbolic link in ~/.pow"
74
+
75
+ @@ linktable
76
+ %tbody
77
+ - @pows.each do |pow|
78
+ %tr
79
+ %td
80
+ %a{:href => "http://#{pow}.dev" }
81
+ = pow
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.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-09-07 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
16
- requirement: &70135029291180 !ruby/object:Gem::Requirement
16
+ requirement: &70365690791720 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 1.0.0
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70135029291180
24
+ version_requirements: *70365690791720
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: jeweler
27
- requirement: &70135029287500 !ruby/object:Gem::Requirement
27
+ requirement: &70365690789240 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.6.4
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70135029287500
35
+ version_requirements: *70365690789240
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: sinatra
38
- requirement: &70135029285320 !ruby/object:Gem::Requirement
38
+ requirement: &70365690786720 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 1.2.0
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70135029285320
46
+ version_requirements: *70365690786720
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: haml
49
- requirement: &70135029283280 !ruby/object:Gem::Requirement
49
+ requirement: &70365690784220 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,17 +54,19 @@ dependencies:
54
54
  version: 3.1.0
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70135029283280
57
+ version_requirements: *70365690784220
58
58
  description: Create index page of 37signals-Pow
59
59
  email: marutanm@gmail.com
60
60
  executables:
61
61
  - pow-index
62
62
  extensions: []
63
- extra_rdoc_files: []
63
+ extra_rdoc_files:
64
+ - README.md
64
65
  files:
65
66
  - bin/pow-index
66
67
  - config.ru
67
68
  - lib/pow-index.rb
69
+ - README.md
68
70
  homepage: http://github.com/marutanm/pow-index
69
71
  licenses:
70
72
  - MIT
@@ -80,7 +82,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
80
82
  version: '0'
81
83
  segments:
82
84
  - 0
83
- hash: -1184877902808154609
85
+ hash: 3757375594280558390
84
86
  required_rubygems_version: !ruby/object:Gem::Requirement
85
87
  none: false
86
88
  requirements: