Get('PortalUserId'); $a =& $objArticleList->GetItem($id); $a->AddFavorite($userid); $cat_id = $a->GetPrimaryCategory(); UpdateCategoryCount('Article', $cat_id, $objArticleList->CacheListType('favorites')); DeleteModuleTagCache('innews'); break; case "n_del_favorite": $id = $n_var_list["id"]; $userid = $objSession->Get("PortalUserId"); $a =& $objArticleList->GetItem($id); $a->DeleteFavorite($userid); $cat_id = $a->GetPrimaryCategory(); UpdateCategoryCount('Article', $cat_id, $objArticleList->CacheListType('favorites')); DeleteModuleTagCache('innews'); break; case "n_rate_article": $id = $n_var_list["id"]; $news =& $objArticleList->GetItem($id); if($objSession->InSpamControl($news->Get("ResourceId"),"Ratinge")) { $StatusMessage["rating"] = language("la_Rating_AlreadyVoted"); } else { $ValName = "News_RatingDelay_Value"; $IntName = "News_RatingDelay_Interval"; $exp_secs = $objConfig->Get($ValName) * $objConfig->Get($IntName); $objSession->AddToSpamControl($news->Get("ResourceId"),$exp_secs,"Rating"); $vote = $_POST["frmRateVote"]; $news->SubmitVote($vote,""); $StatusMessage["rating"] = language("la_Vote_Added"); } DeleteModuleTagCache('innews'); break; case "n_sort_articles": if(is_numeric($_POST["Perpage_News"])) { $objSession->SetPersistantVariable("Perpage_News",$_POST["Perpage_News"]); } else { $objSession->SetPersistantVariable("Perpage_News", $objConfig->Get("Perpage_News")); } if (strlen($_POST["News_SortField"])) { //$objSession->SetPersistantVariable("News_ArticleSort", $_POST["article_sort_field"]. " ".$_POST["article_sort_order"]); $objSession->SetPersistantVariable("News_SortField",$_POST["News_SortField"]); $objSession->SetPersistantVariable("News_SortField2",""); } if (strlen($_POST["News_SortOrder"])) { $objSession->SetPersistantVariable("News_SortOrder",$_POST["News_SortOrder"]); $objSession->SetPersistantVariable("News_SortOrder2",""); } $n_var_list["p"] = 1; $objArticleList->Page = 1; DeleteModuleTagCache('innews'); break; case "n_add_review": //phpinfo(INFO_VARIABLES); $perm = 0; $CategoryId=$objCatList->CurrentCategoryID(); if ($objSession->HasCatPermission("NEWS.REVIEW.PENDING")) $perm = 2; if ($objSession->HasCatPermission("NEWS.REVIEW")) $perm = 1; if ($perm == 0) { $MissingCount++; $FormError["n_addreview"]["review"] = language("lu_ferror_no_access"); } else { $id = $n_var_list["id"]; $article =& $objArticleList->GetItem($id); $value = $objSession->InSpamControl($article->Get("ResourceId"),"Review"); //if($article->ReviewIPExists($_SERVER["REMOTE_ADDR"])) if ($value) { $MissingCount++; $FormError["n_addreview"]["review"] = language("lu_ferror_review_duplicate"); } else { $ValName = "News_ReviewDelay_Value"; $IntName = "News_ReviewDelay_Interval"; $exp_secs = $objConfig->Get($ValName) * $objConfig->Get($IntName); $objSession->AddToSpamControl($article->Get("ResourceId"),$exp_secs,"Review"); $CreatedOn = adodb_date("U"); $ReviewText = inp_escape($_POST["review"]); $id = $n_var_list["id"]; $userid = $objSession->Get("PortalUserId"); $article->AddReview($userid,$ReviewText,($perm==2),$_SERVER["REMOTE_ADDR"]); if(strlen($_GET["Confirm"])) { $var_list["t"] = $_GET["Confirm"]; } else $var_list["t"] = $_GET["DestTemplate"]; } } DeleteModuleTagCache('kernel'); break; case "n_rate_news": //phpinfo(); if ($objSession->HasCatPermission("NEWS.RATE")) $perm = 1; if ($perm == 0) { $MissingCount++; $FormError["l_rate"]["review"] = language("lu_ferror_no_access"); } else { $MissingCount = SetMissingDataErrors("n_rate"); $id = $n_var_list["id"]; $article =& $objArticleList->GetItem($id); if (is_object($objSession)) { $value = $objSession->InSpamControl($article->Get("ResourceId"),"Rating"); } if($value) { $MissingCount++; $FormError["n_rate"]["review"] = language("lu_rating_alreadyvoted"); if(strlen($_GET["Duplicate"])) { $var_list["t"] = $_GET["Duplicate"]; } else $var_list["t"] = $_GET["DestTemplate"]; } if($MissingCount==0) { $ValName = "News_RatingDelay_Value"; $IntName = "News_RatingDelay_Interval"; $exp_secs = $objConfig->Get($ValName) * $objConfig->Get($IntName); $objSession->AddToSpamControl($article->Get("ResourceId"),$exp_secs,"Rating"); $vote = $_POST["rating"]; $article->SubmitVote($vote,""); if(strlen($_GET["Confirm"])) { $var_list["t"] = $_GET["Confirm"]; } else $var_list["t"] = $_GET["DestTemplate"]; } } DeleteModuleTagCache('innews'); break; case "n_email_article": if($objSession->Get("PortalUserId")) { $u =& $objSession->CurrentUser; $email = $u->Get("Email"); } else $email = "Guest"; $n = $objArticleList->GetItem($newid); $email_subject=$objConfig->Get("n_email_subject"); if($objConfig->Get("n_email_sender")) $email_subject .= $email; $email_subject = str_replace("%sender%",$email,$email_subject); $message = str_replace("%sender%",$email,$objConfig->Get("n_email_body")); $message = str_replace("%except%",$n->Get("Excerpt"),$message); $message = str_replace("%news_link%",$n->parsetag("news_link"),$message); mail($email_to, $email_subject, $message, "From: ".$objConfig->Get("email_from")."\r\n" ."Reply-To: ".$objConfig->Get("email_replyto")."\r\n" ."X-Mailer: In-Portal"); break; case "m_simple_search": $type = $objItemTypes->GetTypeByName("Article"); $keywords = trim($_POST["keywords"]); $length = $objConfig->Get('Search_MinKeyword_Length'); $isExact = (substr($keywords, 0, 2) == '\"' && substr($keywords, strlen($keywords) - 2, 2) == '\"'); if ($isExact) { $performSearch = (strlen(trim(str_replace('\"', '', $keywords))) >= $length); } else { $key_arr = explode(' ', $keywords); /*foreach($key_arr as $value) { if (strlen($value) < $length) { $keywords = str_replace(' '.$value, '', $keywords); $keywords = str_replace($value.' ', '', $keywords); } } $keywords = str_replace(' ', ' ', $keywords);*/ $performSearch = (strlen($keywords) >= $length); } if ($performSearch) { $objNewsSearch = new clsSearchResults("News",$objArticleList->classname); $objNewsSearch->SetKeywords($keywords); $objNewsSearch->AddSimpleFields('n'); if (is_numeric($objConfig->Get("SearchRel_Pop_articles"))) { $objNewsSearch->PctPop = ($objConfig->Get("SearchRel_Pop_articles")/100); } if(is_numeric($objConfig->Get("SearchRel_Keyword_articles"))) { $objNewsSearch->PctRelevance = ($objConfig->Get("SearchRel_Keyword_articles")/100); } if(is_numeric($objConfig->Get("SearchRel_Rating_articles"))) { $objNewsSearch->PctRating = ($objConfig->Get("SearchRel_Rating_articles")/100); } $objNewsSearch->PerformSearch($type->Get("ItemType"),$SortOrder,FALSE); //$objNewsSearch->SetRelevence($type->Get("ItemType"), "NewsId"); } break; case "m_adv_search": switch($_GET["type"]) { case 2: /* article */ //echo "Searching Articles
"; $objAdvSearch = new clsAdvancedSearchResults("News",$objArticleList->classname, $_GET["type"]); foreach($objSearchConfig->Items as $field) { $fld = $field->Get("FieldName"); $Verb = $_POST["verb"][$field->Get("FieldName")]; if(!strlen($Verb) && $field->Get("FieldType")=="boolean") { if($_POST["value"][$field->Get("FieldName")]!=-1) { $Value = $_POST["value"][$field->Get("FieldName")]; $Verb = "is"; } } else { $Value = $_POST["value"][$field->Get("FieldName")]; } switch( $_POST["andor"][$field->Get("FieldName")]) { case 1: $Conjuction = "AND"; break; case 2: $Conjuction = "OR"; break; default: $Conjuction = ""; break; } if (strlen($Value) && $Verb=="any") { $Verb = 'contains'; } if(strlen($Value) && strlen($Verb)>0 && $Verb!="any") { //echo "Adding ARTICLE SearchField: [".$field->Get("TableName")."]; [".$field->Get("FieldName")."]; [$Verb]; [$Value]; [$Conjuction]
"; $objAdvSearch->AddAdvancedField($field->Get("TableName"),$field->Get("FieldName"),$Verb,$Value,$Conjuction, 'n'); } } $objAdvSearch->PerformSearch(2,NULL,TRUE); } break; case "m_simple_subsearch": $keywords = $_POST["keywords"]; $type = $objItemTypes->GetTypeByName("Article"); if(strlen($keywords)) { $objNewsSearch = new clsSearchResults("News",$objArticleList->classname); $objNewsSearch->SetKeywords($keywords); $objNewsSearch->AddSimpleFields('n'); if (is_numeric($objConfig->Get("SearchRel_Pop_articles"))) { $objNewsSearch->PctPop = ($objConfig->Get("SearchRel_Pop_articles")/100); } if (is_numeric($objConfig->Get("SearchRel_Keyword_articles"))) { $objNewsSearch->PctRelevance = ($objConfig->Get("SearchRel_Keyword_articles")/100); } if (is_numeric($objConfig->Get("SearchRel_Rating_articles"))) { $objNewsSearch->PctRating = ($objConfig->Get("SearchRel_Rating_articles")/100); } if(count($SearchResultIdList)>0) { $objNewsSearch->PerformSearch($type->Get("ItemType"),$SortOrder,FALSE,$SearchResultIdList); //$objNewsSearch->SetRelevence($type->Get("ItemType"), "NewsId"); } } break; } ?>