2014-03-23 16:03:30 -04:00
< ? php
/*******************************************************************************
* Title : Help Desk Software HESK
2015-08-29 21:44:26 -04:00
* Version : 2.6 . 5 from 28 th August 2015
2014-03-23 16:03:30 -04:00
* Author : Klemen Stirn
* Website : http :// www . hesk . com
********************************************************************************
* COPYRIGHT AND TRADEMARK NOTICE
2015-02-22 22:17:56 -05:00
* Copyright 2005 - 2015 Klemen Stirn . All Rights Reserved .
2014-03-23 16:03:30 -04:00
* HESK is a registered trademark of Klemen Stirn .
* The HESK may be used and modified free of charge by anyone
* AS LONG AS COPYRIGHT NOTICES AND ALL THE COMMENTS REMAIN INTACT .
* By using this code you agree to indemnify Klemen Stirn from any
* liability that might arise from it ' s use .
* Selling the code for this program , in part or full , without prior
* written consent is expressly forbidden .
* Using this code , in part or full , to create derivate work ,
* new scripts or products is expressly forbidden . Obtain permission
* before redistributing this software over the Internet or in
* any other medium . In all cases copyright and header must remain intact .
* This Copyright is in full effect in any country that has International
* Trade Agreements with the United States of America or
* with the European Union .
* Removing any of the copyright notices without purchasing a license
* is expressly forbidden . To remove HESK copyright notice you must purchase
* a license for this script . For more information on how to obtain
* a license please visit the page below :
* https :// www . hesk . com / buy . php
*******************************************************************************/
define ( 'IN_SCRIPT' , 1 );
define ( 'HESK_PATH' , './' );
/* Get all the required files and functions */
require ( HESK_PATH . 'hesk_settings.inc.php' );
require ( HESK_PATH . 'inc/common.inc.php' );
hesk_load_database_functions ();
/* Print XML header */
header ( 'Content-Type: text/html; charset=' . $hesklang [ 'ENCODING' ]);
/* Get the search query composed of the subject and message */
$query = hesk_REQUEST ( 'q' ) or die ( '' );
hesk_dbConnect ();
/* Get relevant articles from the database */
2015-01-12 23:18:00 -05:00
$res = hesk_dbQuery ( " SELECT t1.`id`, t1.`subject`, LEFT(t1.`content`, " . max ( 200 , $hesk_settings [ 'kb_substrart' ] * 2 ) . " ) AS `content`, MATCH(`subject`,`content`,`keywords`) AGAINST (' " . hesk_dbEscape ( $query ) . " ') AS `score`
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` = '0' AND t2 . `type` = '0' AND MATCH ( `subject` , `content` , `keywords` ) AGAINST ( '".hesk_dbEscape($query)."' )
LIMIT " .intval( $hesk_settings['kb_search_limit'] ));
2014-03-23 16:03:30 -04:00
$num = hesk_dbNumRows ( $res );
/* Solve some spacing issues */
if ( hesk_isREQUEST ( 'p' ) )
{
echo ' <br />' ;
}
/* Return found articles */
?>
< div class = " alert alert-info " >
< span style = " font-size:12px;font-weight:bold " >< ? php echo $hesklang [ 'sc' ]; ?> :</span><br /> <br />
< ? php
if ( ! $num )
{
echo '<i>' . $hesklang [ 'nsfo' ] . '</i>' ;
}
else
{
2015-01-12 23:18:00 -05:00
$max_score = 0 ;
2014-03-23 16:03:30 -04:00
while ( $article = hesk_dbFetchAssoc ( $res ))
{
2015-01-12 23:18:00 -05:00
if ( $article [ 'score' ] > $max_score )
{
$max_score = $article [ 'score' ];
}
if ( $max_score && ( $article [ 'score' ] / $max_score ) < 0.25 )
{
break ;
}
$txt = strip_tags ( $article [ 'content' ]);
2014-03-23 16:03:30 -04:00
if ( strlen ( $txt ) > $hesk_settings [ 'kb_substrart' ])
{
$txt = substr ( $txt , 0 , $hesk_settings [ 'kb_substrart' ]) . '...' ;
}
echo '
< a href = " knowledgebase.php?article='. $article['id'] .'&suggest=1 " target = " _blank " > '.$article[' subject '].' </ a >
2015-01-12 23:18:00 -05:00
< input type = " hidden " name = " suggested[] " value = " '. $article['id'] .'|'.stripslashes( hesk_input( $article['subject'] ) ).' " >
2014-03-23 16:03:30 -04:00
< br /> '.$txt.' < br />< br /> ' ;
}
}
?>
</ div >