Index: trunk/in-bulletin/frontaction.php =================================================================== diff -u -N --- trunk/in-bulletin/frontaction.php (revision 12744) +++ trunk/in-bulletin/frontaction.php (revision 0) @@ -1,745 +0,0 @@ -Get("PortalUserId"); - $Topic =& $objTopicList->GetItem($id); - $Topic->AddFavorite($userid); - $cat_id = $Topic->GetPrimaryCategory(); - UpdateCategoryCount("Topic", $cat_id, $objTopicList->CacheListType("favorites")); - break; - - case "bb_del_favorite": - $id = $bb_var_list["top"]; - $userid = $objSession->Get("PortalUserId"); - $Topic =& $objTopicList->GetItem($id); - $Topic->DeleteFavorite($userid); - $cat_id = $Topic->GetPrimaryCategory(); - UpdateCategoryCount("Topic", $cat_id, $objTopicList->CacheListType("favorites")); - break; - - case "bb_lock_topic": - $id = $bb_var_list["top"]; - $Topic =& $objTopicList->GetItem($id); - $Topic->Set("TopicType",0); - $Topic->Update(); - break; - case "bb_unlock_topic": - $id = $bb_var_list["top"]; - $Topic =& $objTopicList->GetItem($id); - $Topic->Set("TopicType",1); - $Topic->Update(); - break; - case "bb_new_topic": - //phpinfo(INFO_VARIABLES); - $AddPerm = $objSession->HasCatPermission("TOPIC.ADD"); - $PendingPerm = $objSession->HasCatPermission("TOPIC.ADD.PENDING"); - //echo "Add: $AddPerm
\n"; - if($AddPerm || $PendingPerm) - { - //echo "Adding Topic..
\n"; - $cat =& $objCatList->GetCategory($objCatList->CurrentCategoryID()); - if(trim($_POST["topic_subject"])!="") - { - $Status = ($AddPerm!=0) ? 1 : 2; - - $Pick = (int)$_POST["topic_pick"]; - $Notify = (int)$_POST["owner_notify"]; - $CreatedOn = adodb_date("U"); - - $t =& $objTopicList->Add_Topic(inp_striptags($_POST["topic_subject"]), - - $objCatList->CurrentCategoryID(), $Status, $Pick, $Notify, $CreatedOn); - /* @var $t clsTopic */ - - $TopicId = $t->Get("TopicId"); - - saveCustomFields('bb', $t->Get('ResourceId'), 3); - - if(is_object($t)) - { - $u =& $objSession->CurrentUser; - $PAlias= $t->Get("PostedBy"); - //$body = inp_escape($_POST["bb_post_reply_body"],0); - $body = str_replace('
','',$_POST['bb_post_reply_body']); - $body = htmlspecialchars($body); - $p =& $t->AddPost($PAlias,$Status, $body); - /* @var $p clsPosting */ - - $p->SetPostOption("show_sig",(int)$_POST["topic_sig"]); - $p->SetPostOption("disable_smileys",(int)$_POST["topic_smile"]); - $p->SetPostOption("disable_bbcode",(int)$_POST["topic_bbcode"]); - $p->Set("ReplyTo",0); - $p->Update(); - - $bb_var_list_update["top"]=$t->Get("TopicId"); - $env=BuildEnv(); - unset($bb_var_list_update["top"]); - UpdateCategoryCount("Topic",$t->GetPrimaryCategory(),'_'); - UpdateCategoryCount("Topic",$t->GetPrimaryCategory(),$objTopicList->CacheListType("myitems")); - } - if(strlen($_GET["Confirm"])) - { - $var_list["t"] = $_GET["Confirm"]; - } - else - $var_list["t"] = $_GET["DestTemplate"]; - - $cat->SetLastUpdate( adodb_mktime() ); - $objTopicList->ResetCache( $objCatList->CurrentCategoryID() ); - $objPostingList->ResetCache( $objCatList->CurrentCategoryID() ); - $t->SetTodayPosts(+1); - } - - } - break; - - case "bb_edit_topic": - $perm = 0; - $CategoryId=$objCatList->CurrentCategoryID(); - $OrgTopic = $objTopicList->GetCurrentTopic(); - $PermCat = $OrgTopic->GetPrimaryCategory(); - - if ($objSession->HasCatPermission("TOPIC.MODIFY.PENDING",$PermCat)) - $perm = 2; - if ($objSession->HasCatPermission("TOPIC.MODIFY",$PermCat)) - $perm = 1; - - if($objSession->Get("PortalUserId")==$OrgTopic->Get("OwnerId") && $perm != 1) - { - if ($objSession->HasCatPermission("TOPIC.OWNER.MODIFY.PENDING",$PermCat)) - $perm = 2; - if ($objSession->HasCatPermission("TOPIC.OWNER.MODIFY",$PermCat)) - $perm = 1; - } - $topic = $OrgTopic; - if($perm==2) - { - $topic->CreatePendingCopy(); - } - if ($perm == 0) - { - $MissingCount++; - $FormError["editlink"]["topic_subject"] = language("lu_ferror_no_access"); - } - else - { - $subject = inp_striptags($_POST["topic_subject"]); - $Notify = (int)$_POST["owner_notify"]; - $MissingCount = SetMissingDataErrors("edit_topic"); - if(is_array($_FILES)) - { - foreach($_FILES as $field => $file) - { - $allowed = TRUE; - if(strlen($_POST["imagetypes"][$field])) - { - $types = explode(",",strtolower($_POST["imagetypes"][$field])); - if(is_array($types)) - { - if(count($types)>0) - { - $path_parts = pathinfo($file["name"]); - $ext = $path_parts["extension"]; - $allowed = in_array($ext,$types); - if(!$allowed) - { - $MissingCount++; - $FormError["edit_topic"][$field] = language("lu_ferror_wrongtype"); - } - } - } - } - $maxsize = (int)$_POST["maxsize"][$field]; - if($maxsize>0 && $allowed && $file["size"]>$maxsize) - { - $allowed = FALSE; - $MissingCount++; - $FormError["edit_topic"][$field] = language("lu_ferror_toolarge"); - } - } - } - if($MissingCount==0) - { - $topic->Set("TopicText",$subject); - $topic->Set("NotifyOwnerOnChanges",$Notify); - $topic->Update(); - if($perm==1) - { - $topic->SendUserEventMail("TOPIC.MODIFY",$topic->Get("ModifiedById")); - $topic->SendAdminEventMail("TOPIC.MODIFY"); - } - else - { - $topic->SendUserEventMail("TOPIC.MODIFY.PENDING",$topic->Get("ModifiedById")); - $topic->SendAdminEventMail("TOPIC.MODIFY.PENDING"); - } - - saveCustomFields('bb', $topic->Get('ResourceId'), 3); - $ResourceId = $topic->Get("ResourceId"); - if($perm==2) - $topic->AddToCategory($CategoryId); - /* handle any image uploads */ - if(is_array($_FILES)) - { - foreach($_FILES as $field => $file) - { - if($file["size"]>0) - { - $imgname = $_POST["imagename"][$field]; - $thumb = $_POST["isthumb"][$field]; - $IsDefault = (int)$_POST["imgdefault"][$field]; - if($thumb) - { - $LocalThumb=1; - } - else - $LocalImage=1; - $img = $objImageList->GetImageByName($ResourceId,$imgname); - if(!is_object($img)) - { - $img =& $objImageList->Add($imgname, "", $ResourceId, - $LocalImage, $LocalThumb, - "", "", 1, 0, $IsDefault, 0,0); - } - if($thumb) - { - $img->Set("LocalThumb",1); - $url = $img->StoreUploadedImage($file, 1,"kernel/images/",$thumb); - $img->Set("ThumbPath",$url); - } - else - { - $img->Set("LocalImage",1); - $url = $img->StoreUploadedImage($file, 1,"kernel/images/",$thumb); - $img->Set("LocalPath",$url); - } - $img->Update(); - } - } - } - - if(strlen($_GET["Confirm"])) - { - $var_list["t"] = $_GET["Confirm"]; - } - else - $var_list["t"] = $_GET["DestTemplate"]; - } - $thiscat = $objCatList->GetCategory( $objCatList->CurrentCategoryID() ); - $thiscat->SetLastUpdate( adodb_mktime() ); - } - break; - - case "bb_topic_reply": /* add post to topic */ - $thiscat =& $objCatList->GetCategory( $objCatList->CurrentCategoryID() ); - $ReplyPerm = $objSession->HasCatPermission("TOPIC.REPLY.ADD"); - if($ReplyPerm) - { - $t = $objTopicList->GetCurrentTopic(); - $u =& $objSession->CurrentUser; - $body = str_replace('
','',$_POST['bb_post_reply_body']); - $body = htmlspecialchars($body); - if (is_object($u)) { - $PAlias = $u->Get("Login"); - } - - $post =& $t->AddPost($PAlias,0, $body, $_POST["subject"]); - $post->SetPostOption("show_sig",(int)$_POST["topic_sig"]); - $post->SetPostOption("disable_smileys",(int)$_POST["topic_smile"]); - $post->SetPostOption("disable_bbcode",(int)$_POST["topic_bbcode"]); - $post->Set("ReplyTo",(int)$_POST["replyto"]); - $post->Update(); - - $ado = &GetADODBConnection(); - - $sql = "SELECT count(*) AS count FROM ".GetTablePrefix()."Posting WHERE TopicId = ".$t->Data['TopicId']; - $rs = $ado->Execute($sql); - - if ($rs->fields['count'] == $objConfig->Get("AutoTopicLockPosts") && ($objConfig->Get("AutoTopicLockPosts") > 0 || $objConfig->Get("AutoTopicLockPosts") != '')) - { - $objTopicList->LockTopic($t->Data['TopicId']); - } - $thiscat->SetLastUpdate( adodb_mktime() ); - $objPostingList->ResetCache( $objCatList->CurrentCategoryID() ); - $t->SetTodayPosts(+1); - $t->Set('Modified', adodb_mktime() ); // topic modification date IS affected by this action - $t->Update(); - } - else - { - Permission_Error("You do not have access to post to this topic."); - } - break; - case "bb_post_edit": - $CatPerms= $objSession->HasCatPermission("TOPIC.REPLY.MODIFY"); - $OwnerPerms = $objSession->HasCatPermission("TOPIC.REPLY.OWNER.MODIFY"); - $p =& $objPostingList->GetCurrentPost(); - if(is_object($p)) - { - $pid = $p->Get("PostingId"); - $UserId = $objSession->Get("PortalUserId"); - $u =& $objSession->CurrentUser; - if (($UserId==$p->Get("CreatedById") && $OwnerPerms) || $CatPerms==1) - { - $body = str_replace("
","",$_POST["bb_post_reply_body"]); - $body = htmlspecialchars($body); - $body .= "\n\n[".language("lu_editedby")." ".$u->Get("Login")." ".language("lu_on")." "; - $body .= LangDate(adodb_mktime())." ".LangTime(adodb_mktime())."]"; - $p->Set("PostingText",$body); - $p->SetPostOption("show_sig",(int)$_POST["topic_sig"]); - $p->SetPostOption("disable_smileys",(int)$_POST["topic_smile"]); - $p->SetPostOption("disable_bbcode",(int)$_POST["topic_bbcode"]); - $p->Set("Subject",$_POST["subject"]); - $p->Update(); - $p->SendUserEventMail("POST.MODIFY",$p->Get("ModifiedById")); - $p->SendAdminEventMail("POST.MODIFY"); - - $t = $objTopicList->GetCurrentTopic(); - $t->Set('Modified', adodb_mktime() ); // topic modification date IS affected by this action - $t->Update(); - } - $objPostingList->Clear(); - $thiscat = $objCatList->GetCategory( $objCatList->CurrentCategoryID() ); - $thiscat->SetLastUpdate( adodb_mktime() ); - } - else - { - $poster=$pid; - Permission_Error("You do not have permission to edit this post."); - } - break; - - case "bb_post_delete": - $CatPerms= $objSession->HasCatPermission("TOPIC.REPLY.DELETE"); - $p =& $objPostingList->GetCurrentPost(); - if(is_object($p)) - { - $pid = $p->Get("CreatedById"); - $UserId = $objSession->Get("PortalUserId"); - - if ($UserId==$pid || $CatPerms==1) - { - $Topic = $objTopicList->GetItem($p->Get("TopicId")); - $PostCreated = $p->Get('CreatedOn'); - $p->Delete(); - - $Topic->Decrement("Posts"); - $Topic->Set('ModifiedById', $objSession->Get("PortalUserId")); - - // get last post modification date and set it as topic modification date - $db =& GetADODBConnection(); - $prefix = GetTablePrefix(); - - $sql = 'SELECT MAX(IF(Modified=0,CreatedOn,Modified)) FROM '.$prefix.'Posting WHERE TopicId = '.$Topic->UniqueId(); - $last_update = $db->GetOne($sql); - $Topic->Set('LastPostId',$Topic->GetLastPostId()); - $Topic->Set('LastPostDate', $last_update); - $Topic->Update(null,$last_update); - - $Topic->refreshLastUpdate(); - - $thiscat = $objCatList->GetCategory( $objCatList->CurrentCategoryID() ); - $thiscat->SetLastUpdate( adodb_mktime() ); - - $u = $objUsers->GetUser($UserId); - $posts = (int)$u->GetPersistantVariable("bb_posts"); - $posts--; - if($posts<0) - $posts=0; - $u->SetPersistantVariable("bb_posts",$posts); - - $objTopicList->ResetCache( $objCatList->CurrentCategoryID() ); - $objPostingList->ResetCache( $objCatList->CurrentCategoryID() ); - - // affect only today created posts during deleting - if( adodb_date('Y-m-d',$PostCreated) == adodb_date('Y-m-d', adodb_mktime() ) ) - { - $Topic->SetTodayPosts(-1); - } - } - } - $objPostingList->Clear(); - - break; - case "bb_topic_delete": - $thiscat =& $objCatList->GetItem($objCatList->CurrentCategoryID()); - $perm = $objSession->HasCatPermission("TOPIC.DELETE"); - $OwnerPerm = $objSession->HasCatPermission("TOPIC.OWNER.DELETE"); - if(is_array($_POST["topiclist"])) - { - foreach($_POST["topiclist"] as $topicid) - { - $t =& $objTopicList->GetItem($topicid); - if (($objSession->Get("PortalUserId") == $t->Get("OwnerId") && $OwnerPerm) || ($perm==1)) - { - $objTopicList->Delete_Item($topicid); - } - } - } - else - { - $t = $objTopicList->GetCurrentTopic(); - if(is_object($t)) - { - if (($objSession->Get("PortalUserId") == $t->Get("OwnerId") && $OwnerPerm) || ($perm==1)) - { - $objTopicList->Delete_Item($t->Get("TopicId")); - - unset($t); - } - } - } - UpdateCategoryCount('Topic', $objCatList->CurrentCategoryID(), $objTopicList->GetListTypes()); -// UpdateCategoryCount('Posting', $objCatList->CurrentCategoryID(), $objPostingList->GetListTypes()); - $objTopicList->Clear(); - break; - - case "bb_rate_topic": - //phpinfo(INFO_VARIABLES); - if ($objSession->HasCatPermission("TOPIC.RATE")) - $perm = 1; - if ($perm == 0) - { - $MissingCount++; - $FormError["bb_rate"]["review"] = language("lu_ferror_no_access"); - } - else - { - $MissingCount = SetMissingDataErrors("bb_rate"); - $topic =& $objTopicList->GetCurrentTopic(); - - $value = $objSession->InSpamControl($topic->Get("ResourceId"),"Rating"); - - if($value) - { - $MissingCount++; - $FormError["bb_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 = "topic_RatingDelay_Value"; - $IntName = "topic_RatingDelay_Interval"; - - $exp_secs = $objConfig->Get($ValName) * $objConfig->Get($IntName); - $objSession->AddToSpamControl($topic->Get("ResourceId"),$exp_secs,"Rating"); - $vote = $_POST["rating"]; - $topic->SubmitVote($vote,""); - if(strlen($_GET["Confirm"])) - { - $var_list["t"] = $_GET["Confirm"]; - } - else - $var_list["t"] = $_GET["DestTemplate"]; - } - } - break; - case "m_simple_search": - $type = $objItemTypes->GetTypeByName("Topic"); - $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) { - $objTopicSearch = new clsSearchResults("Topic",$objTopicList->classname); - $objTopicSearch->SetKeywords($keywords); - $objTopicSearch->AddSimpleFields('bb'); - if (is_numeric($objConfig->Get("SearchRel_Pop_topics"))) { - $objTopicSearch->PctPop = ($objConfig->Get("SearchRel_Pop_topics")/100); - } - if(is_numeric($objConfig->Get("SearchRel_Keyword_topics"))) { - $objTopicSearch->PctRelevance = ($objConfig->Get("SearchRel_Keyword_topics")/100); - } - if (is_numeric($objConfig->Get("SearchRel_Rating_topics"))) { - $objTopicSearch->PctRating = ($objConfig->Get("SearchRel_Rating_topics")/100); - } - $objTopicSearch->PerformSearch($type->Get("ItemType"),$SortOrder,FALSE); - //$objTopicSearch->SetRelevence($type->Get("ItemType"), "TopicId"); - } - break; - case "m_adv_search": - switch($_GET["type"]) - { - case 3: /* link */ - $objAdvSearch = new clsAdvancedSearchResults("Topic",$objTopicList->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") { - $objAdvSearch->AddAdvancedField($field->Get("TableName"),$field->Get("FieldName"),$Verb,$Value,$Conjuction, 'bb'); - } - } - $objAdvSearch->PerformSearch(3,NULL,TRUE); - } - break; - case "m_simple_subsearch": - $keywords = $_POST["keywords"]; - $type = $objItemTypes->GetTypeByName("Topic"); - - if(strlen($keywords)) - { - $objTopicSearch = new clsSearchResults("Topic",$objTopicList->classname); - $objTopicSearch->SetKeywords($keywords); - $objTopicSearch->AddSimpleFields('bb'); - - if (is_numeric($objConfig->Get("SearchRel_Pop_topics"))) { - $objTopicSearch->PctPop = ($objConfig->Get("SearchRel_Pop_topics")/100); - } - if (is_numeric($objConfig->Get("SearchRel_Keyword_topics"))) { - $objTopicSearch->PctRelevance = ($objConfig->Get("SearchRel_Keyword_topics")/100); - } - if (is_numeric($objConfig->Get("SearchRel_Rating_topics"))) { - $objTopicSearch->PctRating = ($objConfig->Get("SearchRel_Rating_topics")/100); - } - - - //$SearchResultIdList = $objLinkSearch->Result_IdList(); - if(count($SearchResultIdList)>0) - { - $objTopicSearch->PerformSearch($type->Get("ItemType"),$SortOrder,FALSE,$SearchResultIdList); - //$objTopicSearch->SetRelevence($type->Get("ItemType"), "TopicId"); - } - } - break; - case "bb_pref": - //phpinfo(INFO_VARIABLES); - $u = $objUsers->GetItem($objSession->Get("PortalUserId")); - - $objSession->SetPersistantVariable("Perpage_Topics",trim($_POST["perpage_topics"])); - $objSession->SetPersistantVariable("Perpage_Postings",trim($_POST["perpage_posts"])); - - $objSession->SetPersistantVariable("owner_notify",trim( GetVar('owner_notify') )); - $objSession->SetPersistantVariable("bb_pm_notify", $_POST["pm_notify"]); // notify me by email about new private messages - - $objSession->SetPersistantVariable("bbcode",trim($_POST["bbcode"])); // allow bbcodes - $objSession->SetPersistantVariable("smileys",trim($_POST["smileys"])); // allow smilies - - $objSession->SetPersistantVariable("show_sig", trim(GetVar('show_sig')) ); // show signature - - $objSession->SetPersistantVariable("bb_signatures",trim($_POST["user_signatures"])); // show other signarures - - $signature = trim(GetVar('my_signature')); - $signature = preg_replace('/(.*)(.*)<\/script>(.*)/is','$1$4',$signature); - $objSession->SetPersistantVariable("my_signature", $signature); // signature data - SetVar('my_signature',$signature); - - saveCustomFields('u', $u->Get('ResourceId'), $u->type); - - if(is_array($_FILES)) - { - foreach($_FILES as $field => $file) - { - if($file["size"]>0) - { - $imgname = $_POST["imagename"][$field]; -// $thumb = $_POST["isthumb"][$field]; -// $thumb = true; - $IsDefault = (int)$_POST["imgdefault"][$field]; - /* if($thumb) - { - $LocalThumb=1; - } - else - { - $LocalImage=1; - }*/ - $img = $objImageList->GetImageByName($u->Get("ResourceId"),$imgname); - - if(!is_object($img)) - { - $img =& $objImageList->Add($imgname, $imgname, $u->Get("ResourceId"), - 1, 1, "", "", 1, 0, $IsDefault, 0, 0); - } - - if ($img->Get('Enabled')) - { - $img->DeleteLocalImage(); - - $img->Set("LocalThumb",1); - $url = $img->StoreUploadedImage($file, 1, "kernel/images/", 1); - $img->Set("ThumbPath",$url); - - $img->Set("LocalImage",1); - $file['tmp_name'] = $url; - $url = $img->StoreUploadedImage($file, 1, "kernel/images/", 0, false); - $img->Set("LocalPath",$url); - - if($url) - $img->Update(); - else - $img->Delete(); - } - else - { - $FormError['bb_profile'][$imgname] = 'lu_avatar_disabled'; - } - } - } - } - break; - case "bb_delete_avatar": - $u = $objUsers->GetItem($objSession->Get("PortalUserId")); - if(is_object($u)) - { - if (!is_object($objImageList)) - { - $objImageList = new clsImageList(); - } - $img = $objImageList->GetImageByName($u->Get('ResourceId'), 'avatar', 1); - if(is_object($img)) - { - $img->Delete(); - } - } - break; - case "bb_sort": - $current_field = $objSession->GetPersistantVariable('Topic_SortField'); - $order = strtolower( $objSession->GetPersistantVariable('Topic_SortOrder') ); - $field = $_GET["col"]; - -// echo "CUR FIELD: $current_field; NEW: ".$field."
"; - - if($current_field != $field) - { - $objSession->SetPersistantVariable("Topic_SortField", $field); - $objSession->SetPersistantVariable("Topic_SortOrder","desc"); - } - else - { - if($order=="asc" || !strlen($order)) - { - $objSession->SetPersistantVariable("Topic_SortOrder","desc"); - } - else - $objSession->SetPersistantVariable("Topic_SortOrder","asc"); - } - break; - - - case "bb_pm_sort": - $current_field = $objSession->GetPersistantVariable("PMs_Sortfield"); - $order = strtolower($objSession->GetPersistantVariable("PMs_SortOrder")); - $field = $_GET["col"]; - -// echo "CUR FIELD: $current_field; NEW: ".$field."
"; - - if($current_field != $field) - { - $objSession->SetPersistantVariable("PMs_Sortfield", $field); - $objSession->SetPersistantVariable("PMs_SortOrder","desc"); - } - else - { - if($order=="asc" || !strlen($order)) - { - $objSession->SetPersistantVariable("PMs_SortOrder","desc"); - } - else - $objSession->SetPersistantVariable("PMs_SortOrder","asc"); - } - break; - - case 'bb_new_pm': - $MissingCount = 0; - - if ($objSession->Get('PortalUserId') <= 0) { - $application->Redirect('index'); - } - - $PmTo = GetVar('pm_to'); - if (!$PmTo) { - $FormError['new_pm']['pm_to'] = language('lu_recipent_required'); - $MissingCount++; - - } - else { - $ToUser =& $objUsers->GetItemByField('Login', $PmTo); - if (!is_object($ToUser)) { - $FormError['new_pm']['pm_to'] = language('lu_recipient_doesnt_exit'); - $MissingCount++; - } - else { - $ToId = $ToUser->UniqueId(); - } - } - - if ($MissingCount == 0) { - $body = str_replace('
','',$_POST['bb_pm_body']); - $body = htmlspecialchars($body); - $pm =& $objPMList->Add_PrivateMessage($ToId, inp_striptags($_POST['pm_subject']),$body); - - $pm->SetOption('show_sig',(int)$_POST['pm_sig']); - $pm->SetOption('disable_smileys',(int)$_POST['pm_smile']); - $pm->SetOption('disable_bbcode',(int)$_POST['pm_bbcode']); - $pm->UpdateOptions(); - - $var_list['t'] = GetVar('Confirm') ? GetVar('Confirm') : GetVar('DestTemplate'); - } - - break; - case 'bb_delete_pm': - $pm =& $objPMList->GetCurrentItem(); - $pm->Delete(); - break; -} -?>