plugin wip

This commit is contained in:
Joey Kimsey
2024-12-14 06:10:01 -05:00
parent 03f1c978e3
commit c0e211eda7
36 changed files with 319 additions and 197 deletions

View File

@ -19,7 +19,7 @@ use TheTempusProject\Houdini\Classes\Navigation;
use TheTempusProject\Houdini\Classes\Components;
use TheTempusProject\Classes\AdminController;
use TheTempusProject\Models\Review;
use TheTempusProject\Models\Reviewcategory;
use TheTempusProject\Models\ReviewCategory;
use TheTempusProject\Classes\Forms;
class Reviews extends AdminController {
@ -30,7 +30,7 @@ class Reviews extends AdminController {
parent::__construct();
self::$title = 'Admin - Reviews';
self::$reviews = new Review;
self::$categories = new Reviewcategory;
self::$categories = new ReviewCategory;
$view = Navigation::activePageSelect( 'nav.admin', '/admin/reviews' );
Components::set( 'ADMINNAV', $view );
}

View File

@ -24,7 +24,7 @@ use TheTempusProject\Models\Review;
use TheTempusProject\TheTempusProject as App;
use TheTempusProject\Houdini\Classes\Components;
use TheTempusProject\Houdini\Classes\Template;
use TheTempusProject\Models\Reviewcategory;
use TheTempusProject\Models\ReviewCategory;
use TheTempusProject\Houdini\Classes\Forms as HoudiniForms;
class Reviews extends Controller {
@ -33,7 +33,7 @@ class Reviews extends Controller {
public function __construct() {
self::$title = 'Reviews - {SITENAME}';
self::$pageDescription = 'On this page you can submit a reviews for a product from the site.';
self::$pageDescription = 'On this page you can submit a reviews for a product.';
if ( ! App::$isLoggedIn ) {
Session::flash( 'notice', 'You must be logged in to review products.' );
@ -42,7 +42,7 @@ class Reviews extends Controller {
parent::__construct();
self::$reviews = new Review;
self::$categories = new Reviewcategory;
self::$categories = new ReviewCategory;
Components::append( 'TEMPLATE_JS_INCLUDES', Template::parse('<script language="JavaScript" crossorigin="anonymous" type="text/javascript" src="{ROOT_URL}app/plugins/reviews/js/reviews.js"></script>' ) );
Components::append( 'TEMPLATE_CSS_INCLUDES', Template::parse('<link rel="stylesheet" href="{ROOT_URL}app/plugins/reviews/css/reviews.css" />') );
}
@ -50,7 +50,7 @@ class Reviews extends Controller {
public function index() {
$reviews = Views::simpleView( 'reviews.list', self::$reviews->byUser() );
Components::set( 'reviews', $reviews );
Views::view( 'reviews.index' );
Views::view( 'reviews.list' );
}
public function review( $slug = null ) {

View File

@ -14,7 +14,7 @@ namespace TheTempusProject\Models;
use TheTempusProject\Bedrock\Classes\Config;
use TheTempusProject\Bedrock\Functions\Check;
use TheTempusProject\Canary\Canary as Debug;
use TheTempusProject\Canary\Bin\Canary as Debug;
use TheTempusProject\Classes\DatabaseModel;
use TheTempusProject\Plugins\Reviews as Plugin;
use TheTempusProject\TheTempusProject as App;

View File

@ -1,6 +1,6 @@
<?php
/**
* app/plugins/reviews/models/reviewcategory.php
* app/plugins/reviews/models/review_category.php
*
* This class is used for the manipulation of the review_categories database table.
*
@ -14,13 +14,13 @@ namespace TheTempusProject\Models;
use TheTempusProject\Bedrock\Classes\Config;
use TheTempusProject\Bedrock\Functions\Check;
use TheTempusProject\Canary\Canary as Debug;
use TheTempusProject\Canary\Bin\Canary as Debug;
use TheTempusProject\Classes\DatabaseModel;
use TheTempusProject\Plugins\Reviews as Plugin;
use TheTempusProject\TheTempusProject as App;
use TheTempusProject\Canary\Classes\CustomException;
class Reviewcategory extends DatabaseModel {
class ReviewCategory extends DatabaseModel {
public $tableName = 'review_categories';
public $databaseMatrix = [
[ 'name', 'varchar', '128' ],

View File

@ -37,7 +37,7 @@ class Reviews extends Plugin {
'url' => '{ROOT_URL}admin/reviews',
],
];
public $footer_links = [
public $contact_footer_links = [
[
'text' => 'Reviews',
'url' => '{ROOT_URL}reviews/index/',

View File

@ -16,9 +16,9 @@
<td align="center">{ID}</td>
<td>{name}</td>
<td>{slug}</td>
<td><a href="{ROOT_URL}admin/reviews/categoryView/{ID}" class="btn btn-sm btn-primary" role="button"><i class="glyphicon glyphicon-info-sign"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/categoryEdit/{ID}" class="btn btn-sm btn-warning" role="button"><i class="glyphicon glyphicon-edit"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/categoryDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="glyphicon glyphicon-trash"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/categoryView/{ID}" class="btn btn-sm btn-primary" role="button"><i class="fa fa-fw fa-info-circle"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/categoryEdit/{ID}" class="btn btn-sm btn-warning" role="button"><i class="fa fa-fw fa-pencil"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/categoryDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="fa fa-fw fa-trash"></i></a></td>
</tr>
{/LOOP}
{ALT}

View File

@ -33,9 +33,9 @@
</div>
</div>
<div class="panel-footer">
<a href="{ROOT_URL}admin/reviews/reviewApprove/{ID}" class="btn btn-sm btn-success" role="button"><i class="glyphicon glyphicon-info-check"></i></a>
<a href="{ROOT_URL}admin/reviews/reviewHide/{ID}" class="btn btn-sm btn-info" role="button"><i class="glyphicon glyphicon-eye-closed"></i></a>
<a href="{ROOT_URL}admin/reviews/reviewDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="glyphicon glyphicon-trash"></i></a>
<a href="{ROOT_URL}admin/reviews/reviewApprove/{ID}" class="btn btn-sm btn-success" role="button"><i class="fa fa-fw fa-info-circle"></i></a>
<a href="{ROOT_URL}admin/reviews/reviewHide/{ID}" class="btn btn-sm btn-info" role="button"><i class="fa fa-fw fa-eye-closed"></i></a>
<a href="{ROOT_URL}admin/reviews/reviewDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="fa fa-fw fa-trash"></i></a>
</div>
</div>
</div>

View File

@ -16,9 +16,9 @@
<td align="center">{ID}</td>
<td><a href="{ROOT_URL}admin/reviews/reviewView/{ID}" class="btn btn-sm btn-primary" role="button">{title}</a></td>
<td align="center">{rating}</td>
<td><a href="{ROOT_URL}admin/reviews/reviewApprove/{ID}" class="btn btn-sm btn-success" role="button"><i class="glyphicon glyphicon-info-check"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewHide/{ID}" class="btn btn-sm btn-info" role="button"><i class="glyphicon glyphicon-eye-closed"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="glyphicon glyphicon-trash"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewApprove/{ID}" class="btn btn-sm btn-success" role="button"><i class="fa fa-fw fa-check"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewHide/{ID}" class="btn btn-sm btn-info" role="button"><i class="fa fa-fw fa-eye-closed"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="fa fa-fw fa-trash"></i></a></td>
</tr>
{/LOOP}
{ALT}

View File

@ -1 +0,0 @@
{reviews}

View File

@ -1,32 +1,38 @@
<legend>Reviews</legend>
<table class="table table-striped">
<thead>
<tr>
<th style="width: 10%">ID</th>
<th style="width: 30%">Title</th>
<th style="width: 30%">Rating</th>
<th style="width: 10%"></th>
<th style="width: 10%"></th>
<th style="width: 10%"></th>
</tr>
</thead>
<tbody>
{LOOP}
<tr>
<td align="center">{ID}</td>
<td><a href="{ROOT_URL}admin/reviews/reviewView/{ID}" class="btn btn-sm btn-primary" role="button">{title}</a></td>
<td align="center">{rating}</td>
<td><a href="{ROOT_URL}admin/reviews/reviewApprove/{ID}" class="btn btn-sm btn-success" role="button"><i class="glyphicon glyphicon-info-check"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewHide/{ID}" class="btn btn-sm btn-info" role="button"><i class="glyphicon glyphicon-eye-closed"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="glyphicon glyphicon-trash"></i></a></td>
</tr>
{/LOOP}
{ALT}
<tr>
<td align="center" colspan="6">
No results to show.
</td>
</tr>
{/ALT}
</tbody>
</table>
<div class="col-8 mx-auto p-4 rounded shadow-sm mb-5 context-main-bg mt-4 context-main">
<legend>Reviews</legend>
<hr>
<p>
Understanding the customer is a huge part of making products better. Whether its feedback that we are doing great, or we need work; the review allows users to share that with us.
</p>
<p>
On this page you can find <strong>your</strong> reviews to see any responses or make edits.
</p>
<table class="table context-main">
<thead>
<tr>
<th style="width: 60%">Title</th>
<th style="width: 10%">Rating</th>
<th style="width: 10%"></th>
<th style="width: 10%"></th>
<th style="width: 10%"></th>
</tr>
</thead>
<tbody>
{LOOP}
<tr>
<td><a href="{ROOT_URL}admin/reviews/reviewView/{ID}" class="btn btn-sm btn-primary" role="button">{title}</a></td>
<td align="center">{rating}</td>
<td><a href="{ROOT_URL}admin/reviews/reviewEdit/{ID}" class="btn btn-sm btn-info" role="button"><i class="fa fa-fw fa-pencil"></i></a></td>
<td><a href="{ROOT_URL}admin/reviews/reviewDelete/{ID}" class="btn btn-sm btn-danger" role="button"><i class="fa fa-fw fa-trash"></i></a></td>
</tr>
{/LOOP}
{ALT}
<tr>
<td align="center" colspan="6">
No results to show.
</td>
</tr>
{/ALT}
</tbody>
</table>
</div>