rwiki 0.2.2 → 0.2.3

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.
@@ -22,15 +22,15 @@ h2. Screenshots
22
22
 
23
23
  h3. Browsing pages
24
24
 
25
- !http://img809.imageshack.us/img809/5460/snapshot6.png(test)!
25
+ !http://img534.imageshack.us/img534/9779/rwikishowpage.png(test)!
26
26
 
27
27
  h3. Editing a page
28
28
 
29
- !http://img703.imageshack.us/img703/9992/snapshot7h.png(test)!
29
+ !http://img17.imageshack.us/img17/5865/rwikieditingpage.png(test)!
30
30
 
31
31
  h3. FuzzyFinder
32
32
 
33
- !http://img404.imageshack.us/img404/2449/snapshot8w.png(test)!
33
+ !http://img197.imageshack.us/img197/107/rwikifuzzyfinder.png(test)!
34
34
 
35
35
  h2. Note on Patches/Pull Requests
36
36
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.2
1
+ 0.2.3
@@ -22,6 +22,7 @@ Feature: Create page
22
22
  | The new page |
23
23
  And I should see page title "Rwiki ./folder/The new page.txt"
24
24
  And I should see "The new page" within "h1"
25
+ And I should see generated content for the node with path "./folder/The new page.txt"
25
26
 
26
27
  @javascript
27
28
  Scenario: Create an existing page
@@ -38,7 +39,7 @@ Feature: Create page
38
39
  Then I should see the node titled "test"
39
40
 
40
41
  When I click the node with path "./folder/test.txt"
41
- Then I should see "Test 1" within "h3"
42
+ Then I should see generated content for the node with path "./folder/test.txt"
42
43
 
43
44
  @javascript
44
45
  Scenario: Create a folder
@@ -10,9 +10,7 @@ Feature: Display a page
10
10
  Then I should have the following open tabs:
11
11
  | home |
12
12
  And I should see page title "Rwiki ./home.txt"
13
- And I should see "Sample page" within "h1"
14
- And I should see "Lorem ipsum.."
15
- And I should see "Sample section" within "h2"
13
+ And I should see generated content for the node with path "./home.txt"
16
14
 
17
15
  @javascript
18
16
  Scenario: Display the ./folder/test.txt page
@@ -22,11 +20,7 @@ Feature: Display a page
22
20
  Then I should have the following open tabs:
23
21
  | test |
24
22
  And I should see page title "Rwiki ./folder/test.txt"
25
- And I should see "Test 1" within "h3"
26
- And I should see "Item one"
27
- And I should see "Item two"
28
- And I should see "Item three"
29
- And I should see "Last item"
23
+ And I should see generated content for the node with path "./folder/test.txt"
30
24
 
31
25
  @javascript
32
26
  Scenario: Display the several page
@@ -38,3 +32,4 @@ Feature: Display a page
38
32
  | home |
39
33
  | test |
40
34
  And I should see page title "Rwiki ./folder/test.txt"
35
+ And I should see generated content for the node with path "./folder/test.txt"
@@ -19,9 +19,11 @@ Feature: Editing a page
19
19
  And I press "Save"
20
20
  Then I should not see the window
21
21
  And I should see "A new page header" within "h1"
22
+ And I should see generated content for the node with path "./home.txt"
22
23
 
23
24
  When I reload the application
24
25
  Then I should see "A new page header" within "h1"
26
+ And I should see generated content for the node with path "./home.txt"
25
27
 
26
28
  @javascript
27
29
  Scenario: Edit and Save and continue
@@ -31,8 +33,9 @@ Feature: Editing a page
31
33
 
32
34
  When I fill in "editor" with "h1. A new page header"
33
35
  And I press "Save and continue"
34
- Then I should see "A new page header" within "h1"
35
-
36
+ Then I should see the window titled "Editing page ./home.txt"
37
+ And I should see "A new page header" within "h1"
38
+ And I should see generated content for the node with path "./home.txt"
36
39
 
