trivial 0.0.2 → 0.0.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.
- data/Manifest +5 -0
- data/Rakefile +1 -1
- data/bin/trivialize +8 -7
- data/content/index.html +5 -0
- data/lib/trivial.php +2 -2
- data/readme.md +37 -0
- data/styles/application.css +7 -0
- data/trivial.gemspec +3 -3
- data/views/application.inc +10 -0
- metadata +8 -2
data/Manifest
CHANGED
data/Rakefile
CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
|
|
2
2
|
require 'rake'
|
3
3
|
require 'echoe'
|
4
4
|
|
5
|
-
Echoe.new('trivial', '0.0.
|
5
|
+
Echoe.new('trivial', '0.0.3') do |p|
|
6
6
|
p.summary = "Ultra-lightweight website framework for PHP"
|
7
7
|
p.description = <<-EOT
|
8
8
|
For those who are using PHP to build their sites and want a very simple framework
|
data/bin/trivialize
CHANGED
@@ -12,13 +12,14 @@ FileUtils.mkdir ARGV[0] if (!File.directory? ARGV[0])
|
|
12
12
|
FileUtils.mkdir File.join(ARGV[0], dir) if (!File.directory? File.join(ARGV[0], dir))
|
13
13
|
end
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
File.
|
20
|
-
|
21
|
-
|
15
|
+
[
|
16
|
+
[ [File.dirname(__FILE__), '..', 'lib', 'trivial.php'], [ARGV[0], 'lib', 'trivial.php'] ],
|
17
|
+
[ [File.dirname(__FILE__), '..', 'dist', 'htaccess.dist'], [ARGV[0], '.htaccess'] ],
|
18
|
+
[ [File.dirname(__FILE__), '..', 'views', 'application.inc'], [ARGV[0], 'views', 'application.inc'] ],
|
19
|
+
[ [File.dirname(__FILE__), '..', 'content', 'index.html'], [ARGV[0], 'content', 'index.html'] ],
|
20
|
+
[ [File.dirname(__FILE__), '..', 'styles', 'application.css'], [ARGV[0], 'styles', 'application.css'] ]
|
21
|
+
].each do |src, dest|
|
22
|
+
FileUtils.cp(File.join(*src), File.join(*dest))
|
22
23
|
end
|
23
24
|
|
24
25
|
puts "Done! Make sure you can use .htaccess files in your Webserver setup."
|
data/content/index.html
ADDED
data/lib/trivial.php
CHANGED
@@ -39,11 +39,11 @@ $requested = preg_replace('#/$#', '/index.html', $_SERVER['REDIRECT_URL']);
|
|
39
39
|
$requested = preg_replace("#${trim}/(.*)\.[^\.]+\$#", '\1', $requested);
|
40
40
|
|
41
41
|
function styles($additional = array()) {
|
42
|
-
return head_component($additional, 'styles/%s.css', '<link rel="stylesheet" href="
|
42
|
+
return head_component($additional, 'styles/%s.css', '<link rel="stylesheet" href="styles/%s.css" type="text/css" />');
|
43
43
|
}
|
44
44
|
|
45
45
|
function scripts($additional = array()) {
|
46
|
-
return head_component($additional, 'scripts/%s.js', '<script type="text/javascript" src="
|
46
|
+
return head_component($additional, 'scripts/%s.js', '<script type="text/javascript" src="scripts/%s.js"></script>');
|
47
47
|
}
|
48
48
|
|
49
49
|
function head_component($additional, $search, $format) {
|
data/readme.md
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
# Trivial - the ultra-lightweight Web framework for PHP
|
2
|
+
|
3
|
+
## Installation
|
4
|
+
|
5
|
+
Installation is done via RubyGems:
|
6
|
+
|
7
|
+
`gem install trivial`
|
8
|
+
|
9
|
+
A new binary is created, `trivialize`.
|
10
|
+
|
11
|
+
## Creating a new site
|
12
|
+
|
13
|
+
`cd` to the directory where you want your new site and type:
|
14
|
+
|
15
|
+
`trivialize my-new-site`
|
16
|
+
|
17
|
+
A directory called `my-new-site` will be created with the site structure in place. An example `content/index.html` and `views/application.inc` will also be installed.
|
18
|
+
|
19
|
+
## The request process
|
20
|
+
|
21
|
+
When a request comes in to that directory for a file that doesn't exist, trivial
|
22
|
+
does the following (for the examples, the request was for `about_us/contact.html` and the default `$layout` value is `"application"`):
|
23
|
+
|
24
|
+
* The `content` folder is checked for a `.html` file that matches the path (`content/about_us/contact.html`). If it exists, the contents of the file are pulled into the global `$content` variable.
|
25
|
+
* The `actions` folder is checked for two files:
|
26
|
+
* `actions/application.inc`
|
27
|
+
* `actions/about_us/contact.inc`
|
28
|
+
Each found file is included into the program, potentially modifying `$content` or `$layout`.
|
29
|
+
* The `views` folder is checked for two files:
|
30
|
+
* `views/about_us/contact.inc`
|
31
|
+
* `views/application.inc`
|
32
|
+
Each found file is included into the program, including `$content` where specified and outputting back into `$content`.
|
33
|
+
* The value of `$content` is output to the visitor.
|
34
|
+
|
35
|
+
## Styles and scripts
|
36
|
+
|
37
|
+
Styles and scripts can be searched for in a structured way. The included `views/application.inc` gives an example as to how this works.
|
data/trivial.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{trivial}
|
5
|
-
s.version = "0.0.
|
5
|
+
s.version = "0.0.3"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["John Bintz"]
|
@@ -18,9 +18,9 @@ Gem::Specification.new do |s|
|
|
18
18
|
s.email = %q{john@coswelproductions.com}
|
19
19
|
s.executables = ["trivialize"]
|
20
20
|
s.extra_rdoc_files = ["bin/trivialize", "lib/trivial.php"]
|
21
|
-
s.files = ["Manifest", "Rakefile", "bin/trivialize", "dist/htaccess.dist", "lib/trivial.php", "trivial.gemspec"]
|
21
|
+
s.files = ["Manifest", "Rakefile", "bin/trivialize", "content/index.html", "dist/htaccess.dist", "lib/trivial.php", "readme.md", "styles/application.css", "trivial.gemspec", "views/application.inc"]
|
22
22
|
s.homepage = %q{http://github.com/johnbintz/trivial}
|
23
|
-
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Trivial"]
|
23
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Trivial", "--main", "readme.md"]
|
24
24
|
s.require_paths = ["lib"]
|
25
25
|
s.rubyforge_project = %q{trivial}
|
26
26
|
s.rubygems_version = %q{1.3.6}
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
version: 0.0.
|
8
|
+
- 3
|
9
|
+
version: 0.0.3
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- John Bintz
|
@@ -36,9 +36,13 @@ files:
|
|
36
36
|
- Manifest
|
37
37
|
- Rakefile
|
38
38
|
- bin/trivialize
|
39
|
+
- content/index.html
|
39
40
|
- dist/htaccess.dist
|
40
41
|
- lib/trivial.php
|
42
|
+
- readme.md
|
43
|
+
- styles/application.css
|
41
44
|
- trivial.gemspec
|
45
|
+
- views/application.inc
|
42
46
|
has_rdoc: true
|
43
47
|
homepage: http://github.com/johnbintz/trivial
|
44
48
|
licenses: []
|
@@ -49,6 +53,8 @@ rdoc_options:
|
|
49
53
|
- --inline-source
|
50
54
|
- --title
|
51
55
|
- Trivial
|
56
|
+
- --main
|
57
|
+
- readme.md
|
52
58
|
require_paths:
|
53
59
|
- lib
|
54
60
|
required_ruby_version: !ruby/object:Gem::Requirement
|