diff --git a/app/.htaccess b/app/.htaccess
new file mode 100644
index 0000000..f24db0a
--- /dev/null
+++ b/app/.htaccess
@@ -0,0 +1,6 @@
+
+ Require all denied
+
+
+ Deny from all
+
diff --git a/app/Config/Routes.php b/app/Config/Routes.php
index ce0a034..56b9bb4 100644
--- a/app/Config/Routes.php
+++ b/app/Config/Routes.php
@@ -30,9 +30,9 @@ $routes->setAutoRoute(true);
// We get a performance increase by specifying the default
// route since we don't have to scan directories.
-$routes->get('(:any)', 'Pages::view/$1');
$routes->get('blog', 'Blog::index');
$routes->get('blog/(:segment)', 'Blog::view/$1');
+$routes->get('(:any)', 'Pages::view/$1');
/**
* --------------------------------------------------------------------
diff --git a/app/Controllers/Blog.php b/app/Controllers/Blog.php
index fdc672a..b3fa870 100644
--- a/app/Controllers/Blog.php
+++ b/app/Controllers/Blog.php
@@ -2,6 +2,7 @@
use App\Models\BlogModel;
use CodeIgniter\Controller;
+use CodeIgniter\Services;
class Blog extends Controller
{
@@ -11,7 +12,8 @@ class Blog extends Controller
$model = new BlogModel();
$data = [
- 'blog' => $model->getBlog(),
+ 'blog' => $model->orderBy('id', 'DESC')->paginate(5),
+ 'pager' => $model->pager,
'title' => 'Blog',
];
diff --git a/app/Controllers/Pages.php b/app/Controllers/Pages.php
index f5d7f37..7ffac11 100644
--- a/app/Controllers/Pages.php
+++ b/app/Controllers/Pages.php
@@ -1,28 +1,38 @@
getPage('home');
+ }else{
+ $data['page'] = $model->getPage($slug);
}
- echo view('common/header');
- echo view('pages/'.$page);
- echo view('common/footer');
- }
+ if (empty($data['page']))
+ {
+ throw new \CodeIgniter\Exceptions\PageNotFoundException('Cannot find the page: '. $slug);
+ }
+
+ $data['data'] = $data['page']['name'];
+ $viewtype = $data['page']['contain'];
+
+ echo view('common/header', $data);
+ if ($viewtype == 1) {
+ echo view('pages/view1', $data);
+ }else{
+ echo view('pages/view2', $data);
+ }
+ echo view('common/footer', $data);
+ }
}
diff --git a/app/Database/Migrations/.gitkeep b/app/Database/Migrations/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Database/Seeds/.gitkeep b/app/Database/Seeds/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Filters/.gitkeep b/app/Filters/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Helpers/.gitkeep b/app/Helpers/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Language/.gitkeep b/app/Language/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Libraries/.gitkeep b/app/Libraries/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Models/.gitkeep b/app/Models/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Models/BlogModel.php b/app/Models/BlogModel.php
index 3a015db..3064d6f 100644
--- a/app/Models/BlogModel.php
+++ b/app/Models/BlogModel.php
@@ -1,16 +1,19 @@
findAll();
+ return $this->orderBy('id', 'DESC')
+ ->findAll();
}
return $this->asArray()
@@ -18,4 +21,10 @@ class BlogModel extends Model
->first();
}
+ public function getBlogs($limit = false, $offset = 0)
+ {
+ return $this->orderBy('id', 'DESC')
+ ->findAll($limit, $offset);
+ }
+
}
\ No newline at end of file
diff --git a/app/Models/PagesModel.php b/app/Models/PagesModel.php
new file mode 100644
index 0000000..da287e3
--- /dev/null
+++ b/app/Models/PagesModel.php
@@ -0,0 +1,21 @@
+findAll();
+ }
+
+ return $this->asArray()
+ ->where(['slug' => $slug])
+ ->first();
+ }
+
+}
\ No newline at end of file
diff --git a/app/ThirdParty/.gitkeep b/app/ThirdParty/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/app/Views/blog/overview.php b/app/Views/blog/overview.php
index c078e39..8fab034 100644
--- a/app/Views/blog/overview.php
+++ b/app/Views/blog/overview.php
@@ -6,15 +6,17 @@
-
= esc($blog_item['title']); ?>
+ = esc($blog_item['title']); ?>
= esc($blog_item['published']); ?>
- = esc($blog_item['body']); ?>
+
View article
+ = $pager->simpleLinks() ?>
+
No News
diff --git a/app/Views/blog/view.php b/app/Views/blog/view.php
index 0b2f9de..70e65d8 100644
--- a/app/Views/blog/view.php
+++ b/app/Views/blog/view.php
@@ -1,6 +1,8 @@
= esc($blog['title']); ?>
-= esc($blog['body']); ?>
+= esc($blog['body'], 'raw'); ?>
+
+
Back To Blog
\ No newline at end of file
diff --git a/app/Views/pages/view1.php b/app/Views/pages/view1.php
new file mode 100644
index 0000000..256756b
--- /dev/null
+++ b/app/Views/pages/view1.php
@@ -0,0 +1,6 @@
+
+
+
= esc($page['name']); ?>
+= esc($page['body'], 'raw'); ?>
+
+
diff --git a/app/Views/pages/view2.php b/app/Views/pages/view2.php
new file mode 100644
index 0000000..4926299
--- /dev/null
+++ b/app/Views/pages/view2.php
@@ -0,0 +1 @@
+= esc($page['body'], 'raw'); ?>
\ No newline at end of file
diff --git a/public/.htaccess b/public/.htaccess
new file mode 100644
index 0000000..02026a3
--- /dev/null
+++ b/public/.htaccess
@@ -0,0 +1,48 @@
+# Disable directory browsing
+Options All -Indexes
+
+# ----------------------------------------------------------------------
+# Rewrite engine
+# ----------------------------------------------------------------------
+
+# Turning on the rewrite engine is necessary for the following rules and features.
+# FollowSymLinks must be enabled for this to work.
+
+ Options +FollowSymlinks
+ RewriteEngine On
+
+ # If you installed CodeIgniter in a subfolder, you will need to
+ # change the following line to match the subfolder you need.
+ # http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewritebase
+ # RewriteBase /
+
+ # Redirect Trailing Slashes...
+ RewriteCond %{REQUEST_FILENAME} !-d
+ RewriteRule ^(.*)/$ /$1 [L,R=301]
+
+ # Rewrite "www.example.com -> example.com"
+ RewriteCond %{HTTPS} !=on
+ RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
+ RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
+
+ # Checks to see if the user is attempting to access a valid file,
+ # such as an image or css document, if this isn't true it sends the
+ # request to the front controller, index.php
+ RewriteCond %{REQUEST_FILENAME} !-f
+ RewriteCond %{REQUEST_FILENAME} !-d
+ RewriteRule ^([\s\S]*)$ index.php/$1 [L,NC,QSA]
+
+ # Ensure Authorization header is passed along
+ RewriteCond %{HTTP:Authorization} .
+ RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
+
+
+
+ # If we don't have mod_rewrite installed, all 404's
+ # can be sent to index.php, and everything works as normal.
+ ErrorDocument 404 index.php
+
+
+# Disable server signature start
+ ServerSignature Off
+# Disable server signature end
diff --git a/writable/.htaccess b/writable/.htaccess
new file mode 100755
index 0000000..f24db0a
--- /dev/null
+++ b/writable/.htaccess
@@ -0,0 +1,6 @@
+
+ Require all denied
+
+
+ Deny from all
+