37
40
  @javascript
38
41
  Scenario: Edit and Cancel
@@ -43,3 +46,4 @@ Feature: Editing a page
43
46
  When I fill in "editor" with "h1. A new page header"
44
47
  And I press "Cancel"
45
48
  Then I should see "Sample page" within "h1"
49
+ And I should see generated content for the node with path "./home.txt"
@@ -11,6 +11,7 @@ Feature: History
11
11
  | home |
12
12
  And the node with path "./home.txt" should be selected
13
13
  Then I should see "Sample page" within "h1"
14
+ And I should see generated content for the node with path "./home.txt"
14
15
 
15
16
  @javascript
16
17
  Scenario: After reload the application last opened page should be loaded
@@ -21,7 +22,7 @@ Feature: History
21
22
  Then I should have the following open tabs:
22
23
  | test |
23
24
  And I should see page title "Rwiki ./folder/test.txt"
24
- And I should see "Test 1" within "h3"
25
+ And I should see generated content for the node with path "./folder/test.txt"
25
26
  And the node with path "./folder/test.txt" should be selected
26
27
 
27
28
  @javascript
@@ -33,14 +34,18 @@ Feature: History
33
34
 
34
35
  When I press the browser back button
35
36
  Then the node with path "./test.txt" should be selected
37
+ And I should see generated content for the node with path "./test.txt"
36
38
 
37
39
  When I press the browser back button
38
40
  Then the node with path "./folder/test.txt" should be selected
41
+ And I should see generated content for the node with path "./folder/test.txt"
39
42
 
40
43
  When I press the browser forward button
41
44
  Then the node with path "./test.txt" should be selected
45
+ And I should see generated content for the node with path "./test.txt"
42
46
 
43
47
  When I create a new page title "A new page" for the node with path "./Info"
44
48
  And I press the browser back button
45
49
  And I press the browser forward button
46
50
  Then the node with path "./Info/A new page.txt" should be selected
51
+ And I should see generated content for the node with path "./Info/A new page.txt"
@@ -18,6 +18,7 @@ Feature: Rename a node
18
18
 
19
19
  When I click the node with path "./The new home.txt"
20
20
  Then I should see "Sample page" within "h1"
21
+ And I should see generated content for the node with path "./The new home.txt"
21
22
 
22
23
  @javascript
23
24
  Scenario: Rename a page to existing name
@@ -33,9 +34,10 @@ Feature: Rename a node
33
34
 
34
35
  When I click the node with path "./home.txt"
35
36
  Then I should see "Sample page" within "h1"
37
+ And I should see generated content for the node with path "./home.txt"
36
38
 
37
39
  When I click the node with path "./test.txt"
38
- Then I should see "This is a test"
40
+ Then I should see generated content for the node with path "./test.txt"
39
41
  And I should see page title "Rwiki ./test.txt"
40
42
  And I should have the following open tabs:
41
43
  | home |
@@ -58,6 +60,7 @@ Feature: Rename a node
58
60
  | test |
59
61
  | The new home |
60
62
  And I should see page title "Rwiki ./The new home.txt"
63
+ And I should see generated content for the node with path "./The new home.txt"
61
64
 
62
65
  @javascript
63
66
  Scenario: Rename a folder
@@ -76,11 +79,12 @@ Feature: Rename a node
76
79
 
77
80
  When I double click the node with path "./The new folder name"
78
81
  And I click the node with path "./The new folder name/test.txt"
79
- Then I should see "Test 1" within "h3"
82
+ And I should see generated content for the node with path "./The new folder name/test.txt"
80
83
 
81
84
  When I reload the application
82
85
  Then I should see the node titled "The new folder name"
83
86
  And I double click the node with path "./The new folder name"
84
87
  And I click the node with path "./The new folder name/test.txt"
85
- Then I should see "Test 1" within "h3"
88
+ And I should see generated content for the node with path "./The new folder name/test.txt"
89
+
86
90
 
