Private KB follows new UI
This commit is contained in:
parent
e62e6233a6
commit
822c35f2ce
@ -37,6 +37,7 @@ require(HESK_PATH . 'hesk_settings.inc.php');
|
||||
require(HESK_PATH . 'inc/common.inc.php');
|
||||
require(HESK_PATH . 'inc/admin_functions.inc.php');
|
||||
require(HESK_PATH . 'inc/knowledgebase_functions.inc.php');
|
||||
require(HESK_PATH . 'inc/mail_functions.inc.php');
|
||||
hesk_load_database_functions();
|
||||
|
||||
hesk_session_start();
|
||||
@ -56,6 +57,7 @@ $can_man_kb = hesk_checkPermission('can_man_kb',0);
|
||||
$catid = intval( hesk_GET('category', 1) );
|
||||
$artid = intval( hesk_GET('article', 0) );
|
||||
|
||||
|
||||
if (isset($_GET['search']))
|
||||
{
|
||||
$query = hesk_input( hesk_GET('search') );
|
||||
@ -69,7 +71,9 @@ $hesk_settings['kb_link'] = ($artid || $catid != 1 || $query) ? '<a href="knowle
|
||||
|
||||
if ($hesk_settings['kb_search'] && $query)
|
||||
{
|
||||
hesk_kb_search($query);
|
||||
if (hesk_kb_search($query)) {
|
||||
hesk_show_kb_category(1,1);
|
||||
}
|
||||
}
|
||||
elseif ($artid)
|
||||
{
|
||||
@ -98,7 +102,7 @@ else
|
||||
{
|
||||
hesk_show_kb_category($catid);
|
||||
}
|
||||
?> </div> <?php
|
||||
|
||||
require_once(HESK_PATH . 'inc/footer.inc.php');
|
||||
exit();
|
||||
|
||||
@ -114,11 +118,6 @@ function hesk_kb_header($kb_link, $catid=1)
|
||||
require_once(HESK_PATH . 'inc/show_admin_nav.inc.php');
|
||||
?>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
<ol class="breadcrumb">
|
||||
<?php
|
||||
if ($can_man_kb)
|
||||
@ -130,15 +129,10 @@ function hesk_kb_header($kb_link, $catid=1)
|
||||
?>
|
||||
<li class="active"><?php echo $kb_link; ?></li>
|
||||
</ol>
|
||||
|
||||
<!-- SUB NAVIGATION -->
|
||||
<?php show_subnav('view', $catid); ?>
|
||||
<!-- SUB NAVIGATION -->
|
||||
|
||||
<div style="margin-left:40px;margin-right:40px">
|
||||
|
||||
<section style="padding: 15px;">
|
||||
<?php hesk_kbSearchLarge(1); ?>
|
||||
|
||||
</section>
|
||||
|
||||
<?php
|
||||
} // END hesk_kb_header()
|
||||
@ -154,25 +148,28 @@ function hesk_kb_search($query)
|
||||
|
||||
$res = hesk_dbQuery('SELECT t1.`id`, t1.`subject`, LEFT(`t1`.`content`, '.max(200, $hesk_settings['kb_substrart'] * 2).') AS `content`, t1.`rating` FROM `'.hesk_dbEscape($hesk_settings['db_pfix']).'kb_articles` AS t1 LEFT JOIN `'.hesk_dbEscape($hesk_settings['db_pfix']).'kb_categories` AS t2 ON t1.`catid` = t2.`id` '." WHERE t1.`type` IN ('0','1') AND MATCH(`subject`,`content`,`keywords`) AGAINST ('".hesk_dbEscape($query)."') LIMIT ".intval($hesk_settings['kb_search_limit']));
|
||||
$num = hesk_dbNumRows($res);
|
||||
|
||||
$show_default_category = false;
|
||||
?>
|
||||
<h4><?php echo $hesklang['sr']; ?> (<?php echo $num; ?>)</h4>
|
||||
<div class="footerWithBorder blankSpace"></div>
|
||||
|
||||
<section style="padding: 15px">
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
<h1 class="box-title">
|
||||
<?php echo $hesklang['sr']; ?> (<?php echo $num; ?>)
|
||||
</h1>
|
||||
<div class="box-tools pull-right">
|
||||
<button type="button" class="btn btn-box-tool" data-widget="collapse">
|
||||
<i class="fa fa-minus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<?php
|
||||
if ($num == 0)
|
||||
{
|
||||
echo '<p style="margin-left:20px"><i>'.$hesklang['nosr'].'</i></p>';
|
||||
hesk_show_kb_category(1,1);
|
||||
}
|
||||
else
|
||||
{
|
||||
?>
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td>
|
||||
<div align="center">
|
||||
<table border="0" cellspacing="1" cellpadding="3" width="100%">
|
||||
if ($num == 0) {
|
||||
echo '<i>'.$hesklang['nosr'].'</i>';
|
||||
$show_default_category = true;
|
||||
} else {
|
||||
?>
|
||||
<table class="table table-striped">
|
||||
<?php
|
||||
while ($article = hesk_dbFetchAssoc($res))
|
||||
{
|
||||
@ -180,8 +177,7 @@ function hesk_kb_search($query)
|
||||
|
||||
if ($hesk_settings['kb_rating'])
|
||||
{
|
||||
$alt = $article['rating'] ? sprintf($hesklang['kb_rated'], sprintf("%01.1f", $article['rating'])) : $hesklang['kb_not_rated'];
|
||||
$rat = '<td width="1" valign="top"><img src="../img/star_'.(hesk_round_to_half($article['rating'])*10).'.png" width="85" height="16" alt="'.$alt.'" border="0" style="vertical-align:text-bottom" /></td>';
|
||||
$rat = '<td width="1" valign="top">' . mfh_get_stars($article['rating']) . '</td>';
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -210,15 +206,13 @@ function hesk_kb_search($query)
|
||||
}
|
||||
?>
|
||||
</table>
|
||||
<a href="javascript:history.go(-1)"><span class="glyphicon glyphicon-circle-arrow-left"></span> <?php echo $hesklang['back']; ?></a>
|
||||
<?php } ?>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p><br /><a href="javascript:history.go(-1)"><span class="glyphicon glyphicon-circle-arrow-left"></span> <?php echo $hesklang['back']; ?></a></p>
|
||||
</div>
|
||||
</section>
|
||||
<?php
|
||||
} // END else
|
||||
|
||||
return $show_default_category;
|
||||
} // END hesk_kb_search()
|
||||
|
||||
|
||||
@ -233,27 +227,37 @@ function hesk_show_kb_article($artid)
|
||||
// Update views by 1
|
||||
hesk_dbQuery('UPDATE `'.hesk_dbEscape($hesk_settings['db_pfix'])."kb_articles` SET `views`=`views`+1 WHERE `id`={$artid} LIMIT 1");
|
||||
|
||||
echo '<h3>'.$article['subject'].'</h3>
|
||||
<div class="footerWithBorder blankSpace"></div>
|
||||
|
||||
|
||||
|
||||
<h4>'.$hesklang['as'].'</h4>
|
||||
'. $article['content'];
|
||||
|
||||
if ( ! empty($article['attachments']))
|
||||
{
|
||||
echo '<p><b>'.$hesklang['attachments'].':</b><br />';
|
||||
?>
|
||||
<section class="content">
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
<h1 class="box-title">
|
||||
<?php echo $article['subject']; ?>
|
||||
</h1>
|
||||
<div class="box-tools pull-right">
|
||||
<button type="button" class="btn btn-box-tool" data-widget="collapse">
|
||||
<i class="fa fa-minus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<?php echo $article['content']; ?>
|
||||
</div>
|
||||
<?php if (!empty($article['attachments'])): ?>
|
||||
<div class="box-footer">
|
||||
<p><b><?php echo $hesklang['attachments']; ?></b></p>
|
||||
<?php
|
||||
$att=explode(',',substr($article['attachments'], 0, -1));
|
||||
foreach ($att as $myatt)
|
||||
{
|
||||
list($att_id, $att_name) = explode('#', $myatt);
|
||||
echo '<i class="fa fa-papercip"></i> <a href="../download_attachment.php?kb_att='.$att_id.'" rel="nofollow">'.$att_name.'</a><br />';
|
||||
echo '<i class="fa fa-paperclip"></i> <a href="../download_attachment.php?kb_att='.$att_id.'" rel="nofollow">'.$att_name.'</a><br />';
|
||||
}
|
||||
echo '</p>';
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
<?php
|
||||
|
||||
if ($article['catid']==1)
|
||||
{
|
||||
@ -310,8 +314,18 @@ function hesk_show_kb_article($artid)
|
||||
}
|
||||
?>
|
||||
<div class="<?php echo $column; ?> col-sm-12">
|
||||
<h4><?php echo $hesklang['ad']; ?></h4>
|
||||
<div class="footerWithBorder blankSpace"></div>
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
<h1 class="box-title">
|
||||
<?php echo $hesklang['ad']; ?>
|
||||
</h1>
|
||||
<div class="box-tools pull-right">
|
||||
<button type="button" class="btn btn-box-tool" data-widget="collapse">
|
||||
<i class="fa fa-minus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<table border="0">
|
||||
<tr>
|
||||
<td><?php echo $hesklang['aid']; ?>: </td>
|
||||
@ -331,10 +345,22 @@ function hesk_show_kb_article($artid)
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php if ($showRelated) { ?>
|
||||
<div class="col-md-6 col-sm-12">
|
||||
<h4><?php echo $hesklang['relart']; ?></h4>
|
||||
<div class="footerWithBorder blankSpace"></div>
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
<h1 class="box-title">
|
||||
<?php echo $hesklang['relart']; ?>
|
||||
</h1>
|
||||
<div class="box-tools pull-right">
|
||||
<button type="button" class="btn btn-box-tool" data-widget="collapse">
|
||||
<i class="fa fa-minus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<?php
|
||||
// Related articles
|
||||
foreach ($related_articles as $id => $subject)
|
||||
@ -343,6 +369,8 @@ function hesk_show_kb_article($artid)
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
||||
@ -353,12 +381,9 @@ function hesk_show_kb_article($artid)
|
||||
<p><br /><a href="javascript:history.go(-1)"><span class="glyphicon glyphicon-circle-arrow-left"></span> <?php echo $hesklang['back']; ?></a></p>
|
||||
<?php
|
||||
}
|
||||
else
|
||||
{
|
||||
?>
|
||||
<p> </p>
|
||||
<?php
|
||||
}
|
||||
</section>
|
||||
<?php
|
||||
|
||||
} // END hesk_show_kb_article()
|
||||
|
||||
@ -370,38 +395,39 @@ function hesk_show_kb_category($catid, $is_search = 0) {
|
||||
{
|
||||
/* Print header */
|
||||
hesk_kb_header($hesk_settings['kb_link'], $catid);
|
||||
|
||||
if ($catid == 1)
|
||||
{
|
||||
echo $hesklang['priv'];
|
||||
}
|
||||
}
|
||||
|
||||
$res = hesk_dbQuery("SELECT `name`,`parent` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."kb_categories` WHERE `id`='".intval($catid)."' LIMIT 1");
|
||||
$thiscat = hesk_dbFetchAssoc($res) or hesk_error($hesklang['kb_cat_inv']);
|
||||
|
||||
if ($thiscat['parent'])
|
||||
{
|
||||
$link = ($thiscat['parent'] == 1) ? 'knowledgebase_private.php' : 'knowledgebase_private.php?category='.$thiscat['parent'];
|
||||
echo '<h3>'.$hesklang['kb_cat'].': '.$thiscat['name'].'</h3>
|
||||
<p align="left"><a href="javascript:history.go(-1)"><span class="glyphicon glyphicon-circle-arrow-left"></span>'.$hesklang['back'].'</a></p>
|
||||
<div class="footerWithBorder blankSpace"></div>';
|
||||
}
|
||||
?>
|
||||
<section class="content">
|
||||
<?php if ($thiscat['parent']): ?>
|
||||
<h3><?php echo $hesklang['kb_cat'].': '.$thiscat['name']; ?></h3>
|
||||
<p align="left"><a href="javascript:history.go(-1)">
|
||||
<span class="glyphicon glyphicon-circle-arrow-left"></span>
|
||||
<?php echo $hesklang['back']; ?>
|
||||
</a></p>
|
||||
<?php
|
||||
endif;
|
||||
|
||||
$result = hesk_dbQuery("SELECT `id`,`name`,`articles`,`type` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."kb_categories` WHERE `parent`='".intval($catid)."' ORDER BY `parent` ASC, `cat_order` ASC");
|
||||
if (hesk_dbNumRows($result) > 0)
|
||||
{
|
||||
|
||||
if (hesk_dbNumRows($result) > 0) {
|
||||
?>
|
||||
|
||||
<h4><?php echo $hesklang['kb_cat_sub']; ?></h4>
|
||||
<div class="footerWithBorder blankSpace"></div>
|
||||
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
<table border="0" cellspacing="1" cellpadding="3" width="100%">
|
||||
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
<h1 class="box-title">
|
||||
<?php echo $hesklang['kb_cat_sub']; ?>
|
||||
</h1>
|
||||
<div class="box-tools pull-right">
|
||||
<button type="button" class="btn btn-box-tool" data-widget="collapse">
|
||||
<i class="fa fa-minus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<table class="table table-striped">
|
||||
<?php
|
||||
$per_col = $hesk_settings['kb_cols'];
|
||||
$i = 1;
|
||||
@ -480,31 +506,33 @@ function hesk_show_kb_category($catid, $is_search = 0) {
|
||||
|
||||
?>
|
||||
</table>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<?php
|
||||
} // END if NumRows > 0
|
||||
?>
|
||||
<br>
|
||||
<h4><?php echo $hesklang['ac']; ?></h4>
|
||||
<div class="footerWithBorder blankSpace"></div>
|
||||
|
||||
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
||||
<tr>
|
||||
<td>
|
||||
|
||||
</div>
|
||||
<div class="box-footer">
|
||||
<?php echo $hesklang['private_category_star']; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
<div class="box">
|
||||
<div class="box-header with-border">
|
||||
<h1 class="box-title">
|
||||
<?php echo $hesklang['ac']; ?>
|
||||
</h1>
|
||||
<div class="box-tools pull-right">
|
||||
<button type="button" class="btn btn-box-tool" data-widget="collapse">
|
||||
<i class="fa fa-minus"></i>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<?php
|
||||
$res = hesk_dbQuery("SELECT `id`, `subject`, LEFT(`content`, ".max(200, $hesk_settings['kb_substrart'] * 2).") AS `content`, `rating`, `type` FROM `".hesk_dbEscape($hesk_settings['db_pfix'])."kb_articles` WHERE `catid`='".intval($catid)."' AND `type` IN ('0','1') ORDER BY `sticky` DESC, `art_order` ASC");
|
||||
if (hesk_dbNumRows($res) == 0)
|
||||
{
|
||||
echo '<p><i>'.$hesklang['noac'].'</i></p>';
|
||||
echo '<i>'.$hesklang['noac'].'</i>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '<div align="center"><table border="0" cellspacing="1" cellpadding="3" width="100%">';
|
||||
echo '<table border="0" cellspacing="1" cellpadding="3" width="100%">';
|
||||
while ($article = hesk_dbFetchAssoc($res))
|
||||
{
|
||||
$private = ($article['type'] == 1) ? ' *' : '';
|
||||
@ -529,13 +557,15 @@ function hesk_show_kb_category($catid, $is_search = 0) {
|
||||
</td>
|
||||
</tr>';
|
||||
}
|
||||
echo '</table></div>';
|
||||
echo '</table>';
|
||||
}
|
||||
?>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<div class="box-footer">
|
||||
<?php echo $hesklang['private_article_star']; ?>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<?php
|
||||
} // END hesk_show_kb_category()
|
||||
|
||||
|
@ -30,6 +30,8 @@ $hesklang['main_navigation_uppercase'] = 'MAIN NAVIGATION';
|
||||
$hesklang['x_system_warnings'] = '%s System %s'; // %s: Number of warnings, $s: "Warning" or "Warnings", depending on #
|
||||
$hesklang['warnings_title_case'] = 'Warnings';
|
||||
$hesklang['articles_in_category_x'] = 'Articles in Category %s'; // %s: category name
|
||||
$hesklang['private_category_star'] = 'Private categories indicated by *';
|
||||
$hesklang['private_article_star'] = 'Private articles indicated by *';
|
||||
|
||||
// ADDED OR MODIFIED IN Mods for HESK 2.6.0
|
||||
$hesklang['search_logs'] = 'Search Logs';
|
||||
|
Loading…
x
Reference in New Issue
Block a user