@@ -34,3 +34,11 @@ When /^I create a new page title "([^"]*)" for the node with path "([^"]*)"$/ do
34
34
  And %{I press "OK" within the dialog box}
35
35
  Then %{I should see the node titled "#{title}"}
36
36
  end
37
+
38
+ Then /^I should see generated content for the node with path "([^"]*)"$/ do |path|
39
+ # TODO refactor this code
40
+ wiki_page_html = Rwiki::Models::Page.new(path).to_html.gsub(/([^>]*)(?=<[^>]*?>)/im, '')
41
+ page_html = Nokogiri::HTML(page.body).css('div.page-container:not(.x-hide-display)').first.inner_html.gsub(/([^>]*)(?=<[^>]*?>)/im, '')
42
+
43
+ page_html.should == wiki_page_html
44
+ end
@@ -31,6 +31,14 @@ module Rwiki
31
31
  page.to_json
32
32
  end
33
33
 
34
+ get '/node/print' do
35
+ path = params[:path].strip
36
+ page = Page.new(path)
37
+ @html = page.to_html
38
+
39
+ erb :print, :layout => false
40
+ end
41
+
34
42
  # update page content
35
43
  put '/node' do
36
44
  path = params[:path].strip
@@ -17,8 +17,8 @@ module Rwiki::Models
17
17
  end
18
18
 
19
19
  def fuzzy_finder(query)
20
- @finder ||= FuzzyFileFinder.new(full_path_for('.'))
21
- matches = @finder.find(query).sort_by { |m| [-m[:score], m[:path]] }
20
+ finder = FuzzyFileFinder.new(full_path_for('.'))
21
+ matches = finder.find(query).sort_by { |m| [-m[:score], m[:path]] }
22
22
  matches.each do |m|
23
23
  m[:path] = '.' + m[:path].gsub(full_path_for('.'), '')
24
24
  end
@@ -14,6 +14,7 @@ module Rwiki::Models
14
14
  def raw_content
15
15
  @raw_content ||= read_file
16
16
  end
17
+ alias :to_textile :raw_content
17
18
 
18
19
  def raw_content=(raw)
19
20
  @raw_content = raw
@@ -23,6 +24,7 @@ module Rwiki::Models
23
24
  def html_content
24
25
  @html_content ||= parse_content
25
26
  end
27
+ alias :to_html :html_content
26
28
 
27
29
  def title
28
30
  base_name.gsub(/#{PAGE_FILE_EXTENSION}$/, '')
@@ -43,7 +45,7 @@ module Rwiki::Models
43
45
  end
44
46
 
45
47
  def to_hash
46
- super.merge({ :rawContent => raw_content, :htmlContent => html_content })
48
+ super.merge({ :rawContent => to_textile, :htmlContent => to_html })
47
49
  end
48
50
 
49
51
  private
@@ -55,10 +57,11 @@ module Rwiki::Models
55
57
  def parse_content
56
58
  coderay!
57
59
 
58
- toc = generate_toc
59
- add_anchors_to_headers!
60
+ # toc = generate_toc
61
+ # add_anchors_to_headers!
60
62
 
61
- return toc + RedCloth.new(raw_content).to_html
63
+ # return toc + RedCloth.new(raw_content).to_html
64
+ return RedCloth.new(raw_content).to_html
62
65
  end
63
66
 
64
67
  def coderay!
@@ -16,6 +16,11 @@ Rwiki.TabPanel = Ext.extend(Ext.TabPanel, {
16
16
  iconCls: 'icon-edit',
17
17
  scope: this,
18
18
  handler: this.onEditPage
19
+ }, {
20
+ text: 'Print page',
21
+ iconCls: 'icon-print',
22
+ scope: this,
23
+ handler: this.onPrint
19
24
  }, {
20
25
  text: 'Find page',
21
26
  iconCls: 'icon-search',
@@ -164,5 +169,13 @@ Rwiki.TabPanel = Ext.extend(Ext.TabPanel, {
164
169
  onFuzzyFinder: function() {
165
170
  var fuzzyFinder = new Rwiki.FuzzyFinderDialog();
166
171
  fuzzyFinder.show();
172
+ },
173
+
174
+ onPrint: function() {
175
+ var currentTab = this.getActiveTab();
176
+ if (currentTab) {
177
+ var path = currentTab.getPagePath();
178
+ window.open('/node/print?path=' + path, 'mywindow', 'width=800,height=600')
179
+ }
167
180
  }
168
181
  });
@@ -81,3 +81,7 @@
81
81
  .icon-cancel {
82
82
  background-image: url(../images/icons/cancel.png) !important;
83
83
  }
84
+
85
+ .icon-print {
86
+ background-image: url(../images/icons/printer.png) !important;
87
+ }
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rwiki}
8
- s.version = "0.2.2"
8
+ s.version = "0.2.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Łukasz Bandzarewicz"]
12
- s.date = %q{2011-01-23}
12
+ s.date = %q{2011-01-24}
13
13
  s.default_executable = %q{rwiki}
14
14
  s.description = %q{Personal wiki based on ExtJS}
15
15
  s.email = %q{lucassus@gmail.com}
@@ -2091,7 +2091,8 @@ Gem::Specification.new do |s|
2091
2091
  "tmp/fssm_test.rb",
2092
2092
  "vendor/.gitkeep",
2093
2093
  "views/index.erb",
2094
- "views/layout.erb"
2094
+ "views/layout.erb",
2095
+ "views/print.erb"
2095
2096
  ]
2096
2097
  s.homepage = %q{http://github.com/lucassus/rwiki}
2097
2098
  s.licenses = ["MIT"]
@@ -61,5 +61,5 @@
61
61
  <%= yield %>
62
62
  </body>
63
63
 
64
- <link href='http://fonts.googleapis.com/css?family=Inconsolata' rel='stylesheet' type='text/css' />
64
+ <!--<link href='http://fonts.googleapis.com/css?family=Inconsolata' rel='stylesheet' type='text/css' />-->
65
65
  </html>
@@ -0,0 +1,24 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8"/>
5
+ <title>Rwiki</title>
6
+
7
+ <link rel="stylesheet" type="text/css" href="/stylesheets/style.css"/>
8
+ <link rel="stylesheet" type="text/css" href="/stylesheets/page.css"/>
9
+ <link rel="stylesheet" type="text/css" href="/stylesheets/coderay.css"/>
10
+
11
+ <script language="Javascript1.2">
12
+ <!--
13
+ function printpage() {
14
+ window.print();
15
+ }
16
+ //-->
17
+ </script>
18
+ </head>
19
+
20
+ <body onload="printpage();">
21
+ <%= @html %>
22
+ </body>
23
+
24
+ </html>
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 2
9
- version: 0.2.2
8
+ - 3
9
+ version: 0.2.3
10
10
  platform: ruby
11
11
  authors:
12
12
  - "\xC5\x81ukasz Bandzarewicz"
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2011-01-23 00:00:00 +01:00
17
+ date: 2011-01-24 00:00:00 +01:00
18
18
  default_executable: rwiki
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -2334,6 +2334,7 @@ files:
2334
2334
  - vendor/.gitkeep
2335
2335
  - views/index.erb
2336
2336
  - views/layout.erb
2337
+ - views/print.erb
2337
2338
  has_rdoc: true
2338
2339
  homepage: http://github.com/lucassus/rwiki
2339
2340
  licenses:
@@ -2348,7 +2349,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
2348
2349
  requirements:
2349
2350
  - - ">="
2350
2351
  - !ruby/object:Gem::Version
2351
- hash: 3933874289465481879
2352
+ hash: 1194724360297676042
2352
2353
  segments:
2353
2354
  - 0
2354
2355
  version: "0"