Page MenuHomeIn-Portal Phabricator

in-portal
No OneTemporary

File Metadata

Created
Sun, Feb 2, 4:08 PM

in-portal

This file is larger than 256 KB, so syntax highlighting was skipped.
Index: trunk/kernel/include/category.php
===================================================================
--- trunk/kernel/include/category.php (revision 1441)
+++ trunk/kernel/include/category.php (revision 1442)
@@ -1,2380 +1,2382 @@
<?php
define('TYPE_CATEGORY', 0);
$DownloadId=0;
RegisterPrefix("clsCategory","cat","kernel/include/category.php");
class clsCategory extends clsItem
{
var $Permissions;
function clsCategory($CategoryId=NULL)
{
global $objSession;
$this->clsItem(TRUE);
$this->tablename = GetTablePrefix()."Category";
$this->type=1;
$this->BasePermission ="CATEGORY";
$this->id_field = "CategoryId";
$this->TagPrefix = "cat";
$this->debuglevel=0;
/* keyword highlighting */
$this->OpenTagVar = "Category_Highlight_OpenTag";
$this->CloseTagVar = "Category_Highlight_CloseTag";
if($CategoryId!=NULL)
{
$this->LoadFromDatabase($CategoryId);
$this->Permissions = new clsPermList($CategoryId,$objSession->Get("GroupId"));
}
else
{
$this->Permissions = new clsPermList();
}
}
function ClearCacheData()
{
/*$env = "':m".$this->Get("CategoryId")."%'";
DeleteTagCache("m_list_cats","",$env); */
DeleteTagCache("m_itemcount","Category%");
DeleteModuleTagCache('kernel');
}
function DetectChanges($name, $value)
{
global $objSession;
//print_pre($_POST);
if ($this->Data[$name] != $value) {
//echo "$name Modified tt ".$this->Data[$name]." tt $value<br>";
if (!stristr($name, 'Modif') && !stristr($name, 'Created')) {
if ($objSession->GetVariable("HasChanges") != 1) {
$objSession->SetVariable("HasChanges", 2);
}
}
}
}
function Delete()
{
global $CatDeleteList;
if(!is_array($CatDeleteList))
$CatDeleteList = array();
if($this->UsingTempTable()==FALSE)
{
$this->Permissions->Delete_CatPerms($this->Get("CategoryId"));
// TODO: find way to delete specific category cache only
/*$sql = "DELETE FROM ".GetTablePrefix()."CountCache WHERE CategoryId=".$this->Get("CategoryId");
$this->adodbConnection->Execute($sql);*/
$CatDeleteList[] = $this->Get("CategoryId");
if($this->Get("CreatedById")>0)
$this->SendUserEventMail("CATEGORY.DELETE",$this->Get("CreatedById"));
$this->SendAdminEventMail("CATEGORY.DELETE");
parent::Delete();
$this->ClearCacheData();
}
else
{
parent::Delete();
}
}
function Update($UpdatedBy=NULL)
{
parent::Update($UpdatedBy);
if($this->tablename==GetTablePrefix()."Category")
$this->ClearCacheData();
}
function Create()
{
- if((int)$this->Get("CreatedOn")==0)
- $this->Set("CreatedOn",date("U"));
- parent::Create();
- if($this->tablename==GetTablePrefix()."Category")
- $this->ClearCacheData();
+ if( (int) $this->Get("CreatedOn") == 0) {
+ $this->Set("CreatedOn",date("U"));
+ }
+ parent::Create();
+ if($this->tablename == GetTablePrefix()."Category") {
+ $this->ClearCacheData();
+ }
}
function SetParentId($value)
{
//Before we set a parent verify that propsed parent is not our child.
//Otherwise it will cause recursion.
$id = $this->Get("CategoryId");
$path = $this->Get("ParentPath");
$sql = sprintf("SELECT CategoryId From ".GetTablePrefix()."Category WHERE ParentPath LIKE '$path%' AND CategoryId = %d ORDER BY ParentPath",$value);
$rs = $this->adodbConnection->SelectLimit($sql,1,0);
if(!$rs->EOF)
{
return;
}
$this->Set("ParentId",$value);
}
function Approve()
{
global $objSession;
if($this->Get("CreatedById")>0)
$this->SendUserEventMail("CATEGORY.APPROVE",$this->Get("CreatedById"));
$this->SendAdminEventMail("CATEGORY.APPROVE");
$this->Set("Status", 1);
$this->Update();
}
function Deny()
{
global $objSession;
if($this->Get("CreatedById")>0)
$this->SendUserEventMail("CATEGORY.DENY",$this->Get("CreatedById"));
$this->SendAdminEventMail("CATEGORY.DENY");
$this->Set("Status", 0);
$this->Update();
}
function IsEditorsPick()
{
return $this->Is("EditorsPick");
}
function SetEditorsPick($value)
{
$this->Set("EditorsPick", $value);
}
function GetSubCats($limit=NULL, $target_template=NULL, $separator=NULL, $anchor=NULL, $ending=NULL, $class=NULL)
{
global $m_var_list, $m_var_list_update, $var_list, $var_list_update;
$sql = "SELECT CategoryId, Name from ".GetTablePrefix()."Category where ParentId=".$this->Get("CategoryId")." AND Status=1 ORDER BY Priority";
if(isset($limit))
{
$rs = $this->adodbConnection->SelectLimit($sql, $limit, 0);
}
else
{
$rs = $this->adodbConnection->Execute($sql);
}
$count=1;
$class_name = is_null($class)? "catsub" : $class;
while($rs && !$rs->EOF)
{
$var_list_update["t"] = !is_null($target_template)? $target_template : $var_list["t"];
$m_var_list_update["cat"] = $rs->fields["CategoryId"];
$m_var_list_update["p"] = "1";
$cat_name = $rs->fields['Name'];
if (!is_null($anchor))
$ret .= "<a class=\"$class_name\" href=\"".GetIndexURL(2)."?env=" . BuildEnv() . "\">$cat_name</a>";
else
$ret .= "<span=\"$class_name\">$cat_name</span>";
$rs->MoveNext();
if(!$rs->EOF)
{
$ret.= is_null($separator)? ", " : $separator;
}
}
if(strlen($ret))
$ret .= is_null($ending)? " ..." : $ending;
unset($var_list_update["t"], $m_var_list_update["cat"], $m_var_list_update["p"]);
return $ret;
}
function Validate()
{
global $objSession;
$dataValid = true;
if(!isset($this->m_Type))
{
$Errors->AddError("error.fieldIsRequired",'Type',"","","clsCategory","Validate");
$dataValid = false;
}
if(!isset($this->m_Name))
{
$Errors->AddError("error.fieldIsRequired",'Name',"","","clsCategory","Validate");
$dataValid = false;
}
if(!isset($this->m_Description))
{
$Errors->AddError("error.fieldIsRequired",'Description',"","","clsCategory","Validate");
$dataValid = false;
}
if(!isset($this->m_Visible))
{
$Errors->AddError("error.fieldIsRequired",'Visible',"","","clsCategory","Validate");
$dataValid = false;
}
if(!isset($this->m_CreatedById))
{
$Errors->AddError("error.fieldIsRequired",'CreatedBy',"","","clsCategory","Validate");
$dataValid = false;
}
return $dataValid;
}
function UpdateCachedPath()
{
if($this->UsingTempTable()==TRUE)
return;
$Id = $this->Get("CategoryId");
$Id2 = $Id;
$NavPath = "";
$path = array();
do
{
$rs = $this->adodbConnection->Execute("SELECT ParentId,Name from ".$this->tablename." where CategoryId='$Id2'");
$path[] = $Id2;
$nav[] = $rs->fields["Name"];
if ($rs && !$rs->EOF)
{
//echo $path;
$Id2 = $rs->fields["ParentId"];
}
else
$Id2="0"; //to prevent infinite loop
} while ($Id2 != "0");
$parentpath = "|".implode("|",array_reverse($path))."|";
$NavBar = implode(">",array_reverse($nav));
//echo "<BR>\n";
//$rs = $this->adodbConnection->Execute("update Category set ParentPath='$path' where CategoryId='$Id'");
if($this->Get("ParentPath")!=$parentpath || $this->Get("CachedNavbar")!=$NavBar)
{
$this->Set("ParentPath",$parentpath);
$this->Set("CachedNavbar",$NavBar);
$this->Update();
}
}
function GetCachedNavBar()
{
$res = $this->Get("CachedNavbar");
if(!strlen($res))
{
$this->UpdateCachedPath();
$res = $this->Get("CachedNavbar");
}
return $res;
}
function Increment_Count()
{
$this->Increment("CachedDescendantCatsQty");
}
function Decrement_Count()
{
$this->Decrement("CachedDescendantCatsQty");
$this->Update();
}
function LoadFromDatabase($Id)
{
global $objSession, $Errors, $objConfig;
if($Id==0)
return FALSE;
if(!isset($Id))
{
$Errors->AddError("error.AppError",NULL,'Internal error: LoadFromDatabase id',"",get_class($this),"LoadFromDatabase");
return false;
}
$sql = sprintf("SELECT * FROM ".$this->tablename." WHERE CategoryId = '%s'",$Id);
$result = $this->adodbConnection->Execute($sql);
if ($result === false)
{
$Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"LoadFromDatabase");
return false;
}
$data = $result->fields;
if(is_array($data))
{
$this->SetFromArray($data);
$this->Clean();
}
else
return false;
return true;
}
function SetNewItem()
{
global $objConfig;
$value = $this->Get("CreatedOn");
$cutoff = adodb_date("U") - ($objConfig->Get("Category_DaysNew") * 86400);
$this->IsNew = FALSE;
if($value>$cutoff)
$this->IsNew = TRUE;
return $this->IsNew;
}
function LoadFromResourceId($Id)
{
global $objSession, $Errors;
if(!isset($Id))
{
$Errors->AddError("error.AppError",NULL,'Internal error: LoadFromDatabase id',"",get_class($this),"LoadFromResourceId");
return false;
}
$sql = sprintf("SELECT * FROM ".$this->tablename." WHERE ResourceId = '%s'",$Id);
$result = $this->adodbConnection->Execute($sql);
if ($result === false)
{
$Errors->AddError("error.DatabaseError",NULL,$adodbConnection->ErrorMsg(),"",get_class($this),"LoadFromResourceId");
return false;
}
$data = $result->fields;
if(is_array($data))
$this->SetFromArray($data);
else
return false;
return true;
}
function GetParentField($fieldname,$skipvalue,$default)
{
/* this function moves up the category tree until a value for $field other than
$skipvalue is returned. if no matches are made, then $default is returned */
$path = $this->Get("ParentPath");
$path = substr($path,1,-1); //strip off the first & last tokens
$aPath = explode("|",$path);
$aPath = array_slice($aPath,0,-1);
$ParentPath = implode("|",$aPath);
$sql = "SELECT $fieldname FROM category WHERE $fieldname != '$skipvalue' AND ParentPath LIKE '$ParentPath' ORDER BY ParentPath DESC";
$rs = $this->adodbConnection->execute($sql);
if($rs && !$rs->EOF)
{
$ret = $rs->fields[$fieldname];
}
else
$ret = $default;
$update = "UPDATE ".$this->SourceTable." SET $fieldname='$ret' WHERE CategoryId=".$this->Get("CategoryId");
$this->adodbConnection->execute($update);
return $ret;
}
function GetCustomField($fieldName)
{
global $objSession, $Errors;
if(!isset($this->m_CategoryId))
{
$Errors->AddError("error.appError","Get field is required in order to set custom field values","","",get_class($this),"GetCustomField");
return false;
}
return GetCustomFieldValue($this->m_CategoryId,"category",$fieldName);
}
function SetCustomField($fieldName, $value)
{
global $objSession, $Errors;
if(!isset($this->m_CategoryId))
{
$Errors->AddError("error.appError","Set field is required in order to set custom field values","","",get_class($this),"SetCustomField");
return false;
}
return SetCustomFieldValue($this->m_CategoryId,"category",$fieldName,$value);
}
function LoadPermissions($first=1)
{
/* load all permissions for group on this category */
$this->Permissions->CatId=$this->Get("CategoryId");
if($this->Permissions->NumItems()==0)
{
$cats = explode("|",substr($this->Get("ParentPath"),1,-1));
if(is_array($cats))
{
$cats = array_reverse($cats);
$cats[] = 0;
foreach($cats as $catid)
{
$this->Permissions->LoadCategory($catid);
}
}
}
if($this->Permissions->NumItems()==0)
{
if($first==1)
{
$this->Permissions->GroupId=NULL;
$this->LoadPermissions(0);
}
}
}
function PermissionObject()
{
return $this->Permissions;
}
function PermissionItemObject($PermissionName)
{
$p = $this->Permissions->GetPermByName($PermissionName);
return $p;
}
function HasPermission($PermissionName,$GroupID)
{
global $objSession;
$perm = $this->PermissionValue($PermissionName,$GroupID);
// echo "Permission $PermissionName for $GroupID is $perm in ".$this->Get("CategoryId")."<br>\n";
if(!$perm)
{
$perm=$objSession->HasSystemPermission("ROOT");
}
return ($perm==1);
}
function PermissionValue($PermissionName,$GroupID)
{
//$this->LoadPermissions();
$ret=NULL;
//echo "Looping though ".count($this->Permissions)." permissions Looking for $PermissionName of $GroupID<br>\n";
if($this->Permissions->GroupId != $GroupID)
{
$this->Permissions->Clear();
$this->Permissions->GroupId = $GroupID;
}
$this->Permissions->CatId=$this->Get("CategoryId");
$ret = $this->Permissions->GetPermissionValue($PermissionName);
if($ret == NULL)
{
$cats = explode("|",substr($this->Get("ParentPath"),1,-1));
if(is_array($cats))
{
$cats = array_reverse($cats);
$cats[] = 0;
foreach($cats as $catid)
{
$this->Permissions->LoadCategory($catid);
$ret = $this->Permissions->GetPermissionValue($PermissionName);
if(is_numeric($ret))
break;
}
}
}
return $ret;
}
function SetPermission($PermName,$GroupID,$Value,$Type=0)
{
global $objSession, $objPermissions, $objGroups;
if($this->Permissions->GroupId != $GroupID)
{
$this->Permissions->Clear();
$this->Permissions->GroupId = $GroupID;
}
if($objSession->HasSystemPermission("GRANT"))
{
$current = $this->PermissionValue($PermName,$GroupID);
if($current == NULL)
{
$this->Permissions->Add_Permission($this->Get("CategoryId"),$GroupId,$PermName,$Value,$Type);
}
else
{
$p = $this->Permissions->GetPermByName($PermName);
if($p->Inherited==FALSE)
{
$p->Set("PermissionValue",$Value);
$p->Update();
}
else
$this->Permissions->Add_Permission($this->Get("CategoryId"),$GroupId,$PermName,$Value,$Type);
}
if($PermName == "CATEGORY.VIEW")
{
$Groups = $objGroups->GetAllGroupList();
$ViewList = $this->Permissions->GetGroupPermList($this,"CATEGORY.VIEW",$Groups);
$this->SetViewPerms("CATEGORY.VIEW",$ViewList,$Groups);
$this->Update();
}
}
}
function SetViewPerms($PermName,$acl,$allgroups)
{
global $objPermCache;
$dacl = array();
if(!is_array($allgroups))
{
global $objGroups;
$allgroups = $objGroups->GetAllGroupList();
}
for($i=0;$i<count($allgroups);$i++)
{
$g = $allgroups[$i];
if(!in_array($g,$acl))
$dacl[] = $g;
}
if(count($acl)<count($dacl))
{
$aval = implode(",",$acl);
$dval = "";
}
else
{
$dval = implode(",",$dacl);
$aval = "";
}
if(strlen($aval)==0 && strlen($dval)==0)
{
$aval = implode(",",$allgroups);
}
$PermId = $this->Permissions->GetPermId($PermName);
$pc = $objPermCache->GetPerm($this->Get("CategoryId"),$PermId);
if(is_object($pc))
{
$pc->Set("ACL",$aval);
$pc->Set("DACL",$dval);
$pc->Update();
}
else
$objPermCache->AddPermCache($this->Get("CategoryId"),$PermId,$aval,$dval);
//$this->Update();
}
function GetACL($PermName)
{
global $objPermCache;
$ret = "";
$PermId = $this->Permissions->GetPermId($PermName);
$pc = $objPermCache->GetPerm($this->Get("CategoryId"),$PermId);
if(is_object($pc))
{
$ret = $this->Get("ACL");
}
return $ret;
}
function UpdateACL()
{
global $objGroups, $objPermCache;
$glist = $objGroups->GetAllGroupList();
$ViewList = $this->Permissions->GetGroupPermList($this,"CATEGORY.VIEW",$glist);
$perms = $this->Permissions->GetAllViewPermGroups($this,$glist);
//echo "<PRE>";print_r($perms); echo "</PRE>";
foreach($perms as $PermName => $l)
{
$this->SetViewPerms($PermName,$l,$glist);
}
}
function Cat_Link()
{
global $m_var_list_update;
$m_var_list_update["cat"] = $this->Get("CategoryId");
$ret = GetIndexURL(2)."?env=".BuildEnv();
unset($m_var_list_update["cat"]);
return $ret;
}
function Parent_Link()
{
global $m_var_list_update;
$m_var_list_update["cat"] = $this->Get("ParentId");
$ret = GetIndexURL(2)."?env=".BuildEnv();
unset($m_var_list_update["cat"]);
return $ret;
}
function Admin_Parent_Link($page=NULL)
{
global $m_var_list_update;
if(!strlen($page))
$page = $_SERVER["PHP_SELF"];
$m_var_list_update["cat"] = $this->Get("ParentId");
$ret = $page."?env=".BuildEnv();
unset($m_var_list_update["cat"]);
return $ret;
}
function StatusIcon()
{
global $imagesURL;
$ret = $imagesURL."/itemicons/";
switch($this->Get("Status"))
{
case STATUS_DISABLED:
$ret .= "icon16_cat_disabled.gif";
break;
case STATUS_PENDING:
$ret .= "icon16_cat_pending.gif";
break;
case STATUS_ACTIVE:
$img = "icon16_cat.gif";
if($this->IsPopItem())
$img = "icon16_cat_pop.gif";
if($this->IsHotItem())
$img = "icon16_cat_hot.gif";
if($this->IsNewItem())
$img = "icon16_cat_new.gif";
if($this->Is("EditorsPick"))
$img = "icon16_car_pick.gif";
$ret .= $img;
break;
}
return $ret;
}
function SubCatCount()
{
$ret = $this->Get("CachedDescendantCatsQty");
$sql = "SELECT COUNT(*) as SubCount FROM ".$this->tablename." WHERE ParentPath LIKE '".$this->Get("ParentPath")."%' AND CategoryId !=".$this->Get("CategoryId");
$rs = $this->adodbConnection->Execute($sql);
if($rs && !$rs->EOF)
{
$val = $rs->fields["SubCount"];
if($val != $this->Get("CachedDescendantCatsQty"))
{
$this->Set("CachedDescendantCatsQty",$val);
$this->Update();
}
$ret = $this->Get("CachedDescendantCatsQty");
}
return $ret;
}
function GetSubCatIds()
{
$sql = "SELECT CategoryId FROM ".$this->tablename." WHERE ParentPath LIKE '".$this->Get("ParentPath")."%' AND CategoryId !=".$this->Get("CategoryId");
$rs = $this->adodbConnection->Execute($sql);
$ret = array();
while($rs && !$rs->EOF)
{
$ret[] = $rs->fields["CategoryId"];
$rs->MoveNext();
}
return $ret;
}
function GetParentIds()
{
$Parents = array();
$ParentPath = $this->Get("ParentPath");
if(strlen($ParentPath))
{
$ParentPath = substr($ParentPath,1,-1);
$Parents = explode("|",$ParentPath);
}
return $Parents;
}
function ItemCount($ItemType="")
{
global $objItemTypes,$objCatList,$objCountCache;
if(!is_numeric($ItemType))
{
$TypeId = $objItemTypes->GetItemTypeValue($ItemType);
}
else
$TypeId = (int)$ItemType;
//$path = $this->Get("ParentPath");
//$path = substr($path,1,-1);
//$path = str_replace("|",",",$path);
$path = implode(",",$this->GetSubCatIds());
if(strlen($path))
{
$path = $this->Get("CategoryId").",".$path;
}
else
$path = $this->Get("CategoryId");
$res = TableCount(GetTablePrefix()."CategoryItems","CategoryId IN ($path)",FALSE);
return $res;
}
function ParseObject($element)
{
global $objConfig, $objCatList, $rootURL, $var_list, $var_list_update, $m_var_list_update, $objItemTypes,$objCountCache, $objUsers;
$extra_attribs = ExtraAttributes($element->attributes);
//print_r($element);
if(strtolower($element->name)==$this->TagPrefix)
{
$field = strtolower( $element->GetAttributeByName('_field') );
switch($field)
{
case 'm_language':
$ret = language( $element->GetAttributeByName('_Phrase') );
break;
case 'parentcategorylink':
$m_var_list_update['cat'] = $this->Get('ParentId');
$m_var_list_update['p'] = 1;
$ret = str_replace('advanced_view.php','browse.php',$_SERVER['PHP_SELF']).'?env='.BuildEnv();
unset($m_var_list_update['cat']);
unset($m_var_list_update['p']);
return $ret;
break;
case 'primarycategory':
$ret = $this->Get('CachedNavbar');
if($ret) // category not in root
{
$ret = explode('>',$ret);
array_pop($ret);
$ret = implode('>',$ret);
}
$ret = prompt_language($objConfig->Get("Root_Name")).($ret ? '>' : '').$ret;
break;
case "name":
case "Name":
/*
@field:cat.name
@description:Category name
*/
$ret = $this->HighlightField("Name");
break;
case "description":
/*
@field:cat.description
@description:Category Description
*/
$ret = ($this->Get("Description"));
$ret = $this->HighlightText($ret);
break;
case "cachednavbar":
/*
@field:cat.cachednavbar
@description: Category cached navbar
*/
$ret = $this->HighlightField("CachedNavbar");
if(!strlen($ret))
{
$this->UpdateCachedPath();
$ret = $this->HighlightField("CachedNavbar");
}
break;
case "image":
/*
@field:cat.image
@description:Return an image associated with the category
@attrib:_default:bool:If true, will return the default image if the requested image does not exist
@attrib:_name::Return the image with this name
@attrib:_thumbnail:bool:If true, return the thumbnail version of the image
@attrib:_imagetag:bool:If true, returns a complete image tag. exta html attributes are passed to the image tag
*/
$default = $element->GetAttributeByName('_primary');
$name = $element->GetAttributeByName('_name');
if(strlen($name))
{
$img = $this->GetImageByName($name);
}
else
{
if($default)
$img = $this->GetDefaultImage();
}
if($img)
{
if( $element->GetAttributeByName('_thumbnail') )
{
$url = $img->parsetag("thumb_url");
}
else
$url = $img->parsetag("image_url");
}
else
{
$url = $element->GetAttributeByName('_defaulturl');
}
if( $element->GetAttributeByName('_imagetag') )
{
if(strlen($url))
{
$ret = "<IMG src=\"$url\" $extra_attribs >";
}
else
$ret = "";
}
else
$ret = $url;
break;
case "createdby":
/*
@field:cat.createdby
@description:parse a user field of the user that created the category
@attrib:_usertag::User field to return (defaults to login ID)
*/
$field = $element->GetAttributeByName('_usertag');
if(!strlen($field))
{
$field = "user_login";
}
$userId = $this->Get("CreatedById");
if (!empty($userId) && ($userId > 0))
{
$u =& $objUsers->GetItem($userId);
if (is_object($u))
{
$ret = $u->parsetag($field);
}
}
else
$ret = " ";
break;
case "custom":
/*
@field:cat.custom
@description:Returns a custom field
@attrib:_customfield::field name to return
@attrib:_default::default value
*/
$field = $element->GetAttributeByName('_customfield');
$default = $element->GetAttributeByName('_default');
$ret = $this->GetCustomFieldValue($field,$default);
break;
case "catsubcats":
/*
@field:cat.catsubcats
@description:Returns a list of subcats of current category
@attrib:_limit:int:Number of categories to return
@attrib:_separator::Separator between categories
@attrib:_anchor:bool:Make an anchor (only if template is not specified)
@attrib:_TargetTemplate:tpl:Target template
@attrib:_Ending::Add special text at the end of subcategory list
@attrib:_Class::Specify stly sheet class for anchors (if used) or "span" object
*/
$limit = ((int)$element->attributes["_limit"]>0)? $element->attributes["_limit"] : NULL;
$separator = $element->attributes["_separator"];
$anchor = (int)($element->attributes["_anchor"])? 1 : NULL;
$templ = $element->GetAttributeByName("_TargetTemplate");
$template = !empty($templ)? $templ : NULL;
$ending = strlen($element->attributes["_ending"])? $element->attributes["_ending"] : NULL;
$class = strlen($element->attributes["_class"])? $element->attributes["_class"] : NULL;
$ret = $this->GetSubCats($limit, $template, $separator, $anchor, $ending, $class);
break;
case "date":
/*
@field:cat.date
@description:Returns the date/time the category was created
@attrib:_tz:bool:Convert the date to the user's local time
@attrib:_part::Returns part of the date. The following options are available: month,day,year,time_24hr,time_12hr
*/
$d = $this->Get("CreatedOn");
if( $element->GetAttributeByName('_tz') )
{
$d = GetLocalTime($d,$objSession->Get("tz"));
}
$part = strtolower( $element->GetAttributeByName('_part') );
if(strlen($part))
{
$ret = ExtractDatePart($part,$d);
}
else
{
if(!is_numeric($d))
{
$ret = "";
}
else
$ret = LangDate($d);
}
break;
case "link":
/*
@field:cat.link
@description:Returns a URL setting the category to the current category
@attrib:_template:tpl:Template URL should point to
@attrib:_mod_template:tpl:Template INSIDE a module to which the category belongs URL should point to
*/
if ( strlen( $element->GetAttributeByName('_mod_template') ) ){
//will prefix the template with module template root path depending on category
$ids = $this->GetParentIds();
$tpath = GetModuleArray("template");
$roots = GetModuleArray("rootcat");
// get template path of module, by searching for moudle name
// in this categories first parent category
// and then using found moudle name as a key for module template paths array
$path = $tpath[array_search ($ids[0], $roots)];
$t = $path . $element->GetAttributeByName('_mod_template');
}
else
$t = $element->GetAttributeByName('_template');
if(strlen($t))
{
$var_list_update["t"] = $t;
}
else
$var_list_update["t"] = $var_list["t"];
$m_var_list_update["cat"] = $this->Get("CategoryId");
$ret = GetIndexURL(2)."?env=" . BuildEnv();
unset($m_var_list_update["cat"], $var_list_update["t"]);
break;
case "adminlink":
$m_var_list_update["cat"] = $this->Get("CategoryId");
$m_var_list_update["p"] = 1;
$ret = $_SERVER["PHP_SELF"]."?env=" . BuildEnv();
unset($m_var_list_update["cat"]);
unset($m_var_list_update["p"]);
return $ret;
break;
case "customlink":
$t = $this->GetCustomFieldValue("indextemplate","");
if(strlen($t))
{
$var_list_update["t"] = $t;
}
else
$var_list_update["t"] = $var_list["t"];
$m_var_list_update["cat"] = $this->Get("CategoryId");
$ret = GetIndexURL(2)."?env=" . BuildEnv();
unset($m_var_list_update["cat"], $var_list_update["t"]);
break;
case "link_selector":
$m_var_list_update["cat"] = $this->Get("CategoryId");
$ret = $_SERVER["PHP_SELF"]."?env=" . BuildEnv();
// pass through selector
if( isset($_REQUEST['Selector']) ) $ret .= '&Selector='.$_REQUEST['Selector'];
// pass new status
if( isset($_REQUEST['new']) ) $ret .= '&new='.$_REQUEST['new'];
unset($m_var_list_update["cat"]);
return $ret;
break;
case "admin_icon":
if( $element->GetAttributeByName('fulltag') )
{
$ret = "<IMG $extra_attribs SRC=\"".$this->StatusIcon()."\">";
}
else
$ret = $this->StatusIcon();
break;
case "subcats":
/*
@field:cat.subcats
@description: Loads category's subcategories into a list and renders using the m_list_cats global tag
@attrib:_subcattemplate:tpl:Template used to render subcategory list elements
@attrib: _columns:int: Numver of columns to display the categories in (defaults to 1)
@attrib: _maxlistcount:int: Maximum number of categories to list
@attrib: _FirstItemTemplate:tpl: Template used for the first category listed
@attrib: _LastItemTemplate:tpl: Template used for the last category listed
@attrib: _NoTable:bool: If set to 1, the categories will not be listed in a table. If a table is used, all HTML attributes are passed to the TABLE tag
*/
$attr = array();
$attr["_catid"] = $this->Get("CategoryId");
$attr["_itemtemplate"] = $element->GetAttributeByName('_subcattemplate');
if( $element->GetAttributeByName('_notable') )
$attr["_notable"]=1;
$ret = m_list_cats($attr);
break;
case "subcatcount":
/*
@field:cat.subcatcount
@description:returns number of subcategories
*/
$GroupOnly = $element->GetAttributeByName('_grouponly') ? 1 : 0;
$txt = "<inp:m_itemcount _CatId=\"".$this->Get("CategoryId")."\" _SubCats=\"1\" ";
$txt .="_CategoryCount=\"1\" _ItemType=\"1\" _GroupOnly=\"$GroupOnly\" />";
$tag = new clsHtmlTag($txt);
$ret = $tag->Execute();
break;
case "itemcount":
/*
@field:cat.itemcount
@description:returns the number of items in the category
@attrib:_itemtype::name of item type to count, or all items if not set
*/
$typestr = $element->GetAttributeByName('_itemtype');
if(strlen($typestr))
{
$type = $objItemTypes->GetTypeByName($typestr);
if(is_object($type))
{
$ForceUpdate = 1;
$TypeId = $type->Get("ItemType");
$GroupOnly = $element->GetAttributeByName('_grouponly') ? 1 : 0;
$txt = "<inp:m_itemcount _CatId=\"".$this->Get("CategoryId")."\" _SubCats=\"1\" ";
$txt .=" _ListType=\"category\" _CountCurrent=\"1\" _ForceUpdate=\"$ForceUpdate\" _ItemType=\"$TypeId\" _GroupOnly=\"$GroupOnly\" />";
$tag = new clsHtmlTag($txt);
$ret = $tag->Execute();
//echo "Category parseobject: $ret<br>";
}
else
$ret = "";
}
else
{
$ret = (int)$objCountCache->GetCatListTotal($this->Get("CategoryId"));
}
break;
case "totalitems":
/*
@field:cat.totalitems
@description:returns the number of items in the category and all subcategories
*/
$ret = $this->ItemCount();
break;
case 'modified':
$ret = '';
$date = $this->Get('Modified');
if(!$date) $date = $this->Get('CreatedOn');
if( $element->GetAttributeByName('_tz') )
{
$date = GetLocalTime($date,$objSession->Get("tz"));
}
$part = strtolower($element->GetAttributeByName('_part') );
if(strlen($part))
{
$ret = ExtractDatePart($part,$date);
}
else
{
$ret = ($date <= 0) ? '' : LangDate($date);
}
break;
case "itemdate":
/*
@field:cat.itemdate
@description:Returns the date the cache count was last updated
@attrib:_itemtype:Item name to check
@attrib:_tz:bool:Convert the date to the user's local time
@attrib:_part::Returns part of the date. The following options are available: month,day,year,time_24hr,time_12hr
*/
$typestr = $element->GetAttributeByName('_itemtype');
$type = $objItemTypes->GetTypeByName($typestr);
if(is_object($type))
{
$TypeId = $type->Get("ItemType");
$cc = $objCountCache->GetCountObject(1,$TypeId,$this->get("CategoryId"),0);
if(is_object($cc))
{
$date = $cc->Get("LastUpdate");
}
else
$date = "";
//$date = $this->GetCacheCountDate($TypeId);
if( $element->GetAttributeByName('_tz') )
{
$date = GetLocalTime($date,$objSession->Get("tz"));
}
$part = strtolower($element->GetAttributeByName('_part') );
if(strlen($part))
{
$ret = ExtractDatePart($part,$date);
}
else
{
if($date<=0)
{
$ret = "";
}
else
$ret = LangDate($date);
}
}
else
$ret = "";
break;
case "new":
/*
@field:cat.new
@description:returns text if category's status is "new"
@attrib:_label:lang: Text to return if status is new
*/
if($this->IsNewItem())
{
$ret = $element->GetAttributeByName('_label');
if(!strlen($ret))
$ret = "lu_new";
$ret = language($ret);
}
else
$ret = "";
break;
case "pick":
/*
@field:cat.pick
@description:returns text if article's status is "hot"
@attrib:_label:lang: Text to return if status is "hot"
*/
if($this->Get("EditorsPick")==1)
{
$ret = $element->GetAttributeByName('_label');
if(!strlen($ret))
$ret = "lu_pick";
$ret = language($ret);
}
else
$ret = "";
break;
case "parsetag":
/*
@field:cat.parsetag
@description:returns a tag output with this categoriy set as a current category
@attrib:_tag:: tag name
*/
$tag = new clsHtmlTag();
$tag->name = $element->GetAttributeByName('_tag');
$tag->attributes = $element->attributes;
$tag->attributes["_catid"] = $this->Get("CategoryId");
$ret = $tag->Execute();
break;
/*
@field:cat.relevance
@description:Displays the category relevance in search results
@attrib:_displaymode:: How the relevance should be displayed<br>
<UL>
<LI>"Numerical": Show the decimal value
<LI>"Bar": Show the HTML representing the relevance. Returns two HTML cells &lg;td&lt; with specified background colors
<LI>"Graphical":Show image representing the relevance
</UL>
@attrib:_onimage::Zero relevance image shown in graphical display mode. Also used as prefix to build other images (i.e. prefix+"_"+percentage+".file_extension"
@attrib:_OffBackGroundColor::Off background color of HTML cell in bar display mode
@attrib:_OnBackGroundColor::On background color of HTML cell in bar display mode
*/
}
if( !isset($ret) ) $ret = parent::ParseObject($element);
}
return $ret;
}
function parsetag($tag)
{
global $objConfig,$objUsers, $m_var_list, $m_var_list_update;
if(is_object($tag))
{
$tagname = $tag->name;
}
else
$tagname = $tag;
switch($tagname)
{
case "cat_id":
return $this->Get("CategoryId");
break;
case "cat_parent":
return $this->Get("ParentId");
break;
case "cat_fullpath":
return $this->Get("CachedNavbar");
break;
case "cat_name":
return $this->Get("Name");
break;
case "cat_desc":
return $this->Get("Description");
break;
case "cat_priority":
if($this->Get("Priority")!=0)
{
return (int)$this->Get("Priority");
}
else
return "";
break;
case "cat_pick":
if ($this->Get("EditorsPick"))
return "pick";
break;
case "cat_status":
return $this->Get("Status");
break;
case "cat_Pending":
return $this->Get("Name");
break;
case "cat_pop":
if($this->IsPopItem())
return "pop";
break;
case "cat_new":
if($this->IsNewItem())
return "new";
break;
case "cat_hot":
if($this->IsHotItem())
return "hot";
break;
case "cat_metakeywords":
return $this->Get("MetaKeywords");
break;
case "cat_metadesc":
return $this->Get("MetaDescription");
break;
case "cat_createdby":
return $objUsers->GetUserName($this->Get("CreatedById"));
break;
case "cat_resourceid":
return $this->Get("ResourceId");
break;
case "cat_sub_cats":
return $this->GetSubCats($objConfig->Get("SubCat_ListCount"));
break;
case "cat_link":
return $this->Cat_Link();
break;
case "subcat_count":
return $this->SubCatCount();
break;
case "cat_itemcount":
return (int)$this->GetTotalItemCount();
break;
case "cat_link_admin":
$m_var_list_update["cat"] = $this->Get("CategoryId");
$m_var_list_update["p"] = 1;
$ret = $_SERVER["PHP_SELF"]."?env=" . BuildEnv();
unset($m_var_list_update["cat"]);
unset($m_var_list_update["p"]);
return $ret;
break;
case "cat_admin_icon":
$ret = $this->StatusIcon();
return $ret;
break;
case "cat_link_selector":
$m_var_list_update["cat"] = $this->Get("CategoryId");
$ret = $_SERVER["PHP_SELF"]."?env=" . BuildEnv();
unset($m_var_list_update["cat"]);
return $ret;
break;
case "cat_link_edit":
$m_var_list_update["id"] = $this->Get("CategoryId");
$ret = "addcategory.php?env=" . BuildEnv();
unset($m_var_list_update["id"]);
return $ret;
break;
case "cat_date":
return LangDate($this->Get("CreatedOn"));
break;
case "cat_num_cats":
return $this->Get("CachedDescendantCatsQty");
break;
case "cell_back":
if ($m_var_list_update["cat_cell"]=="#cccccc")
{
$m_var_list_update["cat_cell"]="#ffffff";
return "#ffffff";
}
else
{
$m_var_list_update["cat_cell"]="#cccccc";
return "#cccccc";
}
break;
default:
return "Undefined:$tagname";
}
}
function ParentNames()
{
global $objCatList;
if(strlen($this->Get("CachedNavbar"))==0)
{
$nav = "";
//echo "Rebuilding Navbar..<br>\n";
if(strlen($this->Get("ParentPath"))==0)
{
$this->UpdateCachedPath();
}
$cats = explode("|",substr($this->Get("ParentPath"),1,-1));
foreach($cats as $catid)
{
$cat =& $objCatList->GetCategory($catid);
if(is_object($cat))
{
if(strlen($cat->Get("Name")))
$names[] = $cat->Get("Name");
}
}
$nav = implode(">", $names);
$this->Set("CachedNavbar",$nav);
$this->Update();
}
$res = explode(">",$this->Get("CachedNavbar"));
return $res;
}
// not used anywhere
/* function UpdateCacheCounts()
{
global $objItemTypes;
$CatId = $this->Get("CategoryId");
if($CatId>0)
{
//echo "Updating count for ".$this->Get("CachedNavbar")."<br>\n";
UpdateCategoryCount(0,$CatId);
}
}*/
/**
* @return void
* @param int $date
* @desc Set Modified field for category & all it's parent categories
*/
function SetLastUpdate($date)
{
$parents = $this->Get('ParentPath');
$parents = substr($parents, 1, strlen($parents) - 2 );
$parents = explode('|', $parents);
$db =&GetADODBConnection();
$sql = 'UPDATE '.$this->tablename.' SET Modified = '.$date.' WHERE CategoryId IN ('.implode(',', $parents).')';
$db->Execute($sql);
}
}
class clsCatList extends clsItemList //clsItemCollection
{
//var $Page; // no need because clsItemList class used instead of clsItemCollection
//var $PerPageVar;
function clsCatList()
{
global $m_var_list;
$this->clsItemCollection();
$this->classname="clsCategory";
$this->AdminSearchFields = array("Name","Description");
$this->Page = (int)$m_var_list["p"];
$this->PerPageVar = "Perpage_Category";
$this->SourceTable = GetTablePrefix()."Category";
$this->BasePermission="CATEGORY";
$this->DefaultPerPage = 20;
}
function SaveNewPage()
{
global $m_var_list;
$m_var_list["p"] = $this->Page;
}
function GetCountSQL($PermName,$CatId=NULL, $GroupId=NULL, $AdditonalWhere="")
{
global $objSession, $objPermissions, $objCatList;
$ltable = $this->SourceTable;
$acl = $objSession->GetACLClause();
$cattable = GetTablePrefix()."CategoryItems";
$CategoryTable = GetTablePrefix()."Category";
$ptable = GetTablePrefix()."PermCache";
$VIEW = $objPermissions->GetPermId($PermName);
$sql = "SELECT count(*) as CacheVal FROM $ltable ";
$sql .="INNER JOIN $ptable ON ($ltable.CategoryId=$ptable.CategoryId) ";
$sql .="WHERE ($acl AND PermId=$VIEW AND $ltable.Status=1) ";
if(strlen($AdditonalWhere)>0)
{
$sql .= "AND (".$AdditonalWhere.")";
}
return $sql;
}
function CountCategories($attribs)
{
global $objSession;
$ParentWhere='';
$cat = getArrayValue($attribs,'_catid');
if(!is_numeric($cat))
{
$cat = $this->CurrentCategoryID();
}
if((int)$cat>0)
$c = $this->GetCategory($cat);
if( getArrayValue($attribs,'_subcats') && $cat>0)
{
$ParentWhere = "(ParentPath LIKE '".$c->Get("ParentPath")."%' AND ".$this->SourceTable.".CategoryId != $cat)";
}
if( getArrayValue($attribs,'_today') )
{
$today = mktime(0,0,0,date("m"),date("d"),date("Y"));
$TodayWhere = "(CreatedOn>=$today)";
}
else
{
$TodayWhere = '';
}
if( getArrayValue($attribs,'_grouponly') )
{
$GroupList = $objSession->Get("GroupList");
}
else
$GroupList = NULL;
$where = "";
if(strlen($ParentWhere))
{
$where = $ParentWhere;
}
if(strlen($TodayWhere))
{
if(strlen($where))
$where .=" AND ";
$where .= $TodayWhere;
}
$sql = $this->GetCountSQL("CATEGORY.VIEW",$cat,$GroupList,$where);
// echo "SQL: ".$sql."<BR>";
$rs = $this->adodbConnection->Execute($sql);
if($rs && !$rs->EOF)
{
$ret = $rs->fields["CacheVal"];
}
else
$ret = 0;
return $ret;
}
function CurrentCategoryID()
{
global $m_var_list;
return (int)$m_var_list["cat"];
}
function NumCategories()
{
return $this->NumItems();
}
function &CurrentCat()
{
//return $this->GetCategory($this->CurrentCategoryID());
return $this->GetItem($this->CurrentCategoryID());
}
function &GetCategory($CatID)
{
return $this->GetItem($CatID);
}
function GetByResource($ResId)
{
return $this->GetItemByField("ResourceId",$ResId);
}
function QueryOrderByClause($EditorsPick=FALSE,$Priority=FALSE,$UseTableName=FALSE)
{
global $objSession;
if($UseTableName)
{
$TableName = $this->SourceTable.".";
}
else
$TableName = "";
$Orders = array();
if($EditorsPick)
{
$Orders[] = $TableName."EditorsPick DESC";
}
if($Priority)
{
$Orders[] = $TableName."Priority DESC";
}
$FieldVar = "Category_Sortfield";
$OrderVar = "Category_Sortorder";
if(is_object($objSession))
{
if(strlen($objSession->GetPersistantVariable($FieldVar))>0)
{
$Orders[] = trim($TableName.$objSession->GetPersistantVariable($FieldVar) . " ".
$objSession->GetPersistantVariable($OrderVar));
}
}
$FieldVar = "Category_Sortfield2";
$OrderVar = "Category_Sortorder2";
if(is_object($objSession))
{
if(strlen($objSession->GetPersistantVariable($FieldVar))>0)
{
$Orders[] = trim($TableName.$objSession->GetPersistantVariable($FieldVar) . " ".
$objSession->GetPersistantVariable($OrderVar));
}
}
if(count($Orders)>0)
{
$OrderBy = "ORDER BY ".implode(", ",$Orders);
}
else
$OrderBy="";
return $OrderBy;
}
function LoadCategories($where="", $orderBy = "", $no_limit = true, $fix_method = 'set_first')
{
// load category list using $where clause
// apply ordering specified in $orderBy
// show all cats ($no_limit = true) or only from current page ($no_limit = false)
// in case if stored page is greather then page count issue page_fixing with
// method specified (see "FixInvalidPage" method for details)
$PerPage = $this->GetPerPage();
$this->QueryItemCount = TableCount($this->SourceTable,$where,0);
if($no_limit == false)
{
$this->FixInvalidPage($fix_method);
$Start = !empty($this->Page)? (($this->Page-1) * $PerPage) : 0;
$limit = "LIMIT ".$Start.",".$PerPage;
}
else
$limit = NULL;
return $this->Query_Category($where, $orderBy, $limit);
}
function Query_Category($whereClause="",$orderByClause="",$limit=NULL)
{
global $m_var_list, $objSession, $Errors, $objPermissions;
$GroupID = $objSession->Get("GroupID");
$resultset = array();
$table = $this->SourceTable;
$ptable = GetTablePrefix()."PermCache";
$CAT_VIEW = $objPermissions->GetPermId("CATEGORY.VIEW");
if(!$objSession->HasSystemPermission("ADMIN"))
{
$sql = "SELECT * FROM $table INNER JOIN $ptable ON ($ptable.CategoryId=$table.CategoryId)";
$acl_where = $objSession->GetACLClause();
if(strlen($whereClause))
{
$sql .= " WHERE ($acl_where) AND PermId=$CAT_VIEW AND ".$whereClause;
}
else
$sql .= " WHERE ($acl_where) AND PermId=$CAT_VIEW ";
}
else
{
$sql ="SELECT * FROM $table ".($whereClause ? "WHERE $whereClause" : '');
}
$sql .=" ".$orderByClause;
if(isset($limit) && strlen(trim($limit)))
$sql .= " ".$limit;
if($objSession->HasSystemPermission("DEBUG.LIST"))
echo $sql;
//echo "SQL: $sql<br>";
return $this->Query_item($sql);
}
function CountPending()
{
return TableCount($this->SourceTable,"Status=".STATUS_PENDING,0);
}
function GetPageLinkList($dest_template=NULL,$page="",$PagesToList=10,$HideEmpty=TRUE)
{
global $objConfig, $m_var_list_update, $var_list_update, $var_list;
if(!strlen($page))
$page = GetIndexURL(2);
$PerPage = $this->GetPerPage();
$NumPages = ceil( $this->GetNumPages($PerPage) );
if($NumPages == 1 && $HideEmpty) return '';
if(strlen($dest_template))
{
$var_list_update["t"] = $dest_template;
}
else
$var_list_update["t"] = $var_list["t"];
$o = "";
if($this->Page>$NumPages)
$this->Page=$NumPages;
$StartPage = (int)$this->Page - ($PagesToList/2);
if($StartPage<1)
$StartPage=1;
$EndPage = $StartPage+($PagesToList-1);
if($EndPage>$NumPages)
{
$EndPage = $NumPages;
$StartPage = $EndPage-($PagesToList-1);
if($StartPage<1)
$StartPage=1;
}
$o = "";
if($StartPage>1)
{
$m_var_list_update["p"] = $this->Page-$PagesToList;
$prev_url = $page."?env=".BuildEnv();
$o .= "<A HREF=\"$prev_url\">&lt;&lt;</A>";
}
for($p=$StartPage;$p<=$EndPage;$p++)
{
if($p!=$this->Page)
{
$m_var_list_update["p"]=$p;
$href = $page."?env=".BuildEnv();
$o .= " <A HREF=\"$href\" >$p</A> ";
}
else
{
$o .= "$p";
}
}
if($EndPage<$NumPages && $EndPage>0)
{
$m_var_list_update["p"]=$this->Page+$PagesToList;
$next_url = $page."?env=".BuildEnv();
$o .= "<A HREF=\"$next_url\"> &gt;&gt;</A>";
}
unset($m_var_list_update,$var_list_update["t"] );
return $o;
}
function GetAdminPageLinkList($url)
{
global $objConfig, $m_var_list_update, $var_list_update, $var_list;
$PerPage = $this->GetPerPage();
$NumPages = ceil($this->GetNumPages($PerPage));
$o = "";
if($this->Page>1)
{
$m_var_list_update["p"]=$this->Page-1;
$prev_url = $url."?env=".BuildEnv();
unset($m_var_list_update["p"]);
$o .= "<A HREF=\"$prev_url\" class=\"NAV_URL\"><<</A>";
}
if($this->Page<$NumPages)
{
$m_var_list_update["p"]=$this->Page+1;
$next_url = $url."?env=".BuildEnv();
unset($m_var_list_update["p"]);
}
for($p=1;$p<=$NumPages;$p++)
{
if($p != $this->Page)
{
$m_var_list_update["p"]=$p;
$href = $url."?env=".BuildEnv();
unset($m_var_list_update["p"]);
$o .= " <A HREF=\"$href\" class=\"NAV_URL\">$p</A> ";
}
else
$o .= "<SPAN class=\"CURRENT_PAGE\">$p</SPAN>";
}
if($this->Page < $NumPages)
$o .= "<A HREF=\"$next_url\" class=\"NAV_URL\">>></A>";
return $o;
}
function Search_Category($orderByClause)
{
global $objSession, $objConfig, $Errors;
$PerPage = $this->GetPerPage();
$Start = ($this->Page-1) * $PerPage;
$objResults = new clsSearchResults("Category","clsCategory");
$this->Clear();
$this->Categories = $objResults->LoadSearchResults($Start,$PerPage);
return $this->Categories;
}
function GetSubCats($ParentCat)
{
return $this->Query_Category("ParentId=".$ParentCat,"");
}
function AllSubCats($ParentCat)
{
$c =& $this->GetCategory($ParentCat);
$sql = "SELECT * FROM ".$this->SourceTable." WHERE ParentPath LIKE '".$c->Get("ParentPath")."%'";
$rs = $this->adodbConnection->Execute($sql);
$subcats = array();
while($rs && !$rs->EOF)
{
if($rs->fields["CategoryId"]!=$ParentCat)
{
$subcats[] = $rs->fields["CategoryId"];
}
$rs->MoveNext();
}
if($ParentCat>0)
{
if($c->Get("CachedDescendantCatsQty")!=count($subcats))
{
$c->Set("CachedDescendantCatsQty",count($subcats));
}
}
return $subcats;
}
function cat_navbar($admin=0, $cat, $target_template, $separator = " > ", $LinkLeaf = FALSE,
$root = 0,$RootTemplate="",$modcat=0, $ModTemplate="", $LinkRoot = FALSE)
{
// draw category navigation bar (at top)
global $Errors, $var_list_update, $var_list, $m_var_list_update, $m_var_list, $objConfig;
$selector = isset($_REQUEST['Selector']) ? '&Selector='.$_REQUEST['Selector'] : '';
$new = isset($_REQUEST['new']) ? '&new='.$_REQUEST['new'] : '';
$nav = "";
$m_var_list_update["p"]=1;
if(strlen($target_template)==0)
$target_template = $var_list["t"];
if($cat == 0)
{
$cat_name = language($objConfig->Get("Root_Name"));
if ($LinkRoot)
{
$var_list_update["t"] = strlen($RootTemplate)? $RootTemplate : $target_template;
$nav = "<a class=\"navbar\" href=\"".GetIndexURL(2)."?env=". BuildEnv().$selector.$new."\">$cat_name</a>"; }
else
$nav = "<span class=\"NAV_CURRENT_ITEM\">$cat_name</span>";
}
else
{
$nav = array();
$c =& $this->GetCategory($cat);
$nav_unparsed = $c->Get("ParentPath");
if(strlen($nav_unparsed)==0)
{
$c->UpdateCachedPath();
$nav_unparsed = $c->Get("ParentPath");
}
//echo " Before $nav_unparsed ";
if($root)
{
$r =& $this->GetCategory($root);
$rpath = $r->Get("ParentPath");
$nav_unparsed = substr($nav_unparsed,strlen($rpath),-1);
$cat_name = $r->Get("Name");
$m_var_list_update["cat"] = $root;
if($cat == $catid && !$LinkLeaf)
{
$nav[] = "<span class=\"NAV_CURRENT_ITEM\" >".$cat_name."</span>"; //href=\"browse.php?env=". BuildEnv() ."\"
}
else
{
if ($admin == 1)
{
$nav[] = "<a class=\"control_link\" href=\"".$_SERVER["PHP_SELF"]."?env=". BuildEnv().$selector.$new."\">".$cat_name."</a>";
}
else
{
if(strlen($RootTemplate))
{
$var_list_update["t"] = $RootTemplate;
}
else
{
$var_list_update["t"] = $target_template;
}
$nav[] = "<a class=\"navbar\" href=\"".GetIndexURL(2)."?env=". BuildEnv().$selector.$new."\">".$cat_name."</a>";
}
}
}
else
{
$nav_unparsed = substr($nav_unparsed,1,-1);
$cat_name = language($objConfig->Get("Root_Name"));
$m_var_list_update["cat"] = 0;
if($cat == 0)
{
$nav[] = "<span class=\"NAV_CURRENT_ITEM\" >".$cat_name."</span>"; //href=\"browse.php?env=". BuildEnv() ."\"
}
else
{
if ($admin == 1)
{
$nav[] = "<a class=\"control_link\" href=\"".$_SERVER["PHP_SELF"]."?env=". BuildEnv().$selector.$new."\">".$cat_name."</a>";
}
else
{
if(strlen($RootTemplate))
{
$var_list_update["t"] = $RootTemplate;
}
else
$var_list_update["t"] = $target_template;
$nav[] = "<a class=\"navbar\" href=\"".GetIndexURL(2)."?env=". BuildEnv().$selector.$new."\">".$cat_name."</a>";
}
}
}
//echo " After $nav_unparsed <br>\n";
if(strlen($target_template)==0)
$target_template = $var_list["t"];
$cats = explode("|", $nav_unparsed);
foreach($cats as $catid)
{
if($catid)
{
$c =& $this->GetCategory($catid);
if(is_object($c))
{
$cat_name = $c->Get("Name");
$m_var_list_update["cat"] = $catid;
if($catid==$modcat && strlen($ModTemplate)>0)
{
$t = $ModTemplate;
}
else
$t = $target_template;
if($cat == $catid && !$LinkLeaf)
{
$nav[] = "<span class=\"NAV_CURRENT_ITEM\" >".$cat_name."</span>";
}
else
{
if ($admin == 1)
{
$nav[] = "<a class=\"control_link\" href=\"".$_SERVER["PHP_SELF"]."?env=". BuildEnv().$selector.$new."\">".$cat_name."</a>";
}
else
{
$var_list_update["t"] = $t;
$nav[] = "<a class=\"navbar\" href=\"".GetIndexURL(2)."?env=". BuildEnv().$selector.$new."\">".$cat_name."</a>";
unset($var_list_update["t"]);
}
}
unset($m_var_list_update["cat"]);
}
}
}
$nav = implode($separator, $nav);
}
return $nav;
}
function &Add($ParentId, $Name, $Description, $CreatedOn, $EditorsPick, $Status, $Hot, $New, $Pop,
$Priority, $MetaKeywords,$MetaDesc)
{
global $objSession;
$UserId = $objSession->Get("UserId");
$d = new clsCategory(NULL);
$d->tablename = $this->SourceTable;
if($d->UsingTempTable())
$d->Set("CategoryId",-1);
$d->idfield = "CategoryId";
$d->Set(array("ParentId", "Name", "Description", "CreatedOn", "EditorsPick", "Status", "HotItem",
"NewItem","PopItem", "Priority", "MetaKeywords", "MetaDescription", "CreatedById"),
array($ParentId, $Name, $Description, $CreatedOn, $EditorsPick, $Status, $Hot, $New,
$Pop, $Priority, $MetaKeywords,$MetaDesc, $UserId));
$d->Create();
if($Status==1)
{
$d->SendUserEventMail("CATEGORY.ADD",$objSession->Get("PortalUserId"));
$d->SendAdminEventMail("CATEGORY.ADD");
}
else
{
$d->SendUserEventMail("CATEGORY.ADD.PENDING",$objSession->Get("PortalUserId"));
$d->SendAdminEventMail("CATEGORY.ADD.PENDING");
}
$d->UpdateCachedPath();
//RunUp($ParentId, "Increment_Count");
return $d;
}
function &Edit_Category($CategoryId, $Name, $Description, $CreatedOn, $EditorsPick, $Status, $Hot,
$NewItem, $Pop, $Priority, $MetaKeywords,$MetaDesc)
{
$d =& $this->GetCategory($CategoryId);
$d->Set(array("Name", "Description", "CreatedOn", "EditorsPick", "Status", "HotItem",
"NewItem", "PopItem", "Priority", "MetaKeywords","MetaDescription"),
array($Name, $Description, $CreatedOn, $EditorsPick, $Status, $Hot, $NewItem,
$Pop, $Priority, $MetaKeywords,$MetaDesc));
$d->Update();
$d->UpdateCachedPath();
return $d;
}
function Move_Category($Id, $ParentTo)
{
global $objCatList;
$d =& $this->GetCategory($Id);
$oldparent = $d->Get("ParentId");
$ChildList = $d->GetSubCatIds();
/*
echo "Target Parent Id: $ParentTo <br>\n";
echo "<PRE>";print_r($ChildList); echo "</PRE>";
echo "Old Parent: $oldparent <br>\n";
echo "ID: $Id <br>\n";
*/
/* sanity checks */
if(!in_array($ParentTo,$ChildList) && $oldparent != $ParentTo && $oldparent != $Id &&
$Id != $ParentTo)
{
$d->Set("ParentId", $ParentTo);
$d->Update();
$d->UpdateCachedPath();
RunUp($oldparent, "Decrement_Count");
RunUp($ParentTo, "Increment_Count");
RunDown($ParentTo, "UpdateCachedPath");
return TRUE;
}
else
{
global $Errors;
$Errors->AddAdminUserError("la_error_move_subcategory");
return FALSE;
}
die();
}
function Copy_CategoryTree($Id, $ParentTo)
{
global $PastedCatIds;
$new = $this->Copy_Category($Id, $ParentTo);
if($new)
{
$PastedCatIds[$Id] = $new;
$sql = "SELECT CategoryId from ".GetTablePrefix()."Category where ParentId=$Id";
$result = $this->adodbConnection->Execute($sql);
if ($result && !$result->EOF)
{
while(!$result->EOF)
{
$this->Copy_CategoryTree($result->fields["CategoryId"], $new);
$result->MoveNext();
}
}
}
return $new;
}
function Copy_Category($Id, $ParentTo)
{
global $objGroups;
$src = $this->GetCategory($Id);
$Children = $src->GetSubCatIds();
if($Id==$ParentTo || in_array($ParentTo,$Children))
{
/* sanity error here */
global $Errors;
$Errors->AddAdminUserError("la_error_copy_subcategory");
return 0;
}
$dest = $src;
$dest->Set("ParentId", $ParentTo);
if ($src->get("ParentId") == $ParentTo)
{
$OldName = $src->Get("Name");
if(substr($OldName,0,5)=="Copy ")
{
$parts = explode(" ",$OldName,4);
if($parts[2]=="of" && is_numeric($parts[1]))
{
$Name = $parts[3];
}
else
if($parts[1]=="of")
{
$Name = $parts[2]." ".$parts[3];
}
else
$Name = $OldName;
}
else
$Name = $OldName;
//echo "New Name: $Name<br>";
$dest->Set("Name", $Name);
$Names = CategoryNameCount($ParentTo,$Name);
//echo "Names Count: ".count($Names)."<br>";
if(count($Names)>0)
{
$NameCount = count($Names);
$found = FALSE;
$NewName = "Copy of $Name";
if(!in_array($NewName,$Names))
{
//echo "Matched on $NewName in:<br>\n";
$found = TRUE;
}
else
{
for($x=2;$x<$NameCount+2;$x++)
{
$NewName = "Copy ".$x." of ".$Name;
if(!in_array($NewName,$Names))
{
$found = TRUE;
break;
}
}
}
if(!$found)
{
$NameCount++;
$NewName = "Copy $NameCount of $Name";
}
//echo "New Name: $NewName<br>";
$dest->Set("Name",$NewName);
}
}
$dest->UnsetIdField();
$dest->Set("CachedDescendantCatsQty",0);
$dest->Set("ResourceId",NULL);
$dest->Create();
$dest->UpdateCachedPath();
$p = new clsPermList();
$p->Copy_Permissions($src->Get("CategoryId"),$dest->Get("CategoryId"));
$glist = $objGroups->GetAllGroupList();
$view = $p->GetGroupPermList($dest, "CATEGORY.VIEW", $glist);
$dest->SetViewPerms("CATEGORY.VIEW",$view,$glist);
RunUp($ParentTo, "Increment_Count");
return $dest->Get("CategoryId");
}
function Delete_Category($Id)
{
global $objSession;
$d =& $this->GetCategory($Id);
if(is_object($d))
{
if($d->Get("CategoryId")==$Id)
{
$d->SendUserEventMail("CATEGORY.DELETE",$objSession->Get("PortalUserId"));
$d->SendAdminEventMail("CATEGORY.DELETE");
$p =& $this->GetCategory($d->Get("ParentId"));
RunDown($d->Get("CategoryId"), "Delete");
RunUp($p->Get("CategoryId"), "Decrement_Count");
RunUp($d->Get("CategoryId"),"ClearCacheData");
}
}
}
function PasteFromClipboard($TargetCat)
{
global $objSession;
$clip = $objSession->GetVariable("ClipBoard");
if(strlen($clip))
{
$ClipBoard = ParseClipboard($clip);
$IsCopy = (substr($ClipBoard["command"],0,4)=="COPY") || ($ClipBoard["source"] == $TargetCat);
$item_ids = explode(",",$ClipBoard["ids"]);
for($i=0;$i<count($item_ids);$i++)
{
$ItemId = $item_ids[$i];
$item = $this->GetItem($item_ids[$i]);
if(!$IsCopy)
{
$this->Move_Category($ItemId, $TargetCat);
$clip = str_replace("CUT","COPY",$clip);
$objSession->SetVariable("ClipBoard",$clip);
}
else
{
$this->Copy_CategoryTree($ItemId,$TargetCat);
}
}
}
}
function NumChildren($ParentID)
{
$cat_filter = "m_cat_filter";
global $$cat_filter;
$filter = $$cat_filter;
$adodbConnection = &GetADODBConnection();
$sql = "SELECT COUNT(Name) as children from ".$this->SourceTable." where ParentId=" . $ParentID . $filter;
$result = $adodbConnection->Execute($sql);
return $result->fields["children"];
}
function UpdateMissingCacheData()
{
$rs = $this->adodbConnection->Execute("SELECT * FROM ".$this->SourceTable." WHERE ParentPath IS NULL or ParentPath=''");
while($rs && !$rs->EOF)
{
$c = new clsCategory(NULL);
$data = $rs->fields;
$c->SetFromArray($data);
$c->UpdateCachedPath();
$rs->MoveNext();
}
$rs = $this->adodbConnection->Execute("SELECT * FROM ".$this->SourceTable." WHERE CachedNavbar IS NULL or CachedNavBar=''");
while($rs && !$rs->EOF)
{
$c = new clsCategory(NULL);
$data = $rs->fields;
$c->SetFromArray($data);
$c->UpdateCachedPath();
$rs->MoveNext();
}
}
function CopyFromEditTable($idfield)
{
global $objGroups, $objSession, $objPermList;
$GLOBALS['_CopyFromEditTable']=1;
$objPermList = new clsPermList();
$edit_table = $objSession->GetEditTable($this->SourceTable);
$sql = "SELECT * FROM $edit_table";
$rs = $this->adodbConnection->Execute($sql);
while($rs && !$rs->EOF)
{
$data = $rs->fields;
$c = new $this->classname;
$c->SetFromArray($data);
$c->Dirty();
if($c->Get("CategoryId")>0)
{
$c->Update();
}
else
{
$c->UnsetIdField();
$c->Create();
$sql = "UPDATE ".GetTablePrefix()."Permissions SET CatId=".$c->Get("CategoryId")." WHERE CatId=-1";
$this->adodbConnection->Execute($sql);
}
$c->UpdateCachedPath();
$c->UpdateACL();
$c->SendUserEventMail("CATEGORY.MODIFY",$objSession->Get("PortalUserId"));
$c->SendAdminEventMail("CATEGORY.MODIFY");
$c->Related = new clsRelationshipList();
if(is_object($c->Related))
{
$r = $c->Related;
$r->CopyFromEditTable($c->Get("ResourceId"));
}
//RunDown($c->Get("CategoryId"),"UpdateCachedPath");
//RunDown($c->Get("CategoryId"),"UpdateACL");
unset($c);
unset($r);
$rs->MoveNext();
}
@$this->adodbConnection->Execute("DROP TABLE IF EXISTS $edit_table");
unset($GLOBALS['_CopyFromEditTable']);
//$this->UpdateMissingCacheData();
}
function PurgeEditTable($idfield)
{
parent::PurgeEditTable($idfield);
$sql = "DELETE FROM ".GetTablePrefix()."Permissions WHERE CatId=-1";
$this->adodbConnection->Execute($sql);
}
function GetExclusiveType($CatId)
{
global $objItemTypes, $objConfig;
$itemtype = NULL;
$c =& $this->GetItem($CatId);
$path = $c->Get("ParentPath");
foreach($objItemTypes->Items as $Type)
{
$RootVar = $Type->Get("ItemName")."_Root";
$RootId = $objConfig->Get($RootVar);
if((int)$RootId)
{
$rcat = $this->GetItem($RootId);
$rpath = $rcat->Get("ParentPath");
$p = substr($path,0,strlen($rpath));
//echo $rpath." vs. .$p [$path]<br>\n";
if($rpath==$p)
{
$itemtype = $Type;
break;
}
}
}
return $itemtype;
}
}
function RunUp($Id, $function, $Param=NULL)
{
global $objCatList;
$d = $objCatList->GetCategory($Id);
$ParentId = $d->Get("ParentId");
if ($ParentId == 0)
{
if($Param == NULL)
{
$d->$function();
}
else
{
$d->$function($Param);
}
}
else
{
RunUp($ParentId, $function, $Param);
if($Param == NULL)
{
$d->$function();
}
else
{
$d->$function($Param);
}
}
}
function RunDown($Id, $function, $Param=NULL)
{
global $objCatList;
$adodbConnection = &GetADODBConnection();
$sql = "select CategoryId from ".GetTablePrefix()."Category where ParentId='$Id'";
$rs = $adodbConnection->Execute($sql);
while($rs && !$rs->EOF)
{
RunDown($rs->fields["CategoryId"], $function, $Param);
$rs->MoveNext();
}
$d = $objCatList->GetCategory($Id);
if($Param == NULL)
{
$d->$function();
}
else
$d->$function($Param);
}
?>
\ No newline at end of file
Property changes on: trunk/kernel/include/category.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.26
\ No newline at end of property
+1.27
\ No newline at end of property
Index: trunk/kernel/include/itemdb.php
===================================================================
--- trunk/kernel/include/itemdb.php (revision 1441)
+++ trunk/kernel/include/itemdb.php (revision 1442)
@@ -1,643 +1,643 @@
<?php
define('FT_OPTION', 1); // option formatter
class clsItemDB
{
var $Formatters = Array(); // by Alex
var $m_dirtyFieldsMap = array();
var $Data = array();
var $adodbConnection;
var $tablename;
var $BasePermission;
var $id_field;
var $NoResourceId;
var $debuglevel;
var $SelectSQL = 'SELECT * FROM %s WHERE %s';
function clsItemDB()
{
$this->adodbConnection = &GetADODBConnection();
$this->tablename="";
$this->NoResourceId=0;
$this->debuglevel=0;
}
// ============================================================================================
function GetFormatter($field)
{
return $this->HasFormatter($field) ? $this->Formatters[$field] : false;
}
function SetFormatter($field, $type, $params)
{
// by Alex
// all params after 2nd are formmater type specific
$this->Formatters[$field]['type'] = $type;
switch($type)
{
case FT_OPTION:
$this->Formatters[$field]['options'] = $params;
break;
}
}
/*
function FormatFields()
{
// format item in list data before printing
foreach($this->Formatters as $field => $formatter)
$this->Data[$field] = $this->FormatField($field);
}
*/
function FormatField($field)
{
// formats single field if it has formatter
if( $this->HasFormatter($field) )
{
$fmt = $this->Formatters[$field];
switch($fmt['type'])
{
case FT_OPTION:
return $fmt['options'][ $this->Data[$field] ];
break;
}
}
else
return $this->Get($field);
}
function HasFormatter($field)
{
// checks if formatter is set for field
return isset($this->Formatters[$field]) ? 1 : 0;
}
// ============================================================================================
function UnsetIdField()
{
$f = $this->IdField();
unset($this->Data[$f]);
unset($this->m_dirtyFieldsMap[$f]);
}
function UnsetField($field)
{
unset($this->Data[$field]);
unset($this->m_dirtyFieldsMap[$field]);
}
function IdField()
{
if(!strlen($this->id_field))
{
return $this->tablename."Id";
}
else
return $this->id_field;
}
function UniqueId()
{
return $this->Get($this->IdField());
}
function SetUniqueId($value)
{
$var = $this->IdField();
$this->Set($var, $value);
}
function SetModified($UserId=NULL,$modificationDate=null)
{
global $objSession;
$keys = array_keys($this->Data);
if(in_array("Modified",$keys))
{
$this->Set("Modified", isset($modificationDate) ? $modificationDate : adodb_date("U") );
}
if(in_array("ModifiedById",$keys))
{
if(!$UserId)
$UserId = $objSession->Get("PortalUserId");
$this->Set("ModifiedById",$UserId);
}
}
function PrintVars()
{
echo '<pre>'.print_r($this->Data, true).'</pre>';
}
// =================================================================
function GetFormatted($name)
{
// get formatted field value
return $this->FormatField($name);
}
function Get($name)
{
// get un-formatted field value
//if( !isset($this->Data[$name]) ) print_pre( debug_backtrace() );
return $this->HasField($name) ? $this->Data[$name] : '';
}
// =================================================================
function HasField($name)
{
// checks if field exists in item
return isset($this->Data[$name]) ? 1 : 0;
}
/**
* Set's value(-s) of field(-s) specified.
* Modifies HasChanges flag automatically.
*
* @param string/array $name
* @param string/array $value
* @access public
*/
function Set($name, $value)
{
//echo "Setting Field <b>$name</b>: = [$value]<br>";
if( is_array($name) )
{
for ($i=0; $i < sizeof($name); $i++)
{
$this->_Set($name[$i],$value[$i]);
}
}
else
{
$this->_Set($name,$value);
}
}
/**
* Set's value(-s) of field(-s) specified.
* Modifies HasChanges flag automatically.
*
* @param string $name
* @param string $value
* @access private
*/
function _Set($name,$value)
{
$var = 'm_'.$name;
if( !$this->HasField($name) || $this->Data[$name] != $value )
{
if( !(isset($_GET['new']) && $_GET['new']) ) {
$this->DetectChanges($name, $value);
}
$this->Data[$name] = $value;
$this->m_dirtyFieldsMap[$name] = $value;
}
}
function Dirty($list=NULL)
{
if($list==NULL)
{
foreach($this->Data as $field => $value)
{
$this->m_dirtyFieldsMap[$field] = $value;
}
}
else
{
foreach($list as $field)
{
$this->m_dirtyFieldsMap[$field] = $this->Data[$field];
}
}
}
function Clean($list=NULL)
{
if($list == NULL)
{
unset($this->m_dirtyFieldsMap);
$this->m_dirtyFieldsMap=array();
}
else
{
foreach($list as $value)
{
$varname = "m_" . $value;
unset($this->m_dirtyFieldsMap[$value]);
}
}
}
function SetDebugLevel($value)
{
$this->debuglevel = $value;
}
function SetFromArray($data, $dirty = false)
{
if(is_array($data))
{
$this->Data = $data;
if($dirty) $this->m_dirtyFieldsMap = $data;
}
}
function GetData()
{
return $this->Data;
}
function SetData($data, $dirty = false)
{
$this->SetFromArray($data, $dirty);
}
function Delete()
{
global $Errors;
if($this->Get($this->IdField())==0)
{
$Errors->AddError("error.AppError",NULL,'Internal error: Delete requires set id',"",get_class($this),"Delete");
return false;
}
$sql = sprintf('DELETE FROM %s WHERE %s = %s', $this->tablename, $this->IdField(),
$this->UniqueId());
if($this->debuglevel>0)
echo $sql."<br>";
if ($this->adodbConnection->Execute($sql) === false)
{
$Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"Delete");
return false;
}
return true;
}
function Update($UpdatedBy=NULL,$modificationDate = null)
{
global $Errors, $objSession;
if(count($this->m_dirtyFieldsMap) == 0)
return true;
$this->SetModified($UpdatedBy,$modificationDate);
$sql = "UPDATE ".$this->tablename ." SET ";
$first = 1;
foreach ($this->m_dirtyFieldsMap as $key => $value)
{
if(!is_numeric($key) && $key != $this->IdField() && $key!='ResourceId')
{
if($first)
{
if(isset($GLOBALS['_CopyFromEditTable']))
$sql = sprintf("%s %s=%s",$sql,$key,$this->adodbConnection->qstr(($value)));
else
$sql = sprintf("%s %s=%s",$sql,$key,$this->adodbConnection->qstr(stripslashes($value)));
$first = 0;
}
else
{
if(isset($GLOBALS['_CopyFromEditTable']))
$sql = sprintf("%s, %s=%s",$sql,$key,$this->adodbConnection->qstr(($value)));
else
$sql = sprintf("%s, %s=%s",$sql,$key,$this->adodbConnection->qstr(stripslashes($value)));
}
}
}
$sql = sprintf("%s WHERE %s = '%s'",$sql, $this->IdField(), $this->UniqueId());
if($this->debuglevel>0)
echo $sql."<br>";
if ($this->adodbConnection->Execute($sql) === false)
{
$Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"Update");
return false;
}
if ($objSession->GetVariable("HasChanges") == 2) {
$objSession->SetVariable("HasChanges", 1);
}
/* if ($this->adodbConnection->Affected_Rows() > 0) {
$objSession->SetVariable("HasChanges", 1);
}*/
return true;
}
function ReplaceID($new_id)
{
// replace item's id, because Update method
// is too dummy to do this autommatically
// USED in temporary table editing stuff
$db =& $this->adodbConnection;
$sql = "UPDATE %1\$s SET `%2\$s` = %3\$s WHERE `%2\$s` = %4\$s";
$sql = sprintf($sql, $this->tablename, $this->IdField(), $new_id, (int)$this->UniqueId() );
if($this->debuglevel > 0) echo $sql.'<br>';
$db->Execute($sql);
}
function CreateSQL()
{
global $Errors;
$sql = "INSERT IGNORE INTO ".$this->tablename." (";
$first = 1;
foreach ($this->Data as $key => $value)
{
if($first)
{
$sql = sprintf("%s %s",$sql,$key);
$first = 0;
}
else
{
$sql = sprintf("%s, %s",$sql,$key);
}
}
$sql = sprintf('%s ) VALUES (',$sql);
$first = 1;
foreach ($this->Data as $key => $value)
{
if( is_array($value) )
{
global $debugger;
$debugger->dumpVars($value);
$debugger->appendTrace();
trigger_error('Value of array type not allowed in method <b>CreateSQL</b> of <b>clsItemDB</b> class', E_USER_ERROR);
}
if($first)
{
if(isset($GLOBALS['_CopyFromEditTable']))
$sql = sprintf("%s %s",$sql,$this->adodbConnection->qstr(($value)));
else
$sql = sprintf("%s %s",$sql,$this->adodbConnection->qstr(stripslashes($value)));
$first = 0;
}
else
{
if(isset($GLOBALS['_CopyFromEditTable']))
$sql = sprintf("%s, %s",$sql,$this->adodbConnection->qstr(($value)));
else
$sql = sprintf("%s, %s",$sql,$this->adodbConnection->qstr(stripslashes($value)));
}
}
$sql = sprintf('%s)',$sql);
return $sql;
}
/**
* Set's HasChanges flag based on new field
* with $name with value $value.
*
* @param string $name
* @param string $value
* @access private
*/
function DetectChanges($name, $value)
{
global $objSession;
//echo "<b>class: ".get_class($this)."</b><br>";
if ($this->Data[$name] != $value && $value != '') {
//echo "$name Modified tt ".$this->Data[$name]." tt $value<br>";
if ($objSession->GetVariable("HasChanges") != 1) {
$objSession->SetVariable("HasChanges", 2);
}
}
}
function Create()
{
- global $Errors, $objSession;
-
- if($this->debuglevel) echo "Creating Item: ".get_class($this)."<br>";
- if($this->NoResourceId!=1 && (int)$this->Get("ResourceId")==0)
- {
- $this->Set("ResourceId", GetNextResourceId());
- }
- $sql = $this->CreateSql();
-
- if($this->debuglevel>0)
- echo $sql."<br>\n";
+ global $Errors, $objSession;
- if ($this->adodbConnection->Execute($sql) === false)
- {
- $Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"Create");
- return false;
- }
+ if($this->debuglevel) echo "Creating Item: ".get_class($this)."<br>";
+ if($this->NoResourceId!=1 && (int)$this->Get("ResourceId")==0)
+ {
+ $this->Set("ResourceId", GetNextResourceId());
+ }
+ $sql = $this->CreateSql();
- $this->SetUniqueId($this->adodbConnection->Insert_ID());
-
- if ($objSession->GetVariable("HasChanges") == 2) {
- $objSession->SetVariable("HasChanges", 1);
- }
-
- /*if ($this->adodbConnection->Affected_Rows() > 0) {
- $objSession->SetVariable("HasChanges", 1);
- } */
-
- return true;
+ if($this->debuglevel>0)
+ echo $sql."<br>\n";
+
+ if ($this->adodbConnection->Execute($sql) === false)
+ {
+ $Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"Create");
+ return false;
+ }
+
+ $this->SetUniqueId($this->adodbConnection->Insert_ID());
+
+ if ($objSession->GetVariable("HasChanges") == 2) {
+ $objSession->SetVariable("HasChanges", 1);
+ }
+
+ /*if ($this->adodbConnection->Affected_Rows() > 0) {
+ $objSession->SetVariable("HasChanges", 1);
+ } */
+
+ return true;
}
function Increment($field, $calculate_hot = false)
{
global $Errors;
if ($calculate_hot) {
$sql = "SELECT $field FROM ".$this->tablename." WHERE ".$this->IdField()." = ".$this->UniqueId();
$rs = $this->adodbConnection->Execute($sql);
$sql = "SELECT MAX($field) AS max_value FROM ".$this->tablename." WHERE ROUND($field) = ".round($rs->fields[$field]);
$rs = $this->adodbConnection->Execute($sql);
//echo "MAX VALUE: ".$rs->fields['max_value']."<br>";
//echo "MAX SQL: $sql<br>";
$new_val = $rs->fields['max_value'] + 1;
$sql = "SELECT count($field) AS count FROM ".$this->tablename." WHERE $field = $new_val";
$rsc = $this->adodbConnection->Execute($sql);
while ($rsc->fields['count'] != 0) {
$sql = "SELECT count($field) AS count FROM ".$this->tablename." WHERE $field = $new_val";
$rsc = $this->adodbConnection->Execute($sql);
//echo "New Value:$new_val<br>";
if ($rsc->fields['count'] > 0) {
$new_val = $new_val + 0.000001;
}
}
$sql = "Update ".$this->tablename." set $field=$new_val where ".$this->IdField()."=" . $this->UniqueId();
}
else {
$sql = "Update ".$this->tablename." set $field=$field+1 where ".$this->IdField()."=" . $this->UniqueId();
}
if($this->debuglevel>0)
echo $sql."<br>";
$result = $this->adodbConnection->Execute($sql);
if ($result === false)
{
$Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"Increment");
return false;
}
if ($calculate_hot) {
$this->Set($field,$new_val);
}
else {
$this->Set($field, $this->Get($field) + 1);
}
}
function Decrement($field)
{
global $Errors;
$sql = "Update ".$this->tablename." set $field=$field-1 where ".$this->IdField()."=" .(int)$this->UniqueId();
if($this->debuglevel>0)
echo $sql;
$result = $this->adodbConnection->Execute($sql);
if ($result === false)
{
$Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"Decrement");
return false;
}
$this->Set($field,$this->Get($field)-1);
}
function GetFieldList($UseLoadedData=FALSE)
{
if(count($this->Data) && $UseLoadedData==TRUE)
{
$res = array_keys($this->Data);
}
else
{
$res = $this->adodbConnection->MetaColumnNames($this->tablename);
}
return $res;
}
function UsingTempTable()
{
global $objSession;
$temp = $objSession->GetEditTable($this->tablename);
$p = GetTablePrefix()."ses";
$t = substr($temp,0,strlen($p));
$ThisTable = substr($this->tablename,0,strlen($p));
if($t==$ThisTable)
{
return TRUE;
}
else
return FALSE;
}
function LoadFromDatabase($Id, $IdField = null) // custom IdField by Alex
{
global $objSession,$Errors;
if(!isset($Id))
{
$Errors->AddError("error.AppError",NULL,'Internal error: LoadFromDatabase id',"",get_class($this),"LoadFromDatabase");
return false;
}
// --------- multiple ids allowed: begin -----------------
$id_field = isset($IdField) ? $IdField : $this->IdField();
if( !is_array($id_field) ) $id_field = Array($id_field);
if( !is_array($Id) ) $Id = Array($Id);
$i = 0; $id_count = count($id_field);
$conditions = Array();
while($i < $id_count)
{
$conditions[] = "(`".$id_field[$i]."` = '".$Id[$i]."')";
$i++;
}
$sql = sprintf($this->SelectSQL, $this->tablename, implode(' AND ', $conditions) );
// --------- multiple ids allowed: end --------------------
if($this->debuglevel) echo "Load SQL: $sql<br>";
$result = $this->adodbConnection->Execute($sql);
if ($result === false)
{
$Errors->AddError("error.DatabaseError",NULL,$this->adodbConnection->ErrorMsg(),"",get_class($this),"LoadFromDatabase");
return false;
}
$data = $result->fields;
if($this->debuglevel) print_pre($data);
if(is_array($data))
$this->SetFromArray($data);
$this->Clean();
return TRUE;
}
function FieldExists($field)
{
$res = array_key_exists($field,$this->Data);
return $res;
}
function ValueExists($Field,$Value)
{
$sql = "SELECT $Field FROM ".$this->tablename." WHERE $Field='$Value'";
$rs = $this->adodbConnection->Execute($sql);
if($rs && !$rs->EOF)
{
return TRUE;
}
else
return FALSE;
}
function FieldMax($Field)
{
$sql = "SELECT Max($Field) as m FROM ".$this->tablename;
$rs = $this->adodbConnection->Execute($sql);
if($rs && !$rs->EOF)
{
$ret = $rs->fields["m"];
}
else
$ret = 0;
}
function FieldMin($Field)
{
$sql = "SELECT Min($Field) as m FROM ".$this->tablename;
$rs = $this->adodbConnection->Execute($sql);
if($rs && !$rs->EOF)
{
$ret = $rs->fields["m"];
}
else
$ret = 0;
}
function TableExists($table = null)
{
// checks if table specified in item exists in db
$db =& $this->adodbConnection;
$sql = "SHOW TABLES LIKE '%s'";
if($table == null) $table = $this->tablename;
$rs = $db->Execute( sprintf($sql, $table) );
if( $rs->RecordCount() == 1 ) // table exists in normal case
return 1;
else // check if table exists in lowercase
$rs = $db->Execute( sprintf($sql, strtolower($table) ) );
return ($rs->RecordCount() == 1) ? 1 : 0;
}
}
?>
Property changes on: trunk/kernel/include/itemdb.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.26
\ No newline at end of property
+1.27
\ No newline at end of property
Index: trunk/kernel/include/modlist.php
===================================================================
--- trunk/kernel/include/modlist.php (revision 1441)
+++ trunk/kernel/include/modlist.php (revision 1442)
@@ -1,133 +1,136 @@
<?php
class clsModule extends clsItemDB
{
function clsModule($name="")
{
$this->clsItemDB();
$this->tablename = GetTablePrefix()."Modules";
$this->type=11;
$this->BasePermission="";
$this->id_field = "Name";
$this->debuglevel=0;
if(strlen($name))
$this->LoadFromDatabase($name);
}
function ExecuteFunction($function_name, $params)
{
$function_name = $this->Get('Var').'_'.$function_name;
- if( function_exists($function_name) )
+ if( function_exists($function_name) ) {
return $function_name($params);
- else
+ }
+ else {
return false;
+ }
}
}
class clsModList extends clsItemCollection
{
function clsModList()
{
$this->clsItemCollection();
$this->SourceTable=GetTablePrefix()."Modules";
$this->classname = "clsModule";
$this->LoadModules();
}
function LoadModules()
{
$this->Clear();
return $this->Query_Item("SELECT * FROM ".$this->SourceTable);
}
function &FindModule($fieldname, $value)
{
// finds module by field specified
foreach($this->Items as $module)
if(strcasecmp($module->Get($fieldname), $value) == 0)
return $module;
return false;
}
function GetModuleList()
{
// returns installed modules list
$ret = Array();
foreach($this->Items as $module) $ret[] = $module->Get('Name');
return $ret;
}
function &GetModule($name)
{
//$this->LoadModules();
return $this->FindModule('Name', $name);
}
function ExecuteFunction($function, $params = Array() )
{
// call specified function for each module
// and returns result as array (key = module name)
$result = Array();
- foreach($this->Items as $module)
+ foreach($this->Items as $module) {
$result[ $module->Get('Name') ] = $module->ExecuteFunction($function, $params);
+ }
return $result;
}
function GetModuleByPath($path)
{
$ret = false;
if(strlen($path))
{
$parts = explode("/",$path);
$modpath = $parts[0]."/";
//$this->LoadModules();
return $this->FindModule('TemplatePath',$modpath);
}
return $ret;
}
function GetModuleRoot($name)
{
//$this->LoadModules();
$mod = $this->FindModule('Name', $name);
return is_object($mod) ? $mod->Get("RootCat") : 0;
}
function SetModuleRoot($name, $CatId)
{
$mod =& $this->FindModule('Name', $name);
if( is_object($mod) )
{
$mod->Set('RootCat',$CatId);
$mod->Update();
}
}
function Refresh()
{
// reloads table content
$this->LoadModules();
}
function ModuleInstalled($name)
{
//$this->LoadModules();
return $this->FindModule('Name',$name);
}
function MergeReturn($array)
{
// merge results ganed with ExecuteFunction
// method in a specific way
$tmp = Array();
foreach($array as $mod_name => $mod_results)
if (is_array($mod_results)) {
foreach($mod_results as $mod_var => $mod_var_value) {
$tmp[$mod_var][$mod_name] = $mod_var_value;
}
}
return $tmp;
}
}
Property changes on: trunk/kernel/include/modlist.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.3
\ No newline at end of property
+1.4
\ No newline at end of property
Index: trunk/themes/default/common/head.tpl
===================================================================
--- trunk/themes/default/common/head.tpl (revision 1441)
+++ trunk/themes/default/common/head.tpl (revision 1442)
@@ -1,153 +1,153 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<!-- start meta tags -->
<meta http-equiv="content-type" content="text/html; charset=<inp:m_regional_option _name="Charset" />" />
-<meta name="keywords" content="..." />
-<meta name="description" content="..." />
+<meta name="keywords" content="<inp:m_meta_description />" />
+<meta name="description" content="<inp:m_meta_keywords />" />
<meta name="robots" content="all" />
<meta name="copyright" content="Copyright &#174; 1997-2003 Intechnic" />
<meta name="author" content="Intechnic Corporation." />
<!-- end meta tags -->
<base href="<inp:m_theme_url/>" />
<!-- start AddToFavorites icon -->
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
<!-- end AddToFavorites icon -->
<SCRIPT language="JavaScript" SRC="incs/sniffer2.js" type="text/javascript"></SCRIPT>
<script language="JavaScript" src="incs/scripts.js" type="text/javascript"></script>
<SCRIPT language="JavaScript1.2" type="text/javascript">
function showSeg(el,on)
{
if(is_getElementById)
{
d = document.getElementById(el);
if (is_nav4up) {d.visibility = (on) ? "show" : "hide"}
else {d.style.visibility = (on) ? "visible" : "hidden"}
}
else
{
if (is_ie)
document.alldivs[el].style.visibility = (on) ? "visible" : "hidden";
else if(is_nav)
document.layers[el].bgColor = (on) ? "show" : "hide";
}
//alert(d.id);
}
function hideSeg(el)
{
tid=setTimeout('showSeg("'+el+'",false)',2000);
}
function moveSeg()
{
if(tid)
clearTimeout(tid);
tid=0;
}
tid = 0;
isMac = (navigator.appVersion.indexOf("Mac")!=-1) ? 1 : 0;
ver4 = true; //DEBUG!
//alert("nav4: "+is_nav4up+" IE4:"+is_ie4up);
if (is_nav4up || is_ie4up || is_getElementById) {
leftPos = 520; // if option 1 or 3, above, assign null
topPos = 143; // if option 1 or 3, above, assign null
margRight = 0; // for NO right margin, assign 0
padding = 0; // for NO padding, assign 0
backCol = null; // for transparent, assign null
borWid = null; // for no border, assign null
borCol = "#993366"; // overlooked if borWid is null
borSty = "solid"; // overlooked if borWid is null
if(is_ie4up || is_opera)
{
width=200;
}
else
width = 185;
}
semi = ";";
styStr = "<STYLE TYPE='text/css'>"
styStr += ".segment{";
styStr += "cursor: hand;";
styStr += "position:absolute;";
styStr += "visibility:hidden;";
styStr += "left:"+leftPos+"px;";
styStr += "top:"+topPos+"px;";
styStr += "width:" + width + "px" + semi;
if (borWid > 0) {
styStr += "border-width:" + borWid + semi;
styStr += "border-color:" + borCol + semi;
styStr += "border-style:" + borSty + semi;
}
if (is_nav4up) {
if (borWid > 0 && padding <= 3) styStr += "padding: 0;";
if (borWid > 0 && padding > 3) styStr += "padding:" + (padding-3) + semi;
if (borWid == 0) styStr += "padding:" + padding + semi;
}
else {
styStr += "padding:" + padding + semi;
}
if (backCol != null) {
if (is_nav4up) {
if (borWid > 0 && padding <= 3) {
styStr += "layer-background-color:" + backCol + semi;
}
if (borWid > 0 && padding > 3) {
styStr += "background-color:" + backCol + semi;
}
if (borWid == 0) {
styStr += "layer-background-color:" + backCol + semi;
}
}
else {
styStr += "background-color:" + backCol + semi;
}
}
styStr += "}";
styStr += ".last{position:absolute;visibility:hidden}";
styStr += "</STYLE>";
document.write(styStr);
</SCRIPT>
<SCRIPT Languge="JavaScript1.2">
function highlight_link(elementId,highlight_color)
{
d = document.getElementById(elementId);
if(d)
{
d.style.color = highlight_color;
}
}
</SCRIPT>
<title><inp:m_page_title /></title>
<!-- start CSS linked -->
<inp:m_module_stylesheets _Modules="In-Portal,In-News,In-Bulletin,In-Link" _In-PortalCss="incs/inportal_main.css" />
<!-- end CSS linked -->
<!-- start name.js code -->
<!--<script src="incs/js/name.js" type="text/javascript" language="JavaScript1.2" charset="utf-8"></script>-->
<!-- end name.js code -->
</head>
Property changes on: trunk/themes/default/common/head.tpl
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.3
\ No newline at end of property
+1.4
\ No newline at end of property
Index: trunk/admin/install/upgrades/changelog_1_0_12.txt
===================================================================
--- trunk/admin/install/upgrades/changelog_1_0_12.txt (revision 1441)
+++ trunk/admin/install/upgrades/changelog_1_0_12.txt (revision 1442)
@@ -1,90 +1,92 @@
File in-portal/globals.php changed
File in-portal/admin/browse.php changed
File in-portal/admin/relation_select.php changed
File in-portal/admin/browse/fw_menu.js changed
File in-portal/admin/config/addlang.php changed
File in-portal/admin/help/manual.pdf changed
File in-portal/admin/include/mainscript.php changed
File in-portal/admin/install/inportal_data.sql changed
File in-portal/admin/install/inportal_schema.sql changed
File in-portal/admin/install/langpacks/english.lang changed
File in-portal/admin/install/upgrades/changelog_1_0_12.txt is new
File in-portal/admin/install/upgrades/inportal_check_v1.0.10.php changed
File in-portal/admin/install/upgrades/inportal_upgrade_v1.0.11.sql changed
File in-portal/admin/install/upgrades/inportal_upgrade_v1.0.12.sql is new
File in-portal/admin/install/upgrades/readme_1_0_12.txt is new
File in-portal/kernel/action.php changed
File in-portal/kernel/frontaction.php changed
File in-portal/kernel/parser.php changed
File in-portal/kernel/startup.php changed
File in-portal/kernel/admin/advanced_view.php changed
File in-portal/kernel/admin/include/help/browse.txt changed
File in-portal/kernel/admin/include/toolbar/advanced_view.php changed
File in-portal/kernel/admin/include/toolbar/browse.php changed
File in-portal/kernel/admin/include/toolbar/editcategory_relationselect.php changed
File in-portal/kernel/admin/include/toolbar/reviews.php changed
File in-portal/kernel/include/category.php changed
File in-portal/kernel/include/customfield.php changed
File in-portal/kernel/include/debugger.php changed
File in-portal/kernel/include/emailmessage.php changed
File in-portal/kernel/include/item.php changed
+File in-portal/kernel/include/itemdb.php changed
File in-portal/kernel/include/language.php changed
+File in-portal/kernel/include/modlist.php changed
File in-portal/kernel/include/parseditem.php changed
File in-portal/kernel/include/portaluser.php changed
File in-portal/kernel/include/smtp.php changed
File in-portal/kernel/include/usersession.php changed
File in-portal/themes/default/sitemap.tpl is new
File in-portal/themes/default/common/footer.tpl changed
+File in-portal/themes/default/common/head.tpl changed
File in-portal/themes/default/index/sitemap_cat_element.tpl is new
File in-portal/themes/default/index/sitemap_subcat_element.tpl is new
File in-portal/themes/default/register/register_form.tpl changed
File in-portal/themes/default/specials/special1.tpl is new
File in-portal/themes/incommerce/index.tpl is new
File in-portal/themes/incommerce/blocks/adv_search.tpl is new
File in-portal/themes/incommerce/blocks/cart_indicator.tpl is new
File in-portal/themes/incommerce/blocks/categories_home.tpl is new
File in-portal/themes/incommerce/blocks/checkout_steps.tpl is new
File in-portal/themes/incommerce/blocks/copyright.tpl is new
File in-portal/themes/incommerce/blocks/credit_cards.tpl is new
File in-portal/themes/incommerce/blocks/current_path.tpl is new
File in-portal/themes/incommerce/blocks/footer.tpl is new
File in-portal/themes/incommerce/blocks/header.tpl is new
File in-portal/themes/incommerce/blocks/login.tpl is new
File in-portal/themes/incommerce/blocks/mailing_list.tpl is new
File in-portal/themes/incommerce/blocks/products.tpl is new
File in-portal/themes/incommerce/blocks/products_featured.tpl is new
File in-portal/themes/incommerce/blocks/products_new_home.tpl is new
File in-portal/themes/incommerce/blocks/products_picks_home.tpl is new
File in-portal/themes/incommerce/blocks/products_recent.tpl is new
File in-portal/themes/incommerce/blocks/products_top_sellers.tpl is new
File in-portal/themes/incommerce/blocks/recommend_site.tpl is new
File in-portal/themes/incommerce/blocks/sub_categories.tpl is new
File in-portal/themes/incommerce/blocks/toolbar.tpl is new
File in-portal/themes/incommerce/img/adv_search.gif is new
File in-portal/themes/incommerce/img/american_express.gif is new
File in-portal/themes/incommerce/img/buy.gif is new
File in-portal/themes/incommerce/img/buy2.gif is new
File in-portal/themes/incommerce/img/delete.gif is new
File in-portal/themes/incommerce/img/logo.gif is new
File in-portal/themes/incommerce/img/master_card.gif is new
File in-portal/themes/incommerce/img/novus.gif is new
File in-portal/themes/incommerce/img/s.gif is new
File in-portal/themes/incommerce/img/visa.gif is new
File in-portal/themes/incommerce/in-commerce/category.tpl is new
File in-portal/themes/incommerce/in-commerce/product.tpl is new
File in-portal/themes/incommerce/in-commerce/shop_cart/billing.tpl is new
File in-portal/themes/incommerce/in-commerce/shop_cart/shipping.tpl is new
File in-portal/themes/incommerce/in-commerce/shop_cart/shop_cart.tpl is new
File in-portal/themes/incommerce/inc/style.css is new
Changes in phrases and events:
Changed label "la_topic_poststopop_prompt" of type "1"
Changed label "la_topic_poststopop_prompt" of type "1"
Changed label "la_news_newstopminrating_prompt" of type "1"
Changed label "la_news_newstopminrating_prompt" of type "1"
-Changed label "lu_ferror_reset_denied" of type "0"
-Changed label "lu_ferror_reset_denied" of type "0"
Added label "lu_fieldcustom__drop_down" of type "2"
+Added label "lu_site_map" of type "0"
Property changes on: trunk/admin/install/upgrades/changelog_1_0_12.txt
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.3
\ No newline at end of property
+1.4
\ No newline at end of property
Index: trunk/admin/install/langpacks/english.lang
===================================================================
--- trunk/admin/install/langpacks/english.lang (revision 1441)
+++ trunk/admin/install/langpacks/english.lang (revision 1442)
@@ -1,1828 +1,1829 @@
<LANGUAGES><LANGUAGE PackName="English"><DATEFORMAT>m/d/y</DATEFORMAT><TIMEFORMAT>g:i:s A</TIMEFORMAT><DECIMAL>.</DECIMAL><THOUSANDS>,</THOUSANDS><CHARSET /><PHRASES><PHRASE Label="lu_search_results" Type="0">U2VhcmNoIFJlc3VsdHM=</PHRASE>
<PHRASE Label="lu_no_categories" Type="0">Tm8gQ2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="lu_no_links" Type="0">Tm8gTGlua3M=</PHRASE>
<PHRASE Label="lu_added" Type="0">QWRkZWQ=</PHRASE>
<PHRASE Label="lu_cat" Type="0">Q2F0ZWdvcnk=</PHRASE>
<PHRASE Label="lu_date_created" Type="0">RGF0ZSBjcmVhdGVk</PHRASE>
<PHRASE Label="lu_edit" Type="0">TW9kaWZ5</PHRASE>
<PHRASE Label="lu_hits" Type="0">SGl0cw==</PHRASE>
<PHRASE Label="lu_no" Type="0">Tm8=</PHRASE>
<PHRASE Label="lu_rateit" Type="0">UmF0ZSBUaGlzIExpbms=</PHRASE>
<PHRASE Label="lu_rating" Type="0">UmF0aW5n</PHRASE>
<PHRASE Label="lu_reviews" Type="0">UmV2aWV3cw==</PHRASE>
<PHRASE Label="lu_votes" Type="0">Vm90ZXM=</PHRASE>
<PHRASE Label="lu_yes" Type="0">WWVz</PHRASE>
<PHRASE Label="lu_category" Type="0">Q2F0ZWdvcnk=</PHRASE>
<PHRASE Label="lu_button_ok" Type="0">T2s=</PHRASE>
<PHRASE Label="lu_button_rate" Type="0">UmF0ZQ==</PHRASE>
<PHRASE Label="lu_button_search" Type="0">U2VhcmNo</PHRASE>
<PHRASE Label="lu_cats" Type="0">Q2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="lu_links" Type="0">TGlua3M=</PHRASE>
<PHRASE Label="lu_total_links" Type="0">VG90YWwgbGlua3MgaW4gdGhlIGRhdGFiYXNl</PHRASE>
<PHRASE Label="lu_advanced_search" Type="0">QWR2YW5jZWQgU2VhcmNo</PHRASE>
<PHRASE Label="lu_login" Type="0">TG9naW4=</PHRASE>
<PHRASE Label="lu_not_logged_in" Type="0">Tm90IGxvZ2dlZCBpbg==</PHRASE>
<PHRASE Label="lu_password" Type="0">UGFzc3dvcmQ=</PHRASE>
<PHRASE Label="lu_register" Type="0">UmVnaXN0ZXI=</PHRASE>
<PHRASE Label="lu_search" Type="0">U2VhcmNo</PHRASE>
<PHRASE Label="lu_page_label" Type="0">UGFnZTo=</PHRASE>
<PHRASE Label="lu_related_cats" Type="0">UmVsYXRlZCBDYXRlZ29yaWVz</PHRASE>
<PHRASE Label="lu_del_favorites" Type="0">VGhlIGxpbmsgd2FzIHN1Y2Nlc3NmdWxseSByZW1vdmVkIGZyb20gIEZhdm9yaXRlcy4=</PHRASE>
<PHRASE Label="lu_subject" Type="0">U3ViamVjdA==</PHRASE>
<PHRASE Label="lu_directory" Type="0">RGlyZWN0b3J5</PHRASE>
<PHRASE Label="lu_forums" Type="0">Rm9ydW1z</PHRASE>
<PHRASE Label="lu_replies" Type="0">UmVwbGllcw==</PHRASE>
<PHRASE Label="lu_poster" Type="0">UG9zdGVy</PHRASE>
<PHRASE Label="lu_views" Type="0">Vmlld3M=</PHRASE>
<PHRASE Label="lu_news" Type="0">TmV3cw==</PHRASE>
<PHRASE Label="lu_posted" Type="0">UG9zdGVk</PHRASE>
<PHRASE Label="lu_author" Type="0">QXV0aG9y</PHRASE>
<PHRASE Label="lu_message_body" Type="0">TWVzc2FnZSBCb2R5</PHRASE>
<PHRASE Label="lu_edit_topic" Type="0">TW9kaWZ5IFRvcGlj</PHRASE>
<PHRASE Label="lu_options" Type="0">T3B0aW9ucw==</PHRASE>
<PHRASE Label="lu_see_also" Type="0">U2VlIEFsc28=</PHRASE>
<PHRASE Label="lu_add_link" Type="0">QWRkIExpbms=</PHRASE>
<PHRASE Label="lu_link_name" Type="0">TGluayBOYW1l</PHRASE>
<PHRASE Label="lu_button_join" Type="0">Sm9pbg==</PHRASE>
<PHRASE Label="lu_login_name" Type="0">TG9naW4gTmFtZQ==</PHRASE>
<PHRASE Label="lu_phone" Type="0">UGhvbmU=</PHRASE>
<PHRASE Label="lu_aol_im" Type="0">QU9MIElN</PHRASE>
<PHRASE Label="lu_street" Type="0">U3RyZWV0</PHRASE>
<PHRASE Label="lu_street2" Type="0">U3RyZWV0IDI=</PHRASE>
<PHRASE Label="lu_city" Type="0">Q2l0eQ==</PHRASE>
<PHRASE Label="lu_state" Type="0">U3RhdGU=</PHRASE>
<PHRASE Label="lu_zip" Type="0">Wmlw</PHRASE>
<PHRASE Label="lu_country" Type="0">Q291bnRyeQ==</PHRASE>
<PHRASE Label="lu_no_related_categories" Type="0">Tm8gUmVsYXRlZCBDYXRlZ29yaWVz</PHRASE>
<PHRASE Label="lu_end_on" Type="0">RW5kIE9u</PHRASE>
<PHRASE Label="lu_enabled" Type="0">RW5hYmxlZA==</PHRASE>
<PHRASE Label="lu_logout" Type="0">TG9nIE91dA==</PHRASE>
<PHRASE Label="lu_no_articles" Type="0">Tm8gQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="lu_date" Type="0">RGF0ZQ==</PHRASE>
<PHRASE Label="lu_more" Type="0">TW9yZQ==</PHRASE>
<PHRASE Label="lu_reply" Type="0">UmVwbHk=</PHRASE>
<PHRASE Label="lu_topics" Type="0">VG9waWNz</PHRASE>
<PHRASE Label="la_topic_sortoder_prompt" Type="1">T3JkZXIgdG9waWNzIGJ5</PHRASE>
<PHRASE Label="la_common_ascending" Type="1">QXNjZW5kaW5n</PHRASE>
<PHRASE Label="la_common_descending" Type="1">RGVzY2VuZGluZw==</PHRASE>
<PHRASE Label="la_topic_sortfield_pompt" Type="1">T3JkZXIgVG9waWNzIEJ5</PHRASE>
<PHRASE Label="la_topic_sortfield2_pompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_topic_sortoder2_prompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_topic_newdays_prompt" Type="1">TmV3IFRvcGljcyAoRGF5cyk=</PHRASE>
<PHRASE Label="la_topic_perpage_prompt" Type="1">TnVtYmVyIG9mIHRvcGljcyBwZXIgcGFnZQ==</PHRASE>
<PHRASE Label="la_topic_poststopop_prompt" Type="1">TWluaW11bSByYXRpbmcgZm9yIGEgdG9waWMgdG8gYmUgUE9Q</PHRASE>
<PHRASE Label="la_topic_votestohot_prompt" Type="1">TWF4aW11bSBudW1iZXIgb2YgSE9UIHRvcGljcw==</PHRASE>
<PHRASE Label="la_topic_editorpicksabove_prompt" Type="1">RGlzcGxheSBlZGl0b3IgcGlja3MgYWJvdmUgcmVndWxhciB0b3BpY3M=</PHRASE>
<PHRASE Label="la_posts_perpage_prompt" Type="1">TnVtYmVyIG9mIHBvc3RzIHBlciBwYWdl</PHRASE>
<PHRASE Label="la_posts_newdays_prompt" Type="1">TmV3IHBvc3RzIChkYXlzKQ==</PHRASE>
<PHRASE Label="la_title_Site_Structure" Type="1">U3RydWN0dXJlICYgRGF0YQ==</PHRASE>
<PHRASE Label="la_title_Browse" Type="1">Q2F0YWxvZw==</PHRASE>
<PHRASE Label="la_ToolTip_Up" Type="1">VXAgYSBDYXRlZ29yeQ==</PHRASE>
<PHRASE Label="la_SearchMenu_New" Type="1">TmV3IFNlYXJjaA==</PHRASE>
<PHRASE Label="la_SearchMenu_Clear" Type="1">Q2xlYXIgU2VhcmNo</PHRASE>
<PHRASE Label="la_SearchMenu_Categories" Type="1">Q2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_ItemTab_Categories" Type="1">Q2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_ItemTab_Topics" Type="1">VG9waWNz</PHRASE>
<PHRASE Label="la_ItemTab_Links" Type="1">TGlua3M=</PHRASE>
<PHRASE Label="la_ItemTab_News" Type="1">QXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_SearchLabel_Categories" Type="1">U2VhcmNoIENhdGVnb3JpZXM=</PHRASE>
<PHRASE Label="la_SearchLabel_Topics" Type="1">U2VhcmNoIFRvcGljcw==</PHRASE>
<PHRASE Label="la_SearchLabel_Links" Type="1">U2VhcmNoIExpbmtz</PHRASE>
<PHRASE Label="la_SearchLabel_News" Type="1">U2VhcmNoIEFydGljbGVz</PHRASE>
<PHRASE Label="la_PermTab_category" Type="1">Q2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_PermTab_link" Type="1">TGlua3M=</PHRASE>
<PHRASE Label="la_PermTab_topic" Type="1">VG9waWNz</PHRASE>
<PHRASE Label="la_PermTab_news" Type="1">QXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_tab_Relations" Type="1">UmVsYXRpb25z</PHRASE>
<PHRASE Label="la_Page" Type="1">UGFnZQ==</PHRASE>
<PHRASE Label="la_ToolTip_New_Relation" Type="1">TmV3IFJlbGF0aW9u</PHRASE>
<PHRASE Label="la_ToolTip_Edit" Type="1">RWRpdA==</PHRASE>
<PHRASE Label="la_ToolTip_Delete" Type="1">RGVsZXRl</PHRASE>
<PHRASE Label="la_ToolTip_Move_Up" Type="1">TW92ZSBVcA==</PHRASE>
<PHRASE Label="la_ToolTip_Move_Down" Type="1">TW92ZSBEb3du</PHRASE>
<PHRASE Label="la_tab_Category_RelationSelect" Type="1">U2VsZWN0IEl0ZW0=</PHRASE>
<PHRASE Label="la_ToolTip_Home" Type="1">SG9tZQ==</PHRASE>
<PHRASE Label="la_ToolTip_Select" Type="1">U2VsZWN0</PHRASE>
<PHRASE Label="la_ToolTip_Stop" Type="1">Q2FuY2Vs</PHRASE>
<PHRASE Label="la_Text_Editing" Type="1">RWRpdGluZw==</PHRASE>
<PHRASE Label="la_Text_Category" Type="1">Q2F0ZWdvcnk=</PHRASE>
<PHRASE Label="la_Text_to" Type="1">dG8=</PHRASE>
<PHRASE Label="la_tab_General" Type="1">R2VuZXJhbA==</PHRASE>
<PHRASE Label="la_tab_Images" Type="1">SW1hZ2Vz</PHRASE>
<PHRASE Label="la_Text_Image" Type="1">SW1hZ2U=</PHRASE>
<PHRASE Label="la_prompt_Name" Type="1">TmFtZQ==</PHRASE>
<PHRASE Label="la_ColHeader_Image" Type="1">SW1hZ2U=</PHRASE>
<PHRASE Label="la_ColHeader_AltValue" Type="1">QWx0IFZhbHVl</PHRASE>
<PHRASE Label="la_ColHeader_Url" Type="1">VVJM</PHRASE>
<PHRASE Label="la_ColHeader_Enabled" Type="1">U3RhdHVz</PHRASE>
<PHRASE Label="la_ColHeader_Preview" Type="1">UHJldmlldw==</PHRASE>
<PHRASE Label="la_text_Save" Type="1">U2F2ZQ==</PHRASE>
<PHRASE Label="la_Text_Full_Size_Image" Type="1">RnVsbCBTaXplIEltYWdl</PHRASE>
<PHRASE Label="la_Text_Size" Type="1">U2l6ZQ==</PHRASE>
<PHRASE Label="la_prompt_AltName" Type="1">QWx0IHZhbHVl</PHRASE>
<PHRASE Label="la_prompt_Enabled" Type="1">RW5hYmxlZA==</PHRASE>
<PHRASE Label="la_prompt_Default" Type="1">RGVmYXVsdA==</PHRASE>
<PHRASE Label="la_prompt_Location" Type="1">TG9jYXRpb24=</PHRASE>
<PHRASE Label="la_prompt_ThumbURL" Type="1">UmVtb3RlIFVSTA==</PHRASE>
<PHRASE Label="la_text_Same" Type="1">U2FtZQ==</PHRASE>
<PHRASE Label="la_text_As" Type="1">YXM=</PHRASE>
<PHRASE Label="la_text_Thumbnail" Type="1">VGh1bWJuYWls</PHRASE>
<PHRASE Label="la_prompt_URL" Type="1">VVJM</PHRASE>
<PHRASE Label="la_tab_Browse" Type="1">Q2F0YWxvZw==</PHRASE>
<PHRASE Label="la_Save" Type="1">U2F2ZQ==</PHRASE>
<PHRASE Label="la_prompt_CreatedOn" Type="1">Q3JlYXRlZCBvbg==</PHRASE>
<PHRASE Label="la_prompt_Description" Type="1">RGVzY3JpcHRpb24=</PHRASE>
<PHRASE Label="la_prompt_Pending" Type="1">UGVuZGluZw==</PHRASE>
<PHRASE Label="la_prompt_Visible" Type="1">VmlzaWJsZQ==</PHRASE>
<PHRASE Label="la_prompt_MetaKeywords" Type="1">TWV0YSBLZXl3b3Jkcw==</PHRASE>
<PHRASE Label="la_prompt_MetaDescription" Type="1">TWV0YSBEZXNjcmlwdGlvbg==</PHRASE>
<PHRASE Label="la_Sectionheader_MetaInformation" Type="1">TUVUQSBJbmZvcm1hdGlvbg==</PHRASE>
<PHRASE Label="la_prompt_Enable_HTML" Type="1">RW5hYmxlIEhUTUw/</PHRASE>
<PHRASE Label="la_Warning_Enable_HTML" Type="1">V2FybmluZzogRW5hYmxpbmcgSFRNTCBpcyBhIHNlY3VyaXR5IHJpc2sgYW5kIGNvdWxkIGRhbWFnZSB0aGUgc3lzdGVtIGlmIHVzZWQgaW1wcm9wZXJseSE=</PHRASE>
<PHRASE Label="la_ColHeader_FieldName" Type="1">RmllbGQgTmFtZQ==</PHRASE>
<PHRASE Label="la_ColHeader_FieldLabel" Type="1">TGFiZWw=</PHRASE>
<PHRASE Label="la_ColHeader_Value" Type="1">VmFsdWU=</PHRASE>
<PHRASE Label="la_tab_Custom" Type="1">Q3VzdG9t</PHRASE>
<PHRASE Label="la_tab_GroupSelect" Type="1">U2VsZWN0IEdyb3Vw</PHRASE>
<PHRASE Label="la_tab_Permissions" Type="1">UGVybWlzc2lvbnM=</PHRASE>
<PHRASE Label="la_text_for" Type="1">Zm9y</PHRASE>
<PHRASE Label="la_text_Permission" Type="1">UGVybWlzc2lvbg==</PHRASE>
<PHRASE Label="la_ColHeader_PermInherited" Type="1">SW5oZXJpdGVk</PHRASE>
<PHRASE Label="la_ColHeader_PermAccess" Type="1">QWNjZXNz</PHRASE>
<PHRASE Label="la_Colheader_GroupType" Type="1">VHlwZQ==</PHRASE>
<PHRASE Label="la_Cancel" Type="1">Q2FuY2Vs</PHRASE>
<PHRASE Label="la_prompt_CategoryId" Type="1">Q2F0ZWdvcnkgSUQ=</PHRASE>
<PHRASE Label="la_prompt_ImageId" Type="1">SW1hZ2UgSUQ=</PHRASE>
<PHRASE Label="la_prompt_Priority" Type="1">UHJpb3JpdHk=</PHRASE>
<PHRASE Label="la_prompt_RelationId" Type="1">UmVsYXRpb24gSUQ=</PHRASE>
<PHRASE Label="la_Text_Topic" Type="1">VG9waWM=</PHRASE>
<PHRASE Label="la_title_Edit_Topic" Type="1">U2l0ZSBTdHJ1Y3R1cmU=</PHRASE>
<PHRASE Label="la_title_Edit_Article" Type="1">U2l0ZSBTdHJ1Y3R1cmU=</PHRASE>
<PHRASE Label="la_Text_Article" Type="1">QXJ0aWNsZQ==</PHRASE>
<PHRASE Label="la_tab_Reviews" Type="1">UmV2aWV3cw==</PHRASE>
<PHRASE Label="la_Text_Link" Type="1">TGluaw==</PHRASE>
<PHRASE Label="la_title_Edit_Link" Type="1">U2l0ZSBTdHJ1Y3R1cmU=</PHRASE>
<PHRASE Label="la_ToolTip_New_Image" Type="1">TmV3IEltYWdl</PHRASE>
<PHRASE Label="la_prompt_Rating" Type="1">UmF0aW5n</PHRASE>
<PHRASE Label="la_prompt_Votes" Type="1">Vm90ZXM=</PHRASE>
<PHRASE Label="la_prompt_Hits" Type="1">SGl0cw==</PHRASE>
<PHRASE Label="la_Text_Counters" Type="1">Q291bnRlcnM=</PHRASE>
<PHRASE Label="la_prompt_DateFormat" Type="1">KG1tLWRkLXl5eXkp</PHRASE>
<PHRASE Label="la_prompt_RatingLimits" Type="1">KE1pbmltdW0gMCwgTWF4aW11bSA1KQ==</PHRASE>
<PHRASE Label="la_prompt_VoteLimits" Type="1">KE1pbmltdW0gMSk=</PHRASE>
<PHRASE Label="la_prompt_HitLimits" Type="1">KE1pbmltdW0gNCk=</PHRASE>
<PHRASE Label="la_prompt_AutoGen_Excerpt" Type="1">R2VuZXJhdGUgZnJvbSB0aGUgYXJ0aWNsZSBib2R5</PHRASE>
<PHRASE Label="la_Prompt_Title" Type="1">VGl0bGU=</PHRASE>
<PHRASE Label="la_prompt_Author" Type="1">QXV0aG9y</PHRASE>
<PHRASE Label="la_prompt_ArticleBody" Type="1">QXJ0aWNsZSBCb2R5</PHRASE>
<PHRASE Label="la_Text_Editor" Type="1">RWRpdG9y</PHRASE>
<PHRASE Label="la_prompt_ArticleExcerpt!" Type="1">QXJ0aWNsZSBFeGNlcnB0</PHRASE>
<PHRASE Label="la_prompt_FrontLead" Type="1">RnJvbnQgcGFnZSBsZWFkIGFydGljbGU=</PHRASE>
<PHRASE Label="la_prompt_LeadCat" Type="1">Q2F0ZWdvcnkgbGVhZCBhcnRpY2xl</PHRASE>
<PHRASE Label="la_prompt_Archived" Type="1">QXJjaGl2ZWQ=</PHRASE>
<PHRASE Label="la_prompt_ArchiveDate" Type="1">QXJjaGl2YXRpb24gRGF0ZQ==</PHRASE>
<PHRASE Label="la_prompt_ArticleExcerpt" Type="1">QXJ0aWNsZSBFeGNlcnB0</PHRASE>
<PHRASE Label="la_tab_Categories" Type="1">Q2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_ColHeader_Topic" Type="1">VG9waWM=</PHRASE>
<PHRASE Label="la_ColHeader_Poster" Type="1">UG9zdGVy</PHRASE>
<PHRASE Label="la_ColHeader_Date" Type="1">RGF0ZS9UaW1l</PHRASE>
<PHRASE Label="la_ColHeader_Reply" Type="1">UmVwbGllcw==</PHRASE>
<PHRASE Label="la_ColHeader_Views" Type="1">Vmlld3M=</PHRASE>
<PHRASE Label="la_title_Community" Type="1">Q29tbXVuaXR5</PHRASE>
<PHRASE Label="la_title_Settings" Type="1">TW9kdWxlcyAmIFNldHRpbmdz</PHRASE>
<PHRASE Label="la_title_Reports" Type="1">U3VtbWFyeSAmIExvZ3M=</PHRASE>
<PHRASE Label="la_title_Sys_Config" Type="1">Q29uZmlndXJhdGlvbg==</PHRASE>
<PHRASE Label="la_title_Tools" Type="1">VG9vbHM=</PHRASE>
<PHRASE Label="la_title_Help" Type="1">SGVscA==</PHRASE>
<PHRASE Label="la_tab_User_List" Type="1">VXNlcnM=</PHRASE>
<PHRASE Label="la_tab_Search_Users" Type="1">U2VhcmNoIFVzZXJz</PHRASE>
<PHRASE Label="la_tab_Search_Groups" Type="1">U2VhcmNoIEdyb3Vwcw==</PHRASE>
<PHRASE Label="la_tab_Mail_List" Type="1">TWFpbCBMaXN0</PHRASE>
<PHRASE Label="la_tab_User_Groups" Type="1">R3JvdXBz</PHRASE>
<PHRASE Label="la_title_In-Bulletin" Type="1">SW4tYnVsbGV0aW4=</PHRASE>
<PHRASE Label="la_tab_ConfigOutput" Type="1">T3V0cHV0IFNldHRpbmdz</PHRASE>
<PHRASE Label="la_tab_ConfigSearch" Type="1">U2VhcmNoIFNldHRpbmdz</PHRASE>
<PHRASE Label="la_tab_ConfigCensorship" Type="1">Q2Vuc29yc2hpcA==</PHRASE>
<PHRASE Label="la_title_Censorship" Type="1">Q2Vuc29yc2hpcA==</PHRASE>
<PHRASE Label="la_Text_Topics" Type="1">VG9waWNz</PHRASE>
<PHRASE Label="la_tab_Stats" Type="1">U3RhdGlzdGljcw==</PHRASE>
<PHRASE Label="la_tab_SearchLog" Type="1">U2VhcmNoIExvZw==</PHRASE>
<PHRASE Label="la_tab_Themes" Type="1">VGhlbWVz</PHRASE>
<PHRASE Label="la_tab_Regional" Type="1">UmVnaW9uYWw=</PHRASE>
<PHRASE Label="la_tab_Backup" Type="1">QmFja3Vw</PHRASE>
<PHRASE Label="la_tab_Restore" Type="1">UmVzdG9yZQ==</PHRASE>
<PHRASE Label="la_tab_ExportData" Type="1">RXhwb3J0IERhdGE=</PHRASE>
<PHRASE Label="la_tab_ImportData" Type="1">SW1wb3J0IERhdGE=</PHRASE>
<PHRASE Label="la_tab_Overview" Type="1">T3ZlcnZpZXc=</PHRASE>
<PHRASE Label="la_tab_ConfigSmileys" Type="1">U21pbGV5cw==</PHRASE>
<PHRASE Label="la_ToolTip_New_Category" Type="1">TmV3IENhdGVnb3J5</PHRASE>
<PHRASE Label="la_MenuTreeTitle" Type="1">TWFpbiBNZW51</PHRASE>
<PHRASE Label="la_ToolTip_Approve" Type="1">QXBwcm92ZQ==</PHRASE>
<PHRASE Label="la_ToolTip_Decline" Type="1">RGVjbGluZQ==</PHRASE>
<PHRASE Label="la_ToolTip_Cut" Type="1">Q3V0</PHRASE>
<PHRASE Label="la_ToolTip_Copy" Type="1">Q29weQ==</PHRASE>
<PHRASE Label="la_ToolTip_Paste" Type="1">UGFzdGU=</PHRASE>
<PHRASE Label="la_ToolTip_Print" Type="1">UHJpbnQ=</PHRASE>
<PHRASE Label="la_ToolTip_View" Type="1">Vmlldw==</PHRASE>
<PHRASE Label="la_Text_Filter" Type="1">RmlsdGVy</PHRASE>
<PHRASE Label="la_Text_Sort" Type="1">U29ydA==</PHRASE>
<PHRASE Label="la_Text_Select" Type="1">U2VsZWN0</PHRASE>
<PHRASE Label="la_SearchLabel" Type="1">U2VhcmNo</PHRASE>
<PHRASE Label="la_Text_All" Type="1">QWxs</PHRASE>
<PHRASE Label="la_Text_New" Type="1">TmV3</PHRASE>
<PHRASE Label="la_Text_Pop" Type="1">UG9wdWxhcg==</PHRASE>
<PHRASE Label="la_Text_Hot" Type="1">SG90</PHRASE>
<PHRASE Label="la_Text_Pending" Type="1">UGVuZGluZw==</PHRASE>
<PHRASE Label="la_Text_Disabled" Type="1">RGlzYWJsZWQ=</PHRASE>
<PHRASE Label="la_Text_Default" Type="1">RGVmYXVsdA==</PHRASE>
<PHRASE Label="la_Text_Unselect" Type="1">VW5zZWxlY3Q=</PHRASE>
<PHRASE Label="la_Text_Invert" Type="1">SW52ZXJ0</PHRASE>
<PHRASE Label="la_ToolTip_Search" Type="1">U2VhcmNo</PHRASE>
<PHRASE Label="la_prompt_SubSearch" Type="1">U3ViIFNlYXJjaA==</PHRASE>
<PHRASE Label="la_Text_Within" Type="1">V2l0aGlu</PHRASE>
<PHRASE Label="la_Text_Current" Type="1">Q3VycmVudA==</PHRASE>
<PHRASE Label="la_prompt_InlinkSqlType" Type="1">SW4tTGluayBTUUwgVHlwZQ==</PHRASE>
<PHRASE Label="la_prompt_InlinkServer" Type="1">SW4tTGluayBTZXJ2ZXIgTmFtZQ==</PHRASE>
<PHRASE Label="la_prompt_InlinkDbName" Type="1">SW4tTGluayBEYXRhYmFzZSBOYW1l</PHRASE>
<PHRASE Label="la_prompt_InlinkDbUsername" Type="1">SW4tTGluayBEYXRhYmFzZSBVc2VybmFtZQ==</PHRASE>
<PHRASE Label="la_prompt_InlinkDbPass" Type="1">SW4tTGluayBEYXRhYmFzZSBQYXNzd29yZA==</PHRASE>
<PHRASE Label="la_prompt_RegUserId" Type="1">UmVndWxhciBVc2VyIEdyb3Vw</PHRASE>
<PHRASE Label="la_prompt_InitImportCat" Type="1">SW5pdGlhbCBJbXBvcnQgQ2F0ZWdvcnk=</PHRASE>
<PHRASE Label="la_prompt_RegUsers" Type="1">TGluayBwZXJtaXNzaW9uIElEIGZvciBhbGwgcmVnaXN0ZXJlZCB1c2VycyB0byB2aWV3IGl0</PHRASE>
<PHRASE Label="la_prompt_NotRegUsers" Type="1">TGluayBwZXJtaXNzaW9uIElEIGZvciBhbGwgdW5yZWdpc3RlcmVkIHVzZXJzIHRvIHZpZXcgaXQ=</PHRASE>
<PHRASE Label="la_title_ImportData" Type="1">SW1wb3J0IERhdGE=</PHRASE>
<PHRASE Label="la_tab_ConfigE-mail" Type="1">RS1tYWlsIFNldHRpbmdz</PHRASE>
<PHRASE Label="la_tab_ConfigCustom" Type="1">Q3VzdG9tIEZpZWxkcw==</PHRASE>
<PHRASE Label="la_title_Backup" Type="1">QmFja3Vw</PHRASE>
<PHRASE Label="la_title_Restore" Type="1">UmVzdG9yZQ==</PHRASE>
<PHRASE Label="la_title_ExportData" Type="1">RXhwb3J0IERhdGE=</PHRASE>
<PHRASE Label="la_title_SearchLog" Type="1">U2VhcmNoIExvZw==</PHRASE>
<PHRASE Label="la_validation_AlertMsg" Type="1">UGxlYXNlIGNoZWNrIHRoZSByZXF1aXJlZCBmaWVsZHMgYW5kIHRyeSBhZ2FpbiE=</PHRASE>
<PHRASE Label="la_val_RequiredField" Type="1">UmVxdWlyZWQgRmllbGQ=</PHRASE>
<PHRASE Label="la_Tab_Search" Type="1">U2VhcmNo</PHRASE>
<PHRASE Label="la_Text_Edit" Type="1">RWRpdA==</PHRASE>
<PHRASE Label="la_Text_Delete" Type="1">RGVsZXRl</PHRASE>
<PHRASE Label="lu_btn_NewLink" Type="0">TmV3IExpbms=</PHRASE>
<PHRASE Label="lu_btn_NewArticle" Type="0">TmV3IEFydGljbGU=</PHRASE>
<PHRASE Label="la_Text_Users" Type="1">VXNlcnM=</PHRASE>
<PHRASE Label="la_prompt_Username" Type="1">VXNlcm5hbWU=</PHRASE>
<PHRASE Label="la_prompt_Last_Name" Type="1">TGFzdCBOYW1l</PHRASE>
<PHRASE Label="la_prompt_First_Name" Type="1">Rmlyc3QgTmFtZQ==</PHRASE>
<PHRASE Label="la_prompt_Email" Type="1">RW1haWw=</PHRASE>
<PHRASE Label="la_prompt_PrimaryGroup" Type="1">UHJpbWFyeSBHcm91cA==</PHRASE>
<PHRASE Label="la_prompt_GroupName" Type="1">R3JvdXAgTmFtZQ==</PHRASE>
<PHRASE Label="la_prompt_UserCount" Type="1">VXNlciBDb3VudA==</PHRASE>
<PHRASE Label="la_prompt_Search" Type="1">U2VhcmNo</PHRASE>
<PHRASE Label="la_ToolTip_New_User" Type="1">TmV3IFVzZXI=</PHRASE>
<PHRASE Label="la_ToolTip_Deny" Type="1">RGVueQ==</PHRASE>
<PHRASE Label="la_Text_Valid" Type="1">VmFsaWQ=</PHRASE>
<PHRASE Label="la_prompt_LastName" Type="1">TGFzdCBOYW1l</PHRASE>
<PHRASE Label="la_prompt_FirstName" Type="1">Rmlyc3QgTmFtZQ==</PHRASE>
<PHRASE Label="la_title_Edit_User" Type="1">RWRpdCBVc2Vy</PHRASE>
<PHRASE Label="la_Text_User" Type="1">VXNlcg==</PHRASE>
<PHRASE Label="la_tab_Groups" Type="1">R3JvdXBz</PHRASE>
<PHRASE Label="la_prompt_Usermame" Type="1">VXNlcm5hbWU=</PHRASE>
<PHRASE Label="la_prompt_Password" Type="1">UGFzc3dvcmQ=</PHRASE>
<PHRASE Label="la_prompt_PasswordRepeat" Type="1">UmVwZWF0IFBhc3N3b3Jk</PHRASE>
<PHRASE Label="la_prompt_Phone" Type="1">UGhvbmU=</PHRASE>
<PHRASE Label="la_prompt_Street" Type="1">U3RyZWV0</PHRASE>
<PHRASE Label="la_prompt_City" Type="1">Q2l0eQ==</PHRASE>
<PHRASE Label="la_prompt_State" Type="1">U3RhdGU=</PHRASE>
<PHRASE Label="la_prompt_Zip" Type="1">Wmlw</PHRASE>
<PHRASE Label="la_prompt_Country" Type="1">Q291bnRyeQ==</PHRASE>
<PHRASE Label="la_prompt_PersonalInfo" Type="1">UGVyc29uYWwgSW5mb3JtYXRpb24=</PHRASE>
<PHRASE Label="la_prompt_Properties" Type="1">UHJvcGVydGllcw==</PHRASE>
<PHRASE Label="la_ToolTip_NewGroup" Type="1">TmV3IEdyb3Vw</PHRASE>
<PHRASE Label="la_prompt_SimpleSearch" Type="1">U2ltcGxlIFNlYXJjaA==</PHRASE>
<PHRASE Label="la_prompt_Comments" Type="1">Q29tbWVudHM=</PHRASE>
<PHRASE Label="la_Text_Group" Type="1">R3JvdXA=</PHRASE>
<PHRASE Label="la_title_Edit_Group" Type="1">RWRpdCBHcm91cA==</PHRASE>
<PHRASE Label="la_tab_Users" Type="1">VXNlcnM=</PHRASE>
<PHRASE Label="la_val_Username" Type="1">SW52YWxpZCBVc2VybmFtZQ==</PHRASE>
<PHRASE Label="la_val_Password" Type="1">SW52YWxpZCBQYXNzd29yZA==</PHRASE>
<PHRASE Label="la_Text_CustomFields" Type="1">Q3VzdG9tIEZpZWxkcw==</PHRASE>
<PHRASE Label="la_prompt_AdvancedSearch" Type="1">QWR2YW5jZWQgU2VhcmNo</PHRASE>
<PHRASE Label="la_Text_PostBody" Type="1">UG9zdCBCb2R5</PHRASE>
<PHRASE Label="la_Text_Posts" Type="1">UG9zdHM=</PHRASE>
<PHRASE Label="lu_add_review" Type="0">QWRkIFJldmlldw==</PHRASE>
<PHRASE Label="la_Text_Censorship" Type="1">Q2Vuc29yc2hpcA==</PHRASE>
<PHRASE Label="la_ColHeader_BadWord" Type="1">Q2Vuc29yZWQgV29yZA==</PHRASE>
<PHRASE Label="la_ColHeader_Replacement" Type="1">UmVwbGFjZW1lbnQ=</PHRASE>
<PHRASE Label="la_ToolTip_New_CensorWord" Type="1">TmV3IENlbnNvciBXb3Jk</PHRASE>
<PHRASE Label="la_Text_Emoticons" Type="1">RW1vdGlvbiBJY29ucw==</PHRASE>
<PHRASE Label="la_prompt_KeyStroke" Type="1">S2V5IFN0cm9rZQ==</PHRASE>
<PHRASE Label="la_prompt_Image" Type="1">SW1hZ2U=</PHRASE>
<PHRASE Label="la_ToolTip_New_Emoticon" Type="1">TmV3IEVtb3Rpb24gSWNvbg==</PHRASE>
<PHRASE Label="la_Text_Smiley" Type="1">U21pbGV5</PHRASE>
<PHRASE Label="la_prompt_EmoticonId" Type="1">RW1vdGlvbiBJZA==</PHRASE>
<PHRASE Label="la_Text_Upload" Type="1">VXBsb2Fk</PHRASE>
<PHRASE Label="lu_home" Type="0">SG9tZQ==</PHRASE>
<PHRASE Label="la_ToolTip_New_CustomField" Type="1">TmV3IEN1c3RvbSBGaWVsZA==</PHRASE>
<PHRASE Label="la_tab_Censorship" Type="1">Q2Vuc29yc2hpcA==</PHRASE>
<PHRASE Label="la_prompt_CensorhipId" Type="1">Q2Vuc29yc2hpcCBJZA==</PHRASE>
<PHRASE Label="la_prompt_CensorWord" Type="1">Q2Vuc29yc2hpcCBXb3Jk</PHRASE>
<PHRASE Label="la_prompt_ReplacementWord" Type="1">UmVwbGFjZW1lbnQgV29yZA==</PHRASE>
<PHRASE Label="lu_suggest_category" Type="0">U3VnZ2VzdCBDYXRlZ29yeQ==</PHRASE>
<PHRASE Label="lu_my_profile" Type="0">TXkgUHJvZmlsZQ==</PHRASE>
<PHRASE Label="lu_add_to_favorites" Type="0">QWRkIHRvIEZhdm9yaXRlcw==</PHRASE>
<PHRASE Label="lu_suggest_link" Type="0">U3VnZ2VzdCBMaW5r</PHRASE>
<PHRASE Label="la_tab_Site_Structure" Type="1">U3RydWN0dXJlICYgRGF0YQ==</PHRASE>
<PHRASE Label="la_tab_Community" Type="1">Q29tbXVuaXR5</PHRASE>
<PHRASE Label="la_tab_ModulesSettings" Type="1">TW9kdWxlcyAmIFNldHRpbmdz</PHRASE>
<PHRASE Label="la_tab_Sys_Config" Type="1">Q29uZmlndXJhdGlvbg==</PHRASE>
<PHRASE Label="la_tab_Tools" Type="1">VG9vbHM=</PHRASE>
<PHRASE Label="la_tab_Help" Type="1">SGVscA==</PHRASE>
<PHRASE Label="la_ToolTip_Next" Type="1">TmV4dA==</PHRASE>
<PHRASE Label="la_ToolTip_Previous" Type="1">UHJldmlvdXM=</PHRASE>
<PHRASE Label="la_tab_Category_Select" Type="1">Q2F0ZWdvcnkgU2VsZWN0</PHRASE>
<PHRASE Label="la_prompt_ReviewText" Type="1">UmV2aWV3IFRleHQ=</PHRASE>
<PHRASE Label="la_Prompt_ReviewedBy" Type="1">UmV2aWV3ZWQgQnk=</PHRASE>
<PHRASE Label="la_prompt_NotifyOwner" Type="1">Tm90aWZ5IE93bmVy</PHRASE>
<PHRASE Label="la_prompt_CreatedOn_Time" Type="1">Q3JlYXRlZCBhdA==</PHRASE>
<PHRASE Label="la_prompt_ModifedOn" Type="1">TW9kaWZpZWQgT24=</PHRASE>
<PHRASE Label="la_prompt_ModifedOn_Time" Type="1">TW9kaWZpZWQgYXQ=</PHRASE>
<PHRASE Label="la_prompt_TimeFormat" Type="1">KGhoOm1tOnNzKQ==</PHRASE>
<PHRASE Label="la_ToolTip_New_Review" Type="1">TmV3IFJldmlldw==</PHRASE>
<PHRASE Label="la_ColHeader_Item" Type="1">SXRlbQ==</PHRASE>
<PHRASE Label="la_ColHeader_ItemType" Type="1">SXRlbSBUeXBl</PHRASE>
<PHRASE Label="la_prompt_RelationType" Type="1">UmVsYXRpb24gVHlwZQ==</PHRASE>
<PHRASE Label="la_prompt_Status" Type="1">U3RhdHVz</PHRASE>
<PHRASE Label="la_Text_OneWay" Type="1">T25lIFdheQ==</PHRASE>
<PHRASE Label="la_Text_Enabled" Type="1">RW5hYmxlZA==</PHRASE>
<PHRASE Label="la_topic_sortfield_prompt" Type="1">U29ydCB0b3BpY3MgYnk=</PHRASE>
<PHRASE Label="la_topic_sortfield2_prompt!" Type="1">YW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_Text_NewCensorWord" Type="1">TmV3IENlbnNvciBXb3Jk</PHRASE>
<PHRASE Label="la_Text_CustomField" Type="1">Q3VzdG9tIEZpZWxk</PHRASE>
<PHRASE Label="la_Text_DataType_3" Type="1">cG9zdA==</PHRASE>
<PHRASE Label="la_Text_NewField" Type="1">TmV3IEZpZWxk</PHRASE>
<PHRASE Label="la_prompt_FieldId" Type="1">RmllbGQgSWQ=</PHRASE>
<PHRASE Label="la_prompt_FieldName" Type="1">RmllbGQgTmFtZQ==</PHRASE>
<PHRASE Label="la_prompt_FieldLabel" Type="1">RmllbGQgTGFiZWw=</PHRASE>
<PHRASE Label="la_Text_DataType_2" Type="1">RGF0YSBUeXBlIDI=</PHRASE>
<PHRASE Label="la_topic_sortfield2_prompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_ToolTip_SendMail" Type="1">U2VuZCBFLW1haWw=</PHRASE>
<PHRASE Label="la_prompt_ReviewId" Type="1">UmV2aWV3IElE</PHRASE>
<PHRASE Label="la_prompt_CreatedBy" Type="1">Q3JlYXRlZCBieQ==</PHRASE>
<PHRASE Label="la_Text_Reciprocal" Type="1">UmVjaXByb2NhbA==</PHRASE>
<PHRASE Label="la_SampleText" Type="1">U0FNUExFIFRFWFQ=</PHRASE>
<PHRASE Label="la_Text_General" Type="1">R2VuZXJhbA==</PHRASE>
<PHRASE Label="la_category_sortfield_prompt" Type="1">T3JkZXIgY2F0ZWdvcmllcyBieQ==</PHRASE>
<PHRASE Label="la_category_sortfield2_prompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_category_perpage_prompt" Type="1">TnVtYmVyIG9mIGNhdGVnb3JpZXMgcGVyIHBhZ2U=</PHRASE>
<PHRASE Label="la_category_daysnew_prompt" Type="1">TnVtYmVyIG9mIGRheXMgZm9yIGEgY2F0LiB0byBiZSBORVc=</PHRASE>
<PHRASE Label="la_category_showpick_prompt" Type="1">RGlzcGxheSBlZGl0b3IgUElDS3MgYWJvdmUgcmVndWxhciBjYXRlZ29yaWVz</PHRASE>
<PHRASE Label="la_Text_MetaInfo" Type="1">RGVmYXVsdCBNRVRBIGtleXdvcmRz</PHRASE>
<PHRASE Label="la_category_metakey" Type="1">RGVmYXVsdCBNRVRBIEtleXdvcmRz</PHRASE>
<PHRASE Label="la_category_metadesc" Type="1">RGVmYXVsdCBNRVRBIGRlc2NyaXB0aW9u</PHRASE>
<PHRASE Label="la_Text_Articles" Type="1">QXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_news_sortfield_pompt" Type="1">T3JkZXIgYXJ0aWNsZXMgYnk=</PHRASE>
<PHRASE Label="la_news_sortfield2_pompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_news_perpage_prompt" Type="1">TnVtYmVyIG9mIGFydGljbGVzIHBlciBwYWdl</PHRASE>
<PHRASE Label="la_news_newdays_prompt" Type="1">TnVtYmVyIG9mIGRheXMgZm9yIGEgYXJ0aWNsZSB0byBiZSBORVc=</PHRASE>
<PHRASE Label="la_news_newstopminrating_prompt" Type="1">TWluaW11bSByYXRpbmcgZm9yIGFuIGFydGljbGUgdG8gYmUgUE9Q</PHRASE>
<PHRASE Label="la_news_votestohot_prompt" Type="1">TWF4aW11bSBudW1iZXIgb2YgSE9UIGFydGljbGVz</PHRASE>
<PHRASE Label="la_news_editorpicksabove_prompt" Type="1">RGlzcGxheSBlZGl0b3IgUElDS3MgYWJvdmUgcmVndWxhciBhcnRpY2xlcw==</PHRASE>
<PHRASE Label="la_news_daysarchive_prompt" Type="1">TnVtYmVyIG9mIGRheXMgdG8gYXJjaGl2ZSBhcnRpY2xlcyBhdXRvbWF0aWNhbGx5</PHRASE>
<PHRASE Label="la_Text_Reviews" Type="1">UmV2aWV3cw==</PHRASE>
<PHRASE Label="la_news_sortreviews_prompt" Type="1">U29ydCByZXZpZXdzIGJ5</PHRASE>
<PHRASE Label="la_news_sortreviews2_prompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_Text_Links" Type="1">TGlua3M=</PHRASE>
<PHRASE Label="la_link_sortfield_prompt" Type="1">T3JkZXIgbGlua3MgYnk=</PHRASE>
<PHRASE Label="la_sortfield2_prompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_link_perpage_prompt" Type="1">TnVtYmVyIG9mIGxpbmtzIHBlciBwYWdl</PHRASE>
<PHRASE Label="la_link_newdays_prompt" Type="1">TnVtYmVyIG9mIGRheXMgZm9yIGEgbGluayB0byBiZSBORVc=</PHRASE>
<PHRASE Label="la_link_newstopminrating_prompt" Type="1">TWluaW11bSByYXRpbmcgZm9yIGEgbGluayB0byBiZSBQT1A=</PHRASE>
<PHRASE Label="la_link_editorspick_prompt" Type="1">RGlzcGxheSBlZGl0b3IgUElDS3MgYWJvdmUgcmVndWxhciBsaW5rcw==</PHRASE>
<PHRASE Label="la_link_urlstatus_prompt" Type="1">RGlzcGxheSBsaW5rIFVSTCBpbiBzdGF0dXMgYmFy</PHRASE>
<PHRASE Label="la_link_sortreviews_prompt" Type="1">U29ydCByZXZpZXdzIGJ5</PHRASE>
<PHRASE Label="la_link_sortreviews2_prompt" Type="1">YW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_Category_Name" Type="1">Q2F0ZWdvcnkgTmFtZQ==</PHRASE>
<PHRASE Label="la_Category_Description" Type="1">Q2F0ZWdvcnkgRGVzY3JpcHRpb24=</PHRASE>
<PHRASE Label="la_Article_Title" Type="1">QXJ0aWNsZSBUaXRsZQ==</PHRASE>
<PHRASE Label="la_Article_Excerpt" Type="1">QXJ0aWNsZSBFeGNlcnB0</PHRASE>
<PHRASE Label="la_Link_Name" Type="1">TGluayBOYW1l</PHRASE>
<PHRASE Label="la_Link_Description" Type="1">TGluayBEZXNjcmlwdGlvbg==</PHRASE>
<PHRASE Label="la_Topic_Text" Type="1">VG9waWMgVGV4dA==</PHRASE>
<PHRASE Label="la_Number_of_Posts" Type="1">TnVtYmVyIG9mIFBvc3Rz</PHRASE>
<PHRASE Label="la_ColHeader_Status" Type="1">U3RhdHVz</PHRASE>
<PHRASE Label="la_Text_Configuration" Type="1">Q29uZmlndXJhdGlvbg==</PHRASE>
<PHRASE Label="la_Text_Theme" Type="1">VGhlbWU=</PHRASE>
<PHRASE Label="la_title_General_Configuration" Type="1">R2VuZXJhbCBDb25maWd1cmF0aW9u</PHRASE>
<PHRASE Label="la_Text_NewTheme" Type="1">TmV3IFRoZW1l</PHRASE>
<PHRASE Label="la_prompt_ThemeId" Type="1">VGhlbWUgSWQ=</PHRASE>
<PHRASE Label="la_prompt_Primary" Type="1">UHJpbWFyeQ==</PHRASE>
<PHRASE Label="la_tab_Reports" Type="1">U3VtbWFyeSAmIExvZ3M=</PHRASE>
<PHRASE Label="la_tab_Summary" Type="1">U3VtbWFyeQ==</PHRASE>
<PHRASE Label="la_tab_SessionLog" Type="1">U2Vzc2lvbiBMb2c=</PHRASE>
<PHRASE Label="la_Text_Settings" Type="1">U2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_prompt_PackName" Type="1">UGFjayBOYW1l</PHRASE>
<PHRASE Label="la_Text_Pack" Type="1">UGFjaw==</PHRASE>
<PHRASE Label="la_prompt_LocalName" Type="1">TG9jYWwgTmFtZQ==</PHRASE>
<PHRASE Label="la_prompt_LanguageId" Type="1">TGFuZ3VhZ2UgSWQ=</PHRASE>
<PHRASE Label="la_tab_Labels" Type="1">TGFiZWxz</PHRASE>
<PHRASE Label="la_tab_Templates" Type="1">VGVtcGxhdGVz</PHRASE>
<PHRASE Label="la_common_CreatedOn" Type="1">RGF0ZQ==</PHRASE>
<PHRASE Label="la_common_ReviewText" Type="1">UmV2aWV3IFRleHQ=</PHRASE>
<PHRASE Label="la_Topic_Pick" Type="1">UGljaw==</PHRASE>
<PHRASE Label="la_Topic_Views" Type="1">Vmlld3M=</PHRASE>
<PHRASE Label="la_link_sortfield2_prompt" Type="1">QW5kIHRoZW4gYnk=</PHRASE>
<PHRASE Label="la_Link_URL" Type="1">VVJM</PHRASE>
<PHRASE Label="la_Link_Date" Type="1">RGF0ZQ==</PHRASE>
<PHRASE Label="la_Link_Hits" Type="1">SGl0cw==</PHRASE>
<PHRASE Label="la_Link_Rating" Type="1">UmF0aW5n</PHRASE>
<PHRASE Label="la_Text_DataType_4" Type="1">bGlua3M=</PHRASE>
<PHRASE Label="la_Article_Author" Type="1">QXV0aG9y</PHRASE>
<PHRASE Label="la_Article_Date" Type="1">RGF0ZQ==</PHRASE>
<PHRASE Label="la_Article_Hits" Type="1">SGl0cw==</PHRASE>
<PHRASE Label="la_Article_Rating" Type="1">UmF0aW5n</PHRASE>
<PHRASE Label="la_title_Summary" Type="1">U3VtbWFyeQ==</PHRASE>
<PHRASE Label="la_Text_GuestUsers" Type="1">R3Vlc3QgVXNlcnM=</PHRASE>
<PHRASE Label="la_Text_Expired" Type="1">RXhwaXJlZA==</PHRASE>
<PHRASE Label="la_prompt_IPAddress" Type="1">SVAgQWRkcmVzcw==</PHRASE>
<PHRASE Label="la_ToolTip_Refresh" Type="1">UmVmcmVzaA==</PHRASE>
<PHRASE Label="la_ToolTip_Reset" Type="1">UmVzZXQ=</PHRASE>
<PHRASE Label="la_title_SessionLog" Type="1">U2Vzc2lvbiBMb2c=</PHRASE>
<PHRASE Label="la_Text_Guest" Type="1">R3Vlc3Q=</PHRASE>
<PHRASE Label="la_Category_Date" Type="1">RGF0ZQ==</PHRASE>
<PHRASE Label="la_Category_Pick" Type="1">UGljaw==</PHRASE>
<PHRASE Label="la_Category_Pop" Type="1">UG9wdWxhcml0eQ==</PHRASE>
<PHRASE Label="la_prompt_Module" Type="1">TW9kdWxl</PHRASE>
<PHRASE Label="la_prompt_Template" Type="1">VGVtcGxhdGU=</PHRASE>
<PHRASE Label="la_prompt_Type" Type="1">VHlwZQ==</PHRASE>
<PHRASE Label="la_Text_BuiltIn" Type="1">QnVpbHQgSW4=</PHRASE>
<PHRASE Label="la_tab_Template" Type="1">VGVtcGxhdGU=</PHRASE>
<PHRASE Label="la_prompt_New" Type="1">TmV3</PHRASE>
<PHRASE Label="la_prompt_Hot" Type="1">SG90</PHRASE>
<PHRASE Label="la_prompt_Pop" Type="1">UG9wdWxhcml0eQ==</PHRASE>
<PHRASE Label="la_val_Active" Type="1">QWN0aXZl</PHRASE>
<PHRASE Label="la_val_Pending" Type="1">UGVuZGluZw==</PHRASE>
<PHRASE Label="la_val_Disabled" Type="1">RGlzYWJsZWQ=</PHRASE>
<PHRASE Label="la_val_Never" Type="1">TmV2ZXI=</PHRASE>
<PHRASE Label="la_val_Always" Type="1">QWx3YXlz</PHRASE>
<PHRASE Label="la_val_Auto" Type="1">QXV0bw==</PHRASE>
<PHRASE Label="la_prompt_StartDate" Type="1">U3RhcnQgRGF0ZQ==</PHRASE>
<PHRASE Label="la_Text_Active" Type="1">QWN0aXZl</PHRASE>
<PHRASE Label="la_Text_View" Type="1">Vmlldw==</PHRASE>
<PHRASE Label="la_topic_MinVotes_prompt" Type="1">TWluaW11bSBudW1iZXIgb2Ygdm90ZXMgdG8gY29uc2lkZXIgYSB0b3BpYyB0byBiZSBwb3B1bGFy</PHRASE>
<PHRASE Label="la_title_In-Link" Type="1">SW4tbGluaw==</PHRASE>
<PHRASE Label="la_title_In-News" Type="1">SW4tbmV3eg==</PHRASE>
<PHRASE Label="la_ToolTip_Preview" Type="1">UHJldmlldw==</PHRASE>
<PHRASE Label="la_ToolTip_New_Template" Type="1">TmV3IFRlbXBsYXRl</PHRASE>
<PHRASE Label="Next Theme" Type="0">TmV4dCBUaGVtZQ==</PHRASE>
<PHRASE Label="Previous Theme" Type="0">UHJldmlvdXMgVGhlbWU=</PHRASE>
<PHRASE Label="la_ToolTip_New_LangPack" Type="1">TmV3IExhbmd1YWdlIFBhY2s=</PHRASE>
<PHRASE Label="la_ToolTip_New_Theme" Type="1">TmV3IFRoZW1l</PHRASE>
<PHRASE Label="la_Text_Send" Type="1">U2VuZA==</PHRASE>
<PHRASE Label="la_Text_Email" Type="1">RW1haWw=</PHRASE>
<PHRASE Label="la_Text_Groups" Type="1">R3JvdXBz</PHRASE>
<PHRASE Label="la_tab_EmailMessage" Type="1">RW1haWwgTWVzc2FnZQ==</PHRASE>
<PHRASE Label="la_prompt_EmailSubject" Type="1">RW1haWwgU3ViamVjdA==</PHRASE>
<PHRASE Label="la_prompt_EmailBody" Type="1">RW1haWwgQm9keQ==</PHRASE>
<PHRASE Label="lu_myaccount" Type="0">TXkgQWNjb3VudA==</PHRASE>
<PHRASE Label="lu_by" Type="0">Ynk=</PHRASE>
<PHRASE Label="la_prompt_PerPage" Type="1">UGVyIFBhZ2U=</PHRASE>
<PHRASE Label="la_Text_UserEmail" Type="1">VXNlciBSZWNlaXZlcyBOb3RpY2VzIFdoZW4=</PHRASE>
<PHRASE Label="la_Text_AdminEmail" Type="1">QWRtaW5pc3RyYXRvciBSZWNlaXZlIE5vdGljZXMgV2hlbg==</PHRASE>
<PHRASE Label="la_prompt_TotalLinks" Type="1">VG90YWwgTGlua3M=</PHRASE>
<PHRASE Label="la_prompt_ActiveArticles" Type="1">QWN0aXZlIEFydGljbGVz</PHRASE>
<PHRASE Label="la_prompt_ActiveTopics" Type="1">QWN0aXZlIFRvcGljcw==</PHRASE>
<PHRASE Label="la_prompt_PendingItems" Type="1">UGVuZGluZyBJdGVtcw==</PHRASE>
<PHRASE Label="la_Text_Step" Type="1">U3RlcA==</PHRASE>
<PHRASE Label="la_Text_DatabaseSettings" Type="1">RGF0YWJhc2UgU2V0dGluZ3MgLSBJbnRlY2huaWMgSW4tTGluayAyLng=</PHRASE>
<PHRASE Label="la_Prompt_Warning" Type="1">V2FybmluZyE=</PHRASE>
<PHRASE Label="la_Text_IAgree" Type="1">SSBhZ3JlZSB0byB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnM=</PHRASE>
<PHRASE Label="la_Text_SubCats" Type="1">U3ViQ2F0cw==</PHRASE>
<PHRASE Label="la_Text_Relations" Type="1">UmVsYXRpb25z</PHRASE>
<PHRASE Label="la_Text_Relation" Type="1">UmVsYXRpb24=</PHRASE>
<PHRASE Label="la_prompt_Item" Type="1">SXRlbQ==</PHRASE>
<PHRASE Label="la_Prompt_CategoryPermissions" Type="1">Q2F0ZWdvcnkgUGVybWlzc2lvbnM=</PHRASE>
<PHRASE Label="la_tab_Properties" Type="1">UHJvcGVydGllcw==</PHRASE>
<PHRASE Label="la_prompt_LinkId" Type="1">TGluayBJZA==</PHRASE>
<PHRASE Label="la_tab_Review" Type="1">UmV2aWV3</PHRASE>
<PHRASE Label="la_val_Enabled" Type="1">RW5hYmxlZA==</PHRASE>
<PHRASE Label="la_tab_UserSelect" Type="1">VXNlciBTZWxlY3Q=</PHRASE>
<PHRASE Label="la_Text_Adding" Type="1">QWRkaW5n</PHRASE>
<PHRASE Label="la_prompt_Views" Type="1">Vmlld3M=</PHRASE>
<PHRASE Label="la_Text_Catalog" Type="1">Q2F0YWxvZw==</PHRASE>
<PHRASE Label="la_Text_Local" Type="1">TG9jYWw=</PHRASE>
<PHRASE Label="la_Text_Subitems" Type="1">U3ViSXRlbXM=</PHRASE>
<PHRASE Label="la_Text_Fields" Type="1">RmllbGRz</PHRASE>
<PHRASE Label="la_Logged_in_as" Type="1">TG9nZ2VkIGluIGFz</PHRASE>
<PHRASE Label="la_Text_Images" Type="1">SW1hZ2Vz</PHRASE>
<PHRASE Label="la_Text_Locked" Type="1">TG9ja2Vk</PHRASE>
<PHRASE Label="la_text_Thumbnail_Image" Type="1">VGh1bWJuYWlsIEltYWdl</PHRASE>
<PHRASE Label="la_text_Same_As_Thumbnail" Type="1">U2FtZSBhcyB0aHVtYm5haWw=</PHRASE>
<PHRASE Label="la_Description_in-portal:site" Type="1">TWFuYWdlIHRoZSBzdHJ1Y3R1cmUgb2YgeW91ciBzaXRlLCBpbmNsdWRpbmcgY2F0ZWdvcmllcywgaXRlbXMgYW5kIGNhdGVvZ3J5IHNldHRpbmdzLg==</PHRASE>
<PHRASE Label="la_Description_in-portal:users" Type="1">TWFuYWdlIHVzZXJzIGFuZCBncm91cHMsIHNldCB1c2VyICYgZ3JvdXAgcGVybWlzc2lvbnMgYW5kIGRlZmluZSB1c2VyIHNldHRpbmdzLg==</PHRASE>
<PHRASE Label="la_Description_in-portal:modules" Type="1">TWFuYWdlIHNldHRpbmdzIG9mIGFsbCBtb2R1bGVzIHdoaWNoIGFyZSBpbnN0YWxsZWQgb24geW91ciBJbi1wb3J0YWwgc3lzdGVtLg==</PHRASE>
<PHRASE Label="la_Description_in-portal:reports" Type="1">VmlldyBzeXN0ZW0gc3RhdGlzdGljcywgbG9ncyBhbmQgcmVwb3J0cw==</PHRASE>
<PHRASE Label="la_Description_in-portal:help" Type="1">SGVscCBzZWN0aW9uIGZvciBJbi1wb3J0YWwgYW5kIGFsbCBvZiBpdHMgbW9kdWxlcy4gQWxzbyBhY2Nlc3NpYmxlIHZpYSB0aGUgc2VjdGlvbi1zcGVjaWZpYyBpbnRlcmFjaXZlIGhlbHAgZmVhdHVyZS4=</PHRASE>
<PHRASE Label="la_Description_in-portal:tools" Type="1">VXNlIHZhcmlvdXMgSW4tcG9ydGFsIGRhdGEgbWFuYWdlbWVudCB0b29scywgaW5jbHVkaW5nIGJhY2t1cCwgcmVzdG9yZSwgaW1wb3J0IGFuZCBleHBvcnQ=</PHRASE>
<PHRASE Label="la_Description_in-portal:system" Type="1">TWFuYWdlIHN5c3RlbS13aWRlIHNldHRpbmdzLCBlZGl0IHRoZW1lcyBhbmQgbGFuZ3VhZ2Vz</PHRASE>
<PHRASE Label="la_Text_None" Type="1">Tm9uZQ==</PHRASE>
<PHRASE Label="lu_PermName_Category.View_desc" Type="0">VmlldyBDYXRlZ29yeQ==</PHRASE>
<PHRASE Label="lu_PermName_Category.Modify_desc" Type="0">TW9kaWZ5IENhdGVnb3J5</PHRASE>
<PHRASE Label="lu_PermName_Category.Add_desc" Type="0">QWRkIENhdGVnb3J5</PHRASE>
<PHRASE Label="la_ToolTip_New_Permission" Type="1">TmV3IFBlcm1pc3Npb24=</PHRASE>
<PHRASE Label="lu_PermName_Category.Delete_desc" Type="0">RGVsZXRlIENhdGVnb3J5</PHRASE>
<PHRASE Label="lu_PermName_Category.AddPending_desc" Type="0">QWRkIFBlbmRpbmcgQ2F0ZWdvcnk=</PHRASE>
<PHRASE Label="lu_PermName_Link.Add_desc" Type="0">QWRkIExpbms=</PHRASE>
<PHRASE Label="lu_PermName_Link.View_desc" Type="0">VmlldyBMaW5r</PHRASE>
<PHRASE Label="lu_PermName_Link.Add.Pending_desc" Type="0">UGVuZGluZyBMaW5r</PHRASE>
<PHRASE Label="lu_PermName_Link.Modify_desc" Type="0">TW9kaWZ5IExpbms=</PHRASE>
<PHRASE Label="lu_PermName_Link.Delete_desc" Type="0">RGVsZXRlIExpbms=</PHRASE>
<PHRASE Label="lu_PermName_Link.Rate_desc" Type="0">UmF0ZSBMaW5r</PHRASE>
<PHRASE Label="lu_PermName_Link.Review_desc" Type="0">UmV2aWV3IExpbms=</PHRASE>
<PHRASE Label="lu_PermName_Topic.View_desc" Type="0">VmlldyBUb3BpYw==</PHRASE>
<PHRASE Label="lu_PermName_Topic.Add_desc" Type="0">QWRkIFRvcGlj</PHRASE>
<PHRASE Label="lu_PermName_Topic.Add.Pending_desc" Type="0">QWRkIFBlbmRpbmcgVG9waWM=</PHRASE>
<PHRASE Label="lu_PermName_Topic.Delete_desc" Type="0">RGVsZXRlIFRvcGlj</PHRASE>
<PHRASE Label="lu_PermName_Topic.Modify_desc" Type="0">TW9kaWZ5IFRvcGlj</PHRASE>
<PHRASE Label="lu_PermName_Topic.Reply.Delete_desc" Type="0">RGVsZXRlIFRvcGlj</PHRASE>
<PHRASE Label="lu_PermName_Topic.Reply.View_desc" Type="0">VmlldyBUb3BpYyBSZXBseQ==</PHRASE>
<PHRASE Label="lu_PermName_Topic.Reply.Add_desc" Type="0">QWRkIFRvcGljIFJlcGx5</PHRASE>
<PHRASE Label="lu_PermName_Topic.Rate_desc" Type="0">UmF0ZSBUb3BpYw==</PHRASE>
<PHRASE Label="lu_PermName_Topic.Review_desc" Type="0">UmV2aWV3IFRvcGlj</PHRASE>
<PHRASE Label="lu_PermName_News.Rate_desc" Type="0">UmF0ZSBOZXdz</PHRASE>
<PHRASE Label="lu_PermName_Topic.Reply.Modify_desc" Type="0">UmVwbHkgVG9waWMgTW9kaWZ5</PHRASE>
<PHRASE Label="lu_PermName_News.Review_desc" Type="0">UmV2aWV3IE5ld3M=</PHRASE>
<PHRASE Label="lu_PermName_News.View_desc" Type="0">VmlldyBOZXdz</PHRASE>
<PHRASE Label="lu_PermName_News.Add_desc" Type="0">QWRkIE5ld3M=</PHRASE>
<PHRASE Label="lu_PermName_News.Delete_desc" Type="0">RGVsZXRlIE5ld3M=</PHRASE>
<PHRASE Label="lu_PermName_News.Modify_desc" Type="0">TW9kaWZ5IE5ld3M=</PHRASE>
<PHRASE Label="lu_PermName_News.Add.Pending_desc" Type="0">QWRkIFBlbmRpbmcgTmV3cw==</PHRASE>
<PHRASE Label="la_tab_SendMail" Type="1">U2VuZCBlLW1haWw=</PHRASE>
<PHRASE Label="la_prompt_To" Type="1">VG8=</PHRASE>
<PHRASE Label="la_prompt_Subject" Type="1">U3ViamVjdA==</PHRASE>
<PHRASE Label="la_prompt_Attatchment" Type="1">QXR0YWNobWVudA==</PHRASE>
<PHRASE Label="la_tab_Message" Type="1">TWVzc2FnZQ==</PHRASE>
<PHRASE Label="la_Text_DataType_1" Type="1">Y2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_Text_Search_Results" Type="1">U2VhcmNoIFJlc3VsdHM=</PHRASE>
<PHRASE Label="la_Text_No_permissions" Type="1">Tm8gcGVybWlzc2lvbnM=</PHRASE>
<PHRASE Label="la_Text_Blank_Field" Type="1">QmxhbmsgdXNlcm5hbWUgb3IgcGFzc3dvcmQ=</PHRASE>
<PHRASE Label="la_Text_Full" Type="1">RnVsbA==</PHRASE>
<PHRASE Label="la_Text_Group_Name" Type="1">R3JvdXAgTmFtZQ==</PHRASE>
<PHRASE Label="la_Text_User_Count" Type="1">VXNlciBDb3VudA==</PHRASE>
<PHRASE Label="la_Description_in-portal:configure_categories" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB5b3UgdG8gY29uZmlndXJlIGdlbmVyYWwgY2F0ZWdvcnkgc2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_Description_in-portal:configuration_custom" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB5b3UgdG8gY29uZmlndXJlIGNhdGVnb3J5IGN1c3RvbSBmaWVsZHM=</PHRASE>
<PHRASE Label="la_Text_Primary" Type="1">UHJpbWFyeQ==</PHRASE>
<PHRASE Label="la_prompt_TopicId" Type="1">VG9waWMgSUQ=</PHRASE>
<PHRASE Label="la_prompt_PostedBy" Type="1">UG9zdGVkIGJ5</PHRASE>
<PHRASE Label="la_Description_in-portal:user_list" Type="1">VGhpcyBzZWN0aW9ucyBhbGxvd3MgdG8gbWFuYWdlIHVzZXJzLCB0aGVpciBwZXJtaXNzaW9ucyBhbmQgcGVyZm9ybSBtYXNzIGVtYWls</PHRASE>
<PHRASE Label="la_Description_in-portal:user_groups" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYWdhbmUgZ3JvdXBzLCBhc3NpZ24gdXNlcnMgdG8gZ3JvdXBzIGFuZCBwZXJmb3JtIG1hc3MgZW1haWwgc2VuZGluZw==</PHRASE>
<PHRASE Label="la_Text_Categories" Type="1">Q2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_tab_ConfigSettings" Type="1">R2VuZXJhbCBTZXR0aW5ncw==</PHRASE>
<PHRASE Label="la_users_allow_new" Type="1">QWxsb3cgbmV3IHVzZXIgcmVnaXN0cmF0aW9u</PHRASE>
<PHRASE Label="la_users_email_validate" Type="1">VmFsaWRhdGUgZS1tYWlsIGFkZHJlc3M=</PHRASE>
<PHRASE Label="la_users_password_auto" Type="1">QXNzaWduIHBhc3N3b3JkIGF1dG9tYXRpY2FsbHk=</PHRASE>
<PHRASE Label="la_Text_Restrictions" Type="1">UmVzdHJpY3Rpb25z</PHRASE>
<PHRASE Label="la_users_votes_deny" Type="1">TnVtYmVyIG9mIGRheXMgdG8gZGVueSBtdWx0aXBsZSB2b3RlcyBmcm9tIHRoZSBzYW1lIHVzZXI=</PHRASE>
<PHRASE Label="la_users_review_deny" Type="1">TnVtYmVyIG9mIGRheXMgdG8gZGVueSBtdWx0aXBsZSByZXZpZXdzIGZyb20gdGhlIHNhbWUgdXNlcg==</PHRASE>
<PHRASE Label="la_User_Instant" Type="1">SW5zdGFudA==</PHRASE>
<PHRASE Label="la_User_Not_Allowed" Type="1">Tm90IEFsbG93ZWQ=</PHRASE>
<PHRASE Label="la_User_Upon_Approval" Type="1">VXBvbiBBcHByb3ZhbA==</PHRASE>
<PHRASE Label="la_prompt_SearchType" Type="1">U2VhcmNoIFR5cGU=</PHRASE>
<PHRASE Label="la_prompt_Keyword" Type="1">S2V5d29yZA==</PHRASE>
<PHRASE Label="la_prompt_Frequency" Type="1">RnJlcXVlbmN5</PHRASE>
<PHRASE Label="la_prompt_Parameter" Type="1">UGFyYW1ldGVy</PHRASE>
<PHRASE Label="la_prompt_Value" Type="1">VmFsdWU=</PHRASE>
<PHRASE Label="la_Description_in-portal:configure_users" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB5b3UgdG8gY29uZmlndXJlIGdlbmVyYWwgdXNlciBzZXR0aW5ncw==</PHRASE>
<PHRASE Label="la_Description_in-portal:user_custom" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB5b3UgdG8gY29uZmlndXJlIHVzZXIgY3VzdG9tIGZpZWxkcw==</PHRASE>
<PHRASE Label="la_Description_in-link" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tbGluayBzZXR0aW5ncw==</PHRASE>
<PHRASE Label="la_Description_in-news" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tbmV3eiBzZXR0aW5ncw==</PHRASE>
<PHRASE Label="la_Description_in-bulletin" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tQnVsbGV0aW4gc2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_config_server_name" Type="1">U2VydmVyIE5hbWU=</PHRASE>
<PHRASE Label="la_config_server_path" Type="1">U2VydmVyIFBhdGg=</PHRASE>
<PHRASE Label="la_config_web_address" Type="1">V2ViIGFkZHJlc3M=</PHRASE>
<PHRASE Label="la_prompt_Label" Type="1">TGFiZWw=</PHRASE>
<PHRASE Label="la_prompt_PrimaryValue" Type="1">UHJpbWFyeSBWYWx1ZQ==</PHRASE>
<PHRASE Label="la_Text_Admin" Type="1">QWRtaW4=</PHRASE>
<PHRASE Label="la_Text_Front" Type="1">RnJvbnQ=</PHRASE>
<PHRASE Label="la_Text_Label" Type="1">TGFiZWw=</PHRASE>
<PHRASE Label="la_prompt_PhraseId" Type="1">UGhyYXNlIElk</PHRASE>
<PHRASE Label="la_prompt_PhraseType" Type="1">UGhyYXNlIFR5cGU=</PHRASE>
<PHRASE Label="la_Text_Both" Type="1">Qm90aA==</PHRASE>
<PHRASE Label="la_tab_Settings" Type="1">R2VuZXJhbCBTZXR0aW5ncw==</PHRASE>
<PHRASE Label="la_Text_Licence" Type="1">TGljZW5zZQ==</PHRASE>
<PHRASE Label="la_config_name" Type="1">TmFtZQ==</PHRASE>
<PHRASE Label="la_config_company" Type="1">Q29tcGFueQ==</PHRASE>
<PHRASE Label="la_config_reg_number" Type="1">UmVnaXN0cmF0aW9uIE51bWJlcg==</PHRASE>
<PHRASE Label="la_Text_Website" Type="1">V2Vic2l0ZQ==</PHRASE>
<PHRASE Label="la_config_website_name" Type="1">V2Vic2l0ZSBuYW1l</PHRASE>
<PHRASE Label="la_config_website_address" Type="1">V2Vic2l0ZSBhZGRyZXNz</PHRASE>
<PHRASE Label="la_Text_Date_Time_Settings" Type="1">RGF0ZS9UaW1lIFNldHRpbmdz</PHRASE>
<PHRASE Label="la_config_time_server" Type="1">VGltZSB6b25lIG9mIHRoZSBzZXJ2ZXI=</PHRASE>
<PHRASE Label="la_config_site_zone" Type="1">VGltZSB6b25lIG9mIHRoZSBzaXRl</PHRASE>
<PHRASE Label="la_m12" Type="1">KEdNVCAtMTI6MDAp</PHRASE>
<PHRASE Label="la_m11" Type="1">KEdNVCAtMTE6MDAp</PHRASE>
<PHRASE Label="la_m10" Type="1">KEdNVCAtMTA6MDAp</PHRASE>
<PHRASE Label="la_m9" Type="1">KEdNVCAtMDk6MDAp</PHRASE>
<PHRASE Label="la_m8" Type="1">KEdNVCAtMDg6MDAp</PHRASE>
<PHRASE Label="la_m7" Type="1">KEdNVCAtMDc6MDAp</PHRASE>
<PHRASE Label="la_m6" Type="1">KEdNVCAtMDY6MDAp</PHRASE>
<PHRASE Label="la_m5" Type="1">KEdNVCAtMDU6MDAp</PHRASE>
<PHRASE Label="la_m4" Type="1">KEdNVCAtMDQ6MDAp</PHRASE>
<PHRASE Label="la_m3" Type="1">KEdNVCAtMDM6MDAp</PHRASE>
<PHRASE Label="la_m2" Type="1">KEdNVCAtMDI6MDAp</PHRASE>
<PHRASE Label="la_m1" Type="1">KEdNVCAtMDE6MDAp</PHRASE>
<PHRASE Label="la_m0" Type="1">KEdNVCk=</PHRASE>
<PHRASE Label="la_p1" Type="1">KEdNVCArMDE6MDAp</PHRASE>
<PHRASE Label="la_p2" Type="1">KEdNVCArMDI6MDAp</PHRASE>
<PHRASE Label="la_p3" Type="1">KEdNVCArMDM6MDAp</PHRASE>
<PHRASE Label="la_p4" Type="1">KEdNVCArMDQ6MDAp</PHRASE>
<PHRASE Label="la_p5" Type="1">KEdNVCArMDU6MDAp</PHRASE>
<PHRASE Label="la_p6" Type="1">KEdNVCArMDY6MDAp</PHRASE>
<PHRASE Label="la_p7" Type="1">KEdNVCArMDc6MDAp</PHRASE>
<PHRASE Label="la_p8" Type="1">KEdNVCArMDg6MDAp</PHRASE>
<PHRASE Label="la_p9" Type="1">KEdNVCArMDk6MDAp</PHRASE>
<PHRASE Label="la_p10" Type="1">KEdNVCArMTA6MDAp</PHRASE>
<PHRASE Label="la_p11" Type="1">KEdNVCArMTE6MDAp</PHRASE>
<PHRASE Label="la_p12" Type="1">KEdNVCArMTI6MDAp</PHRASE>
<PHRASE Label="la_p13" Type="1">KEdNVCArMTM6MDAp</PHRASE>
<PHRASE Label="la_Text_Archived" Type="1">QXJjaGl2ZWQ=</PHRASE>
<PHRASE Label="la_Text_Views" Type="1">Vmlld3M=</PHRASE>
<PHRASE Label="la_Text_Replies" Type="1">UmVwbGllcw==</PHRASE>
<PHRASE Label="la_Prompt_GeneralPermissions" Type="1">R2VuZXJhbCBQZXJtaXNzaW9ucw==</PHRASE>
<PHRASE Label="la_PermType_AdminSection" Type="1">QWRtaW5pc3RyYXRpb24=</PHRASE>
<PHRASE Label="la_PermType_FrontEnd" Type="1">RnJvbnQgRW5k</PHRASE>
<PHRASE Label="la_PermName_Admin_desc" Type="1">QWxsb3dzIGFjY2VzcyB0byB0aGUgQWRtaW5pc3RyYXRpb24gdXRpbGl0eQ==</PHRASE>
<PHRASE Label="la_tab_Group" Type="1">R3JvdXA=</PHRASE>
<PHRASE Label="la_Prompt_SystemPermissions" Type="1">U3lzdGVtIHByZW1pc3Npb25z</PHRASE>
<PHRASE Label="la_Text_DataType_6" Type="1">dXNlcnM=</PHRASE>
<PHRASE Label="la_Description_in-link:configuration_output" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tbGluayBvdXRwdXQgc2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_Description_in-news:configuration_output" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tbmV3eiBvdXRwdXQgc2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_Description_in-news:configuration_search" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tbmV3eiBkZWZhdWx0IHNlYXJjaCBjb25maWd1cmF0aW9u</PHRASE>
<PHRASE Label="la_Description_in-news:configuration_email" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tbmV3eiBlbWFpbCBjb25maWd1cmF0aW9u</PHRASE>
<PHRASE Label="la_Description_in-news:configuration_custom" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tbmV3eiBjdXN0b20gZmllbGRz</PHRASE>
<PHRASE Label="la_Description_in-bulletin:configuration_output" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tYnVsbHRlaW4gb3V0cHV0IHNldHRpbmdz</PHRASE>
<PHRASE Label="la_Description_in-bulletin:configuration_search" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tYnVsbHRlaW4gZGVmYXVsdCBzZWFyY2ggc2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_Description_in-bulletin:configuration_email" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgSW4tYnVsbHRlaW4gZW1haWwgc2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_Description_in-portal:configure_themes" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgdGhlbWVzIGFuZCBlZGl0IHRoZSBpbmRpdmlkdWFsIHRlbXBsYXRlcw==</PHRASE>
<PHRASE Label="la_Description_in-portal:configure_lang" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgcmVnaW9uYWwgc2V0dGluZ3MsIG1hbmFnZSBhbmQgZWRpdCBsYW5ndWFnZXM=</PHRASE>
<PHRASE Label="la_Description_in-portal:inlink_inport" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBpbXBvcnQgZGF0YSBmcm9tIG90aGVyIHByb2dyYW1zIGludG8gSW4tcG9ydGFs</PHRASE>
<PHRASE Label="la_ToolTip_AddUserToGroup" Type="1">QWRkIFVzZXIgVG8gR3JvdXA=</PHRASE>
<PHRASE Label="la_Prompt_Attention" Type="1">QXR0ZW50aW9uIQ==</PHRASE>
<PHRASE Label="la_Text_Items" Type="1">SXRlbXM=</PHRASE>
<PHRASE Label="la_Prompt_Backup_Status" Type="1">QmFja3VwIHN0YXR1cw==</PHRASE>
<PHRASE Label="la_prompt_Backup_Path" Type="1">QmFja3VwIFBhdGg=</PHRASE>
<PHRASE Label="la_Prompt_Step_One" Type="1">U3RlcCBPbmU=</PHRASE>
<PHRASE Label="la_text_Backup_in_progress" Type="1">QmFja3VwIGluIHByb2dyZXNz</PHRASE>
<PHRASE Label="la_Title_PleaseWait" Type="1">UGxlYXNlIFdhaXQ=</PHRASE>
<PHRASE Label="la_Text_Backup_Info" Type="1">VGhpcyB1dGlsaXR5IGFsbG93cyB5b3UgdG8gYmFja3VwIHlvdXIgY3VycmVudCBkYXRhIGZyb20gSW4tUG9ydGFsIGRhdGFiYXNlLg==</PHRASE>
<PHRASE Label="la_Text_Restore_Warning" Type="1">IFJ1bm5pbmcgdGhpcyB1dGlsaXR5IHdpbGwgYWZmZWN0IHlvdXIgZGF0YWJhc2UuICBQbGVhc2UgYmUgYWR2aXNlZCB0aGF0IHlvdSBjYW4gdXNlIHRoaXMgdXRpbGl0eSBhdCB5b3VyIG93biByaXNrLiAgSW50ZWNobmljIGNvcnBvcmF0aW9uIGNhbiBub3QgYmUgaGVsZCBsaWFibGUgZm9yIGFueSBjb3JydXB0IGRhdGEgb3IgZGF0YSBsb3NzLiAgUGxlYXNlIG1ha2Ugc3VyZSB0byBiYWNrIHVwIHlvdXIgZGF0YWJhc2UocykgYmVmb3JlIHJ1bm5p</PHRASE>
<PHRASE Label="la_Prompt_Backup_Date" Type="1">QmFjayBVcCBEYXRl</PHRASE>
<PHRASE Label="la_Prompt_Restore_Filechoose" Type="1">Q2hvb3NlIG9uZSBvZiB0aGUgZm9sbG93aW5nIGJhY2t1cCBkYXRlcyB0byByZXN0b3JlIG9yIGRlbGV0ZQ==</PHRASE>
<PHRASE Label="la_ToolTip_Restore" Type="1">UmVzdG9yZQ==</PHRASE>
<PHRASE Label="la_text_Restore_in_progress" Type="1">UmVzdG9yZSBpcyBpbiBwcm9ncmVzcw==</PHRASE>
<PHRASE Label="la_Prompt_Restore_Success" Type="1">UmVzdG9yZSBoYXMgYmVlbiBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5</PHRASE>
<PHRASE Label="la_Prompt_Restore_Failed" Type="1">UmVzdG9yZSBoYXMgZmFpbGVkIGFuIGVycm9yIG9jY3VyZWQ6</PHRASE>
<PHRASE Label="la_Prompt_Restore_Status" Type="1">UmVzdG9yZSBTdGF0dXM=</PHRASE>
<PHRASE Label="la_Title_SendInit" Type="1">UHJlcGFyaW5nIHRvIFNlbmQgTWFpbA==</PHRASE>
<PHRASE Label="la_Title_SendMailInit" Type="1">UHJlcGFyaW5nIHRvIFNlbmQgTWVzc2FnZXM=</PHRASE>
<PHRASE Label="la_Title_SendMailProgress" Type="1">U2VuZGluZyBNZXNzYWdlLi4=</PHRASE>
<PHRASE Label="la_Title_SendMailComplete" Type="1">TWFpbCBoYXMgYmVlbiBzZW50IFN1Y2Nlc3NmdWxseQ==</PHRASE>
<PHRASE Label="la_prompt_EmailInitMessage" Type="1">UGxlYXNlIFdhaXQgd2hpbGUgSW4tUG9ydGFsIHByZXBhcmVzIHRvIHNlbmQgdGhlIG1lc3NhZ2UuLg==</PHRASE>
<PHRASE Label="la_prompt_EmailCompleteMessage" Type="1">VGhlIEVtYWlsIE1lc3NhZ2UgaGFzIGJlZW4gc2VudA==</PHRASE>
<PHRASE Label="la_prompt_EmailCancelMessage" Type="1">RW1haWwgZGVsaXZlcnkgYWJvcnRlZA==</PHRASE>
<PHRASE Label="la_Close" Type="1">Q2xvc2U=</PHRASE>
<PHRASE Label="la_Text_Complete" Type="1">Q29tcGxldGU=</PHRASE>
<PHRASE Label="la_PermType_Admin" Type="1">UGVybWlzc2lvbiBUeXBlIEFkbWlu</PHRASE>
<PHRASE Label="la_PermType_Front" Type="1">UGVybWlzc2lvbiBUeXBlIEZyb250IEVuZA==</PHRASE>
<PHRASE Label="lu_nav_addlink" Type="0">QWRkIExpbms=</PHRASE>
<PHRASE Label="la_Text_Template" Type="1">VGVtcGxhdGU=</PHRASE>
<PHRASE Label="la_prompt_FileId" Type="1">RmlsZSBJZA==</PHRASE>
<PHRASE Label="la_prompt_FileName" Type="1">RmlsZSBuYW1l</PHRASE>
<PHRASE Label="lu_top_rated" Type="0">VG9wIFJhdGVkIExpbmtz</PHRASE>
<PHRASE Label="lu_pop_links" Type="0">TW9zdCBQb3B1bGFyIExpbmtz</PHRASE>
<PHRASE Label="lu_new_links" Type="0">TmV3IExpbmtz</PHRASE>
<PHRASE Label="lu_editors_pick" Type="0">RWRpdG9ycyBQaWNr</PHRASE>
<PHRASE Label="lu_msg_welcome" Type="0">V2VsY29tZQ==</PHRASE>
<PHRASE Label="la_Text_Type" Type="1">VHlwZQ==</PHRASE>
<PHRASE Label="lu_advanced_search_link" Type="0">QWR2YW5jZWQ=</PHRASE>
<PHRASE Label="la_Text_Events" Type="1">RXZlbnRz</PHRASE>
<PHRASE Label="lu_added_today" Type="0">QWRkZWQgVG9kYXk=</PHRASE>
<PHRASE Label="la_prompt_MessageType" Type="1">Rm9ybWF0</PHRASE>
<PHRASE Label="la_prompt_FromUser" Type="1">RnJvbS9UbyBVc2Vy</PHRASE>
<PHRASE Label="lu_page" Type="0">UGFnZQ==</PHRASE>
<PHRASE Label="lu_action_box_title" Type="0">QWN0aW9uIEJveA==</PHRASE>
<PHRASE Label="lu_zoom" Type="0">Wm9vbQ==</PHRASE>
<PHRASE Label="lu_categories_updated" Type="0">Y2F0ZWdvcmllcyB1cGRhdGVk</PHRASE>
<PHRASE Label="lu_links_updated" Type="0">bGlua3MgdXBkYXRlZA==</PHRASE>
<PHRASE Label="lu_related_categories" Type="0">UmVsYXRlZCBDYXRlZ29yaWVz</PHRASE>
<PHRASE Label="lu_total_categories" Type="0">VG90YWwgQ2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="lu_details" Type="0">RGV0YWlscw==</PHRASE>
<PHRASE Label="lu_send" Type="0">U2VuZA==</PHRASE>
<PHRASE Label="lu_recommend_title" Type="0">UmVjb21tZW5kIHRvIGEgZnJpZW5k</PHRASE>
<PHRASE Label="lu_posts" Type="0">cG9zdHM=</PHRASE>
<PHRASE Label="lu_in" Type="0">aW4=</PHRASE>
<PHRASE Label="lu_total_news" Type="0">VG90YWwgQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="lu_news_updated" Type="0">bmV3cyB1cGRhdGVk</PHRASE>
<PHRASE Label="lu_posts_updated" Type="0">cG9zdHMgdXBkYXRlZA==</PHRASE>
<PHRASE Label="lu_search_tips_link" Type="0">U2VhcmNoIFRpcHM=</PHRASE>
<PHRASE Label="lu_my_favorites" Type="0">TXkgRmF2b3JpdGVz</PHRASE>
<PHRASE Label="lu_my_friends" Type="0">TXkgRnJpZW5kcw==</PHRASE>
<PHRASE Label="lu_my_preferences" Type="0">TXkgUHJlZmVyZW5jZXM=</PHRASE>
<PHRASE Label="lu_login_information" Type="0">TG9naW4gSW5mb3JtYXRpb24=</PHRASE>
<PHRASE Label="lu_contact_information" Type="0">Q29udGFjdCBJbmZvcm1hdGlvbg==</PHRASE>
<PHRASE Label="lu_profile_updated" Type="0">cHJvZmlsZSB1cGRhdGVk</PHRASE>
<PHRASE Label="lu_help" Type="0">aGVscA==</PHRASE>
<PHRASE Label="lu_update" Type="0">VXBkYXRl</PHRASE>
<PHRASE Label="lu_cancel" Type="0">Q2FuY2Vs</PHRASE>
<PHRASE Label="lu_password_again" Type="0">UGFzc3dvcmQgQWdhaW4=</PHRASE>
<PHRASE Label="lu_pp_firstname" Type="0">Rmlyc3QgTmFtZQ==</PHRASE>
<PHRASE Label="lu_pp_lastname" Type="0">TGFzdCBOYW1l</PHRASE>
<PHRASE Label="lu_pp_phone" Type="0">UGhvbmU=</PHRASE>
<PHRASE Label="lu_pp_email" Type="0">RS1tYWls</PHRASE>
<PHRASE Label="lu_pp_street" Type="0">U3RyZWV0</PHRASE>
<PHRASE Label="lu_pp_city" Type="0">Q2l0eQ==</PHRASE>
<PHRASE Label="lu_pp_state" Type="0">U3RhdGU=</PHRASE>
<PHRASE Label="lu_pp_zip" Type="0">Wmlw</PHRASE>
<PHRASE Label="lu_my_links" Type="0">TXkgTGlua3M=</PHRASE>
<PHRASE Label="lu_my_articles" Type="0">TXkgQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="lu_my_topics" Type="0">TXkgVG9waWNz</PHRASE>
<PHRASE Label="lu_related_links" Type="0">UmVsYXRlZCBMaW5rcw==</PHRASE>
<PHRASE Label="lu_related_news" Type="0">UmVsYXRlZCBOZXdz</PHRASE>
<PHRASE Label="lu_reviews_updated" Type="0">cmV2aWV3cyB1cGRhdGVk</PHRASE>
<PHRASE Label="lu_link_details" Type="0">TGluayBEZXRhaWxz</PHRASE>
<PHRASE Label="lu_details_updated" Type="0">ZGV0YWlscyB1cGRhdGVk</PHRASE>
<PHRASE Label="lu_link_reviews" Type="0">TGluayBSZXZpZXdz</PHRASE>
<PHRASE Label="lu_prompt_username" Type="0">VXNlcm5hbWU=</PHRASE>
<PHRASE Label="lu_prompt_password" Type="0">UGFzc3dvcmQ=</PHRASE>
<PHRASE Label="lu_forgot_password_link" Type="0">Rm9yZ290IFBhc3N3b3Jk</PHRASE>
<PHRASE Label="lu_categories" Type="0">Q2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_users_new_group" Type="1">QXNzaWduIHJlZ2lzdGVyZWQgdXNlcnMgdG8gZ3JvdXA=</PHRASE>
<PHRASE Label="la_users_guest_group" Type="1">QXNzaWduIHVzZXJzIG5vdCBsb2dnZWQgaW4gdG8gZ3JvdXA=</PHRASE>
<PHRASE Label="lu_delete_confirm_title" Type="0">Q29uZmlybSBEZWxldGU=</PHRASE>
<PHRASE Label="lu_confirm_link_delete_subtitle" Type="0">WW91IGFyZSBhYm91dCB0byBkZWxldGUgdGhlIGxpbmsgYmVsb3cu</PHRASE>
<PHRASE Label="lu_delete_link_question" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIGxpbms/</PHRASE>
<PHRASE Label="lu_my_news" Type="0">TXkgTmV3cw==</PHRASE>
<PHRASE Label="lu_news_details" Type="0">TmV3cyBEZXRhaWxz</PHRASE>
<PHRASE Label="lu_prompt_review" Type="0">UmV2aWV3Og==</PHRASE>
<PHRASE Label="lu_required_field" Type="0">UmVxdWlyZWQgRmllbGQ=</PHRASE>
<PHRASE Label="lu_remove_from_favorites" Type="0">UmVtb3ZlIEZyb20gRmF2b3JpdGVz</PHRASE>
<PHRASE Label="lu_error_title" Type="0">RXJyb3I=</PHRASE>
<PHRASE Label="lu_searched_for" Type="0">U2VhcmNoZWQgRm9yOg==</PHRASE>
<PHRASE Label="lu_search_again" Type="0">U2VhcmNoIEFnYWlu</PHRASE>
<PHRASE Label="lu_new_users" Type="0">TmV3IFVzZXJz</PHRASE>
<PHRASE Label="lu_existing_users" Type="0">RXhpc3RpbmcgVXNlcnM=</PHRASE>
<PHRASE Label="lu_register_text" Type="2">UmVnaXN0ZXIgd2l0aCBJbi1Qb3J0YWwgZm9yIGNvbnZlbmllbnQgYWNjZXNzIHRvIHVzZXIgYWNjb3VudCBzZXR0aW5ncyBhbmQgcHJlZmVyZW5jZXMu</PHRASE>
<PHRASE Label="lu_login_title" Type="0">TG9naW4=</PHRASE>
<PHRASE Label="lu_or" Type="0">b3I=</PHRASE>
<PHRASE Label="lu_forgot_password" Type="0">Rm9yZ290IFBhc3N3b3Jk</PHRASE>
<PHRASE Label="lu_found" Type="0">Rm91bmQ6</PHRASE>
<PHRASE Label="lu_rate_link" Type="0">UmF0ZSBMaW5r</PHRASE>
<PHRASE Label="lu_link_rate_confirm" Type="0">TGluayBSYXRpbmcgUmVzdWx0cw==</PHRASE>
<PHRASE Label="lu_link_rate_confirm_duplicate_text" Type="0">WW91IGhhdmUgYWxyZWFkeSByYXRlZCB0aGlzIGxpbmsu</PHRASE>
<PHRASE Label="lu_link_rate_confirm_text" Type="0">VGhhbmsgZm9yIHJhdGluZyB0aGlzIGxpbmsuICBZb3VyIGlucHV0IGhhcyBiZWVuIHJlY29yZGVkLg==</PHRASE>
<PHRASE Label="lu_my_info" Type="0">TXkgUHJvZmlsZQ==</PHRASE>
<PHRASE Label="lu_review_link" Type="0">UmV2aWV3IExpbms=</PHRASE>
<PHRASE Label="lu_link_review_confirm" Type="0">TGluayBSZXZpZXcgUmVzdWx0cw==</PHRASE>
<PHRASE Label="lu_category_information" Type="0">Q2F0ZWdvcnkgSW5mb3JtYXRpb24=</PHRASE>
<PHRASE Label="lu_prompt_catname" Type="0">Q2F0ZWdvcnkgTmFtZQ==</PHRASE>
<PHRASE Label="lu_prompt_catdesc" Type="0">RGVzY3JpcHRpb24=</PHRASE>
<PHRASE Label="lu_prompt_metadesc" Type="0">TWV0YSBUYWcgRGVzY3JpcHRpb24=</PHRASE>
<PHRASE Label="lu_prompt_metakeywords" Type="0">TWV0YSBUYWcgS2V5d29yZHM=</PHRASE>
<PHRASE Label="lu_prompt_fullimage" Type="0">RnVsbC1TaXplIEltYWdlOg==</PHRASE>
<PHRASE Label="lu_prompt_thumbnail" Type="0">VGh1bWJuYWlsIEltYWdlOg==</PHRASE>
<PHRASE Label="lu_addcat_confirm" Type="0">U3VnZ2VzdCBDYXRlZ29yeSBSZXN1bHRz</PHRASE>
<PHRASE Label="lu_addcat_confirm_text" Type="0">VGhlIENhdGVnb3J5IHlvdSBzdWdnZXN0ZWQgaGFzIGJlZW4gYWRkZWQgdG8gdGhlIHN5c3RlbS4=</PHRASE>
<PHRASE Label="lu_link_information" Type="0">TGluayBJbmZvcm1hdGlvbg==</PHRASE>
<PHRASE Label="lu_prompt_linkname" Type="0">TGluayBOYW1l</PHRASE>
<PHRASE Label="lu_prompt_linkurl" Type="0">VVJM</PHRASE>
<PHRASE Label="lu_prompt_linkdesc" Type="0">RGVzY3JpcHRpb24=</PHRASE>
<PHRASE Label="lu_addlink_confirm" Type="0">QWRkIExpbmsgUmVzdWx0cw==</PHRASE>
<PHRASE Label="lu_addlink_confirm_text" Type="0">VGhlIGxpbmsgeW91IGhhdmUgc3VnZ2VzdGVkIGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBkYXRhYmFzZS4=</PHRASE>
<PHRASE Label="lu_username" Type="0">VXNlcm5hbWU=</PHRASE>
<PHRASE Label="lu_pp_dob" Type="0">QmlydGhkYXRl</PHRASE>
<PHRASE Label="lu_account_info" Type="0">QWNjb3VudCBJbmZvcm1hdGlvbg==</PHRASE>
<PHRASE Label="lu_profile" Type="0">UHJvZmlsZQ==</PHRASE>
<PHRASE Label="lu_current_value" Type="0">Q3VycmVudCBWYWx1ZQ==</PHRASE>
<PHRASE Label="lu_public_display" Type="0">RGlzcGxheSB0byBQdWJsaWM=</PHRASE>
<PHRASE Label="lu_prompt_avatar" Type="0">QXZhdGFyIEltYWdl</PHRASE>
<PHRASE Label="lu_prompt_perpage_topics" Type="0">VG9waWNzIFBlciBQYWdl</PHRASE>
<PHRASE Label="lu_prompt_perpage_posts" Type="0">UG9zdHMgUGVyIFBhZ2U=</PHRASE>
<PHRASE Label="lu_default_notify_owner" Type="0">Tm90aWZ5IG1lIG9uIGNoYW5nZXMgdG8gdG9waWNzIEkgY3JlYXRl</PHRASE>
<PHRASE Label="lu_default_bbcode" Type="0">RW5hYmxlIEJCQ29kZQ==</PHRASE>
<PHRASE Label="lu_default_signature" Type="0">QXR0YXRjaCBNeSBTaWduYXR1cmUgdG8gUG9zdHM=</PHRASE>
<PHRASE Label="lu_prompt_signature" Type="0">U2lnbmF0dXJl</PHRASE>
<PHRASE Label="lu_delete" Type="0">RGVsZXRl</PHRASE>
<PHRASE Label="lu_online" Type="0">T25saW5l</PHRASE>
<PHRASE Label="lu_offline" Type="0">T2ZmbGluZQ==</PHRASE>
<PHRASE Label="lu_hot" Type="0">SG90</PHRASE>
<PHRASE Label="lu_new" Type="0">TmV3</PHRASE>
<PHRASE Label="lu_Pop" Type="0">UG9wdWxhcg==</PHRASE>
<PHRASE Label="lu_top" Type="0">VG9wIFJhdGVk</PHRASE>
<PHRASE Label="la_Text_Version" Type="1">VmVyc2lvbg==</PHRASE>
<PHRASE Label="la_Text_Modules" Type="1">TW9kdWxlcw==</PHRASE>
<PHRASE Label="la_Text_Enable" Type="1">RW5hYmxl</PHRASE>
<PHRASE Label="la_Text_Disable" Type="1">RGlzYWJsZQ==</PHRASE>
<PHRASE Label="la_prompt_addmodule" Type="1">QWRkIE1vZHVsZQ==</PHRASE>
<PHRASE Label="la_Text_Installed" Type="1">SW5zdGFsbGVk</PHRASE>
<PHRASE Label="la_prompt_root_pass" Type="1">Um9vdCBQYXNzd29yZA==</PHRASE>
<PHRASE Label="la_prompt_root_pass_verify" Type="1">VmVyaWZ5IFJvb3QgUGFzc3dvcmQ=</PHRASE>
<PHRASE Label="la_prompt_ActiveCategories" Type="1">QWN0aXZlIENhdGVnb3JpZXM=</PHRASE>
<PHRASE Label="la_prompt_ActiveUsers" Type="1">QWN0aXZlIFVzZXJz</PHRASE>
<PHRASE Label="la_prompt_CurrentSessions" Type="1">Q3VycmVudCBTZXNzaW9ucw==</PHRASE>
<PHRASE Label="la_tab_EmailEvents" Type="1">RW1haWwgRXZlbnRz</PHRASE>
<PHRASE Label="la_event_category.add" Type="1">QWRkIENhdGVnb3J5</PHRASE>
<PHRASE Label="la_event_category.add.pending" Type="1">QWRkIFBlbmRpbmcgQ2F0ZWdvcnk=</PHRASE>
<PHRASE Label="la_event_category.approve" Type="1">QXBwcm92ZSBDYXRlZ29yeQ==</PHRASE>
<PHRASE Label="la_event_category.deny" Type="1">RGVueSBDYXRlZ29yeQ==</PHRASE>
<PHRASE Label="la_event_category.modify" Type="1">TW9kaWZ5IENhdGVnb3J5</PHRASE>
<PHRASE Label="la_event_category_delete" Type="1">RGVsZXRlIENhdGVnb3J5</PHRASE>
<PHRASE Label="la_event_user.add" Type="1">QWRkIFVzZXI=</PHRASE>
<PHRASE Label="la_event_user.add.pending" Type="1">QWRkIFBlbmRpbmcgVXNlcg==</PHRASE>
<PHRASE Label="la_event_user.approve" Type="1">QXBwcm92ZSBVc2Vy</PHRASE>
<PHRASE Label="la_event_user.deny" Type="1">RGVueSBVc2Vy</PHRASE>
<PHRASE Label="la_event_user.forgotpw" Type="1">Rm9yZ290IFBhc3N3b3Jk</PHRASE>
<PHRASE Label="la_event_user.validate" Type="1">VmFsaWRhdGUgVXNlcg==</PHRASE>
<PHRASE Label="la_event_link.add" Type="1">QWRkIExpbms=</PHRASE>
<PHRASE Label="la_event_link.add.pending" Type="1">QWRkIFBlbmRpbmcgTGluaw==</PHRASE>
<PHRASE Label="la_event_link.approve" Type="1">QXBwcm92ZSBQZW5kaW5nIExpbms=</PHRASE>
<PHRASE Label="la_event_link.deny" Type="1">RGVueSBMaW5r</PHRASE>
<PHRASE Label="la_event_link.modify" Type="1">TW9kaWZ5IExpbms=</PHRASE>
<PHRASE Label="la_event_link.modify.approve" Type="1">QXBwcm92ZSBMaW5rIE1vZGlmaWNhdGlvbg==</PHRASE>
<PHRASE Label="la_event_link.modify.deny" Type="1">RGVjbGluZSBsaW5rIG1vZGlmaWNhdGlvbg==</PHRASE>
<PHRASE Label="la_event_link.modify.pending" Type="1">TGluayBNb2RpZmljYXRpb24gUGVuZGluZw==</PHRASE>
<PHRASE Label="la_event_link.review.add" Type="1">TGluayBSZXZpZXcgQWRkZWQ=</PHRASE>
<PHRASE Label="la_event_link.review.add.pending" Type="1">UGVuZGluZyBSZXZpZXcgQWRkZWQ=</PHRASE>
<PHRASE Label="la_event_link.review.approve" Type="1">QXBwcm92ZSBMaW5rIFJldmlldw==</PHRASE>
<PHRASE Label="la_event_link.review.deny" Type="1">RGVjbGluZSBMaW5rIFJldmlldw==</PHRASE>
<PHRASE Label="la_event_article.add" Type="1">QWRkIEFydGljbGU=</PHRASE>
<PHRASE Label="la_event_article.approve" Type="1">QXBwcm92ZSBBcnRpY2xl</PHRASE>
<PHRASE Label="la_event_article.deny" Type="1">RGVjbGluZSBBcnRpY2xl</PHRASE>
<PHRASE Label="la_event_article.modify" Type="1">TW9kaWZ5IEFydGljbGU=</PHRASE>
<PHRASE Label="la_event_article.modify.approve" Type="1">QXBwcm92ZSBBcnRpY2xlIE1vZGlmaWNhdGlvbg==</PHRASE>
<PHRASE Label="la_event_article.modify.deny" Type="1">RGVjbGluZSBBcnRpY2xlIE1vZGlmaWNhdGlvbg==</PHRASE>
<PHRASE Label="la_event_article.review.add" Type="1">QXJ0aWNsZSBSZXZpZXcgQWRkZWQ=</PHRASE>
<PHRASE Label="la_event_article.review.add.pending" Type="1">UGVuZGluZyBBcnRpY2xlIFJldmlldyBBZGRlZA==</PHRASE>
<PHRASE Label="la_event_article.review.approve" Type="1">QXBwcm92ZSBBcnRpY2xlIFJldmlldw==</PHRASE>
<PHRASE Label="la_event_article.review.deny" Type="1">RGVjbGluZSBBcnRpY2xlIFJldmlldw==</PHRASE>
<PHRASE Label="la_event_topic.add" Type="1">VG9waWMgQWRkZWQ=</PHRASE>
<PHRASE Label="la_event_post.modify" Type="1">UG9zdCBNb2RpZmllZA==</PHRASE>
<PHRASE Label="la_event_post.add" Type="1">UG9zdCBBZGRlZA==</PHRASE>
<PHRASE Label="la_category_perpage__short_prompt" Type="1">Q2F0ZWdvcmllcyBQZXIgUGFnZSAoU2hvcnRsaXN0KQ==</PHRASE>
<PHRASE Label="la_topic_perpage_short_prompt" Type="1">VG9waWNzIFBlciBQYWdlIChTaG9ydGxpc3Qp</PHRASE>
<PHRASE Label="la_news_perpage_short_prompt" Type="1">QXJ0aWNsZXMgUGVyIFBhZ2UgKFNob3J0bGlzdCk=</PHRASE>
<PHRASE Label="la_review_perpage_prompt" Type="1">UmV2aWV3cyBQZXIgUGFnZQ==</PHRASE>
<PHRASE Label="la_review_perpage_short_prompt" Type="1">UmV2aWV3cyBQZXIgUGFnZSAoU2hvcnRsaXN0KQ==</PHRASE>
<PHRASE Label="la_news_MinVotes_prompt" Type="1">TWluaW11bSAjIG9mIHZvdGVzIGZvciByYXRpbmcgY29uc2lkZXJhdGlvbg==</PHRASE>
<PHRASE Label="la_ToolTip_Edit_Current_Category" Type="1">RWRpdCBDdXJyZW50IENhdGVnb3J5</PHRASE>
<PHRASE Label="la_title_Add_Module" Type="1">QWRkIE1vZHVsZQ==</PHRASE>
<PHRASE Label="la_prompt_Available_Modules" Type="1">TW9kdWxlcw==</PHRASE>
<PHRASE Label="la_Text_Install" Type="1">SW5zdGFsbA==</PHRASE>
<PHRASE Label="la_prompt_Install_Status" Type="1">SW5zdGFsbGF0aW9uIFN0YXR1cw==</PHRASE>
<PHRASE Label="la_text_ready_to_install" Type="1">UmVhZHkgdG8gSW5zdGFsbA==</PHRASE>
<PHRASE Label="la_ToolTip_Enable" Type="1">RW5hYmxl</PHRASE>
<PHRASE Label="la_ToolTip_Disable" Type="1">RGlzYWJsZQ==</PHRASE>
<PHRASE Label="la_prompt_session_management" Type="1">U2Vzc2lvbiBNYW5hZ2VtZW50IE1ldGhvZA==</PHRASE>
<PHRASE Label="lu_auto" Type="1">QXV0b21hdGlj</PHRASE>
<PHRASE Label="lu_cookies" Type="1">Q29va2llcw==</PHRASE>
<PHRASE Label="lu_query_string" Type="1">UXVlcnkgU3RyaW5n</PHRASE>
<PHRASE Label="la_prompt_session_timeout" Type="1">U2Vzc2lvbiBJbmFjdGl2aXR5IFRpbWVvdXQgKHNlY29uZHMp</PHRASE>
<PHRASE Label="la_Text_smtp_server" Type="1">U01UUCAobWFpbCkgU2VydmVy</PHRASE>
<PHRASE Label="la_prompt_mailserver" Type="1">TWFpbCBTZXJ2ZXIgQWRkcmVzcw==</PHRASE>
<PHRASE Label="la_prompt_mailport" Type="1">UG9ydCAoZS5nLiBwb3J0IDI1KQ==</PHRASE>
<PHRASE Label="la_prompt_mailauthenticate" Type="1">U2VydmVyIFJlcXVpcmVzIEF1dGhlbnRpY2F0aW9u</PHRASE>
<PHRASE Label="la_prompt_smtp_user" Type="1">TWFpbCBTZXJ2ZXIgVXNlcm5hbWU=</PHRASE>
<PHRASE Label="la_prompt_smtp_pass" Type="1">TWFpbCBTZXJ2ZXIgUGFzc3dvcmQ=</PHRASE>
<PHRASE Label="la_prompt_mailhtml" Type="1">U2VuZCBIVE1MIGVtYWls</PHRASE>
<PHRASE Label="la_prompt_smtpheaders" Type="1">QWRkaXRpb25hbCBNZXNzYWdlIEhlYWRlcnM=</PHRASE>
<PHRASE Label="la_prompt_AdminMailFrom" Type="1">TWVzc2FnZXMgZnJvbSBTaXRlIEFkbWluIGFyZSBmcm9t</PHRASE>
<PHRASE Label="la_prompt_Select_Source" Type="1">U2VsZWN0IFNvdXJjZSBMYW5ndWFnZQ==</PHRASE>
<PHRASE Label="la_prompt_icon_url" Type="1">SWNvbiBVUkw=</PHRASE>
<PHRASE Label="la_prompt_CopyLabels" Type="1">Q29weSBMYWJlbHMgdG8gdGhpcyBMYW5ndWFnZQ==</PHRASE>
<PHRASE Label="la_prompt_lang_cache_timeout" Type="1">TGFuZ3VhZ2UgQ2FjaGUgVGltZW91dA==</PHRASE>
<PHRASE Label="lu_new_topic" Type="0">TmV3IFRvcGlj</PHRASE>
<PHRASE Label="lu_register_confirm_text" Type="0">VGhhbmsgeW91IGZvciBSZWdpc3RlcmluZyEgIFBsZWFzZSBlbnRlciB5b3VyIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBiZWxvdw==</PHRASE>
<PHRASE Label="lu_register_confirm" Type="0">UmVnaXN0cmF0aW9uIENvbXBsZXRl</PHRASE>
<PHRASE Label="lu_select_language" Type="0">U2VsZWN0IExhbmd1YWdl</PHRASE>
<PHRASE Label="lu_show_signature" Type="0">U2hvdyBTaWduYXR1cmU=</PHRASE>
<PHRASE Label="lu_notify_owner" Type="0">Tm90aWZ5IG1lIHdoZW4gcG9zdHMgYXJlIG1hZGUgaW4gdGhpcyB0b3BpYw==</PHRASE>
<PHRASE Label="lu_bbcode" Type="0">QkJDb2Rl</PHRASE>
<PHRASE Label="lu_smileys" Type="0">U21pbGV5cw==</PHRASE>
<PHRASE Label="lu_add_topic" Type="0">QWRkIFRvcGlj</PHRASE>
<PHRASE Label="lu_newtopic_confirm" Type="0">QWRkIFRvcGljIFJlc3VsdHM=</PHRASE>
<PHRASE Label="lu_newtopic_confirm_text" Type="0">VGhlIFRvcGljIHlvdSBoYXZlIGNyZWF0ZWQgaGFzIGJlZW4gYWRkZWQgdG8gdGhlIHN5c3RlbQ==</PHRASE>
<PHRASE Label="lu_newtopic_confirm_pending" Type="0">WW91ciB0b3BpYyBoYXMgYmVlbiBhZGRlZA==</PHRASE>
<PHRASE Label="lu_newtopic_confirm_pending_text" Type="0">VGhlIHN5c3RlbSBhZG1pbmlzdHJhdG9yIG11c3QgYXBwcm92ZSB5b3VyIHRvcGljIGJlZm9yZSBpdCBpcyBwdWJsaWNseSBhdmFpbGFibGUu</PHRASE>
<PHRASE Label="lu_view_threaded" Type="0">VmlldyBUaHJlYWRlZA==</PHRASE>
<PHRASE Label="lu_quote_reply" Type="0">UmVwbHkgUXVvdGVk</PHRASE>
<PHRASE Label="lu_joined" Type="0">Sm9pbmVk</PHRASE>
<PHRASE Label="lu_location" Type="0">TG9jYXRpb24=</PHRASE>
<PHRASE Label="lu_on_this_post" Type="0">b24gdGhpcyBwb3N0</PHRASE>
<PHRASE Label="lu_post" Type="0">UG9zdA==</PHRASE>
<PHRASE Label="lu_topic_reply" Type="0">UG9zdCBSZXBseQ==</PHRASE>
<PHRASE Label="lu_view_flat" Type="0">VmlldyBGbGF0</PHRASE>
<PHRASE Label="my_account_title" Type="0">TXkgU2V0dGluZ3M=</PHRASE>
<PHRASE Label="lu_my_items_title" Type="0">TXkgSXRlbXM=</PHRASE>
<PHRASE Label="lu_editedby" Type="0">RWRpdGVkIEJ5</PHRASE>
<PHRASE Label="lu_on" Type="0">b24=</PHRASE>
<PHRASE Label="lu_topic_updated" Type="0">VG9waWMgVXBkYXRlZA==</PHRASE>
<PHRASE Label="lu_PermName_Topic.Reply.Owner.Modify_desc" Type="1">UG9zdCBPd25lciBNb2RpZnk=</PHRASE>
<PHRASE Label="lu_PermName_Topic.Reply.Owner.Delete_desc" Type="1">UG9zdCBPd25lciBEZWxldGU=</PHRASE>
<PHRASE Label="lu_PermName_Topic.Owner.Delete_desc" Type="1">VG9waWMgT3duZXIgRGVsZXRl</PHRASE>
<PHRASE Label="lu_PermName_Topic.Modify.Pending_desc" Type="1">TW9kaWZ5IFRvcGljIFBlbmRpbmc=</PHRASE>
<PHRASE Label="lu_PermName_Topic.Owner.Modify.Pending_desc" Type="1">T3duZXIgTW9kaWZ5IFRvcGljIFBlbmRpbmc=</PHRASE>
<PHRASE Label="lu_PermName_Topic.Owner.Modify_desc" Type="1">VG9waWMgT3duZXIgTW9kaWZ5</PHRASE>
<PHRASE Label="lu_PermName_Topic.Lock_desc" Type="1">TG9jay9VbmxvY2sgVG9waWNz</PHRASE>
<PHRASE Label="lu_wrote" Type="0">d3JvdGU=</PHRASE>
<PHRASE Label="lu_edittopic_confirm" Type="0">RWRpdCBUb3BpYyBSZXN1bHRz</PHRASE>
<PHRASE Label="lu_edittopic_confirm_text" Type="0">Q2hhbmdlcyBtYWRlIHRvIHRoZSB0b3BpYyBoYXZlIGJlZW4gc2F2ZWQu</PHRASE>
<PHRASE Label="lu_rating_5" Type="0">RXhjZWxsZW50</PHRASE>
<PHRASE Label="lu_rating_4" Type="0">VmVyeSBHb29k</PHRASE>
<PHRASE Label="lu_rating_3" Type="0">R29vZA==</PHRASE>
<PHRASE Label="lu_rating_2" Type="0">QXZlcmFnZQ==</PHRASE>
<PHRASE Label="lu_rating_1" Type="0">RmFpcg==</PHRASE>
<PHRASE Label="lu_rating_0" Type="0">UG9vcg==</PHRASE>
<PHRASE Label="la_prompt_LeadArticle" Type="1">U2l0ZSBMZWFkIFN0b3J5</PHRASE>
<PHRASE Label="la_prompt_CatLead" Type="1">Q2F0ZWdvcnkgTGVhZCBTdG9yeQ==</PHRASE>
<PHRASE Label="lu_search_within" Type="0">U2VhcmNoIFJlc3VsdHM=</PHRASE>
<PHRASE Label="lu_quick_links" Type="0">UXVpY2sgTGlua3M=</PHRASE>
<PHRASE Label="lu_suggest_success" Type="0">VGhhbmsgeW91IGZvciBzdWdnZXN0aW5nIG91ciBzaXRlIHRv</PHRASE>
<PHRASE Label="lu_already_suggested" Type="0">IGhhcyBhbHJlYWR5IGJlZW4gc3VnZ2VzdGVkIHRvIHRoaXMgc2l0ZSBvbg==</PHRASE>
<PHRASE Label="la_prompt_plaintext" Type="1">UGxhaW4gVGV4dA==</PHRASE>
<PHRASE Label="la_prompt_html" Type="1">SFRNTA==</PHRASE>
<PHRASE Label="la_prompt_sendmethod" Type="1">U2VuZCBFbWFpbCBBcw==</PHRASE>
<PHRASE Label="la_prompt_headers" Type="1">RXh0cmEgTWFpbCBIZWFkZXJz</PHRASE>
<PHRASE Label="la_Text_MailEvent" Type="1">RW1haWwgRXZlbnQ=</PHRASE>
<PHRASE Label="lu_rate_news" Type="0">UmF0ZSBBcnRpY2xl</PHRASE>
<PHRASE Label="lu_news_rate_confirm" Type="0">UmF0ZSBBcnRpY2xlIFJlc3VsdHM=</PHRASE>
<PHRASE Label="lu_news_rate_confirm_text" Type="0">VGhhbmsgeW91IGZvciByYXRpbmcgdGhpcyBhcnRpY2xlLiBZb3VyIHZvdGUgaGFzIGJlZW4gcmVjb3JkZWQu</PHRASE>
<PHRASE Label="lu_rate_topic" Type="0">UmF0ZSBUb3BpYw==</PHRASE>
<PHRASE Label="la_prompt_birthday" Type="1">RGF0ZSBvZiBCaXJ0aA==</PHRASE>
<PHRASE Label="la_tab_ItemList" Type="1">SXRlbSBMaXN0</PHRASE>
<PHRASE Label="la_Text_Sessions" Type="1">U2Vzc2lvbnM=</PHRASE>
<PHRASE Label="la_Text_Inactive" Type="1">SW5hY3RpdmU=</PHRASE>
<PHRASE Label="lu_PermName_Admin_desc" Type="1">QWRtaW4gTG9naW4=</PHRASE>
<PHRASE Label="lu_PermName_Debug.Item_desc" Type="1">RGlzcGxheSBJdGVtIFF1ZXJpZXMgKERlYnVnKQ==</PHRASE>
<PHRASE Label="lu_PermName_Debug.List_desc" Type="1">RGlzcGxheSBJdGVtIExpc3QgUXVlcmllcyAoRGVidWcp</PHRASE>
<PHRASE Label="lu_PermName_Debug.Info_desc" Type="1">QXBwZW5kIHBocGluZm8gdG8gYWxsIHBhZ2VzIChEZWJ1Zyk=</PHRASE>
<PHRASE Label="lu_PermName_Profile.Modify_desc" Type="1">Q2hhbmdlIFVzZXIgUHJvZmlsZXM=</PHRASE>
<PHRASE Label="lu_PermName_ShowLang_desc" Type="1">U2hvdyBMYW5ndWFnZSBUYWdz</PHRASE>
<PHRASE Label="lu_PermName_Login_desc" Type="1">QWxsb3cgTG9naW4=</PHRASE>
<PHRASE Label="lu_my_info_description" Type="0">WW91ciBBY2NvdW50IEluZm9ybWF0aW9u</PHRASE>
<PHRASE Label="lu_my_favorites_description" Type="0">SXRlbXMgeW91IGhhdmUgbWFya2VkIGFzIGZhdm9yaXRl</PHRASE>
<PHRASE Label="lu_my_friends_description" Type="0">VmlldyB5b3VyIGxpc3Qgb2YgZnJpZW5kcw==</PHRASE>
<PHRASE Label="lu_my_preferences_description" Type="0">RWRpdCB5b3VyIEluLVBvcnRhbCBQcmVmZXJlbmNlcw==</PHRASE>
<PHRASE Label="lu_logout_description" Type="0">TG9nIG91dCBvZiB0aGUgc3lzdGVt</PHRASE>
<PHRASE Label="lu_my_links_description" Type="0">TGlua3MgeW91IGhhdmUgYWRkZWQgdG8gdGhlIHN5c3RlbQ==</PHRASE>
<PHRASE Label="lu_my_articles_description" Type="0">TmV3cyBBcnRpY2xlcyB5b3UgaGF2ZSB3cml0dGVu</PHRASE>
<PHRASE Label="lu_my_topics_description" Type="0">RGlzY3Vzc2lvbnMgeW91IGhhdmUgY3JlYXRlZA==</PHRASE>
<PHRASE Label="lu_add_friend" Type="0">QWRkIEZyaWVuZA==</PHRASE>
<PHRASE Label="lu_delete_friend" Type="0">RGVsZXRlIEZyaWVuZA==</PHRASE>
<PHRASE Label="lu_view_profile" Type="0">VmlldyBVc2VyIFByb2ZpbGU=</PHRASE>
<PHRASE Label="lu_view_your_profile" Type="0">VmlldyBZb3VyIFByb2ZpbGU=</PHRASE>
<PHRASE Label="lu_button_forgotpw" Type="0">U2VuZCBQYXNzd29yZA==</PHRASE>
<PHRASE Label="lu_pp_country" Type="0">Q291bnRyeQ==</PHRASE>
<PHRASE Label="lu_lock_unlock" Type="0">TG9jay9VbmxvY2s=</PHRASE>
<PHRASE Label="la_tab_Items" Type="1">SXRlbXM=</PHRASE>
<PHRASE Label="la_prompt_syscache_enable" Type="1">RW5hYmxlIFRhZyBDYWNoaW5n</PHRASE>
<PHRASE Label="lu_remember_login" Type="0">UmVtZW1iZXIgTG9naW4=</PHRASE>
<PHRASE Label="la_tab_ImportLang" Type="1">SW1wb3J0IExhbmd1YWdlIFBhY2s=</PHRASE>
<PHRASE Label="la_Title_LanguageImport" Type="1">SW5zdGFsbCBMYW5ndWFnZSBQYWNr</PHRASE>
<PHRASE Label="la_prompt_LanguageFile" Type="1">TGFuZ3VhZ2UgRmlsZQ==</PHRASE>
<PHRASE Label="la_prompt_LoadLangTypes" Type="1">SW5zdGFsbCBQaHJhc2UgVHlwZXM6</PHRASE>
<PHRASE Label="la_Text_FrontEnd" Type="1">RnJvbnQgRW5k</PHRASE>
<PHRASE Label="la_prompt_Import_ImageName" Type="1">TGluayBJbWFnZSBOYW1l</PHRASE>
<PHRASE Label="lu_incorrect_login" Type="0">VXNlcm5hbWUvUGFzc3dvcmQgSW5jb3JyZWN0</PHRASE>
<PHRASE Label="lu_lastposter" Type="0">TGFzdCBQb3N0IEJ5</PHRASE>
<PHRASE Label="la_prompt_Theme" Type="1">VGhlbWU=</PHRASE>
<PHRASE Label="la_Text_Scanning" Type="1">U2Nhbm5pbmc=</PHRASE>
<PHRASE Label="la_Text_Templates" Type="1">VGVtcGxhdGVz</PHRASE>
<PHRASE Label="la_missing_theme" Type="1">TWlzc2luZyBJbiBUaGVtZQ==</PHRASE>
<PHRASE Label="la_prompt_Phrases" Type="1">UGhyYXNlcw==</PHRASE>
<PHRASE Label="la_tab_MissingLabels" Type="1">TWlzc2luZyBMYWJlbHM=</PHRASE>
<PHRASE Label="la_Text_Access_Denied" Type="1">SW52YWxpZCB1c2VyIG5hbWUgb3IgcGFzc3dvcmQ=</PHRASE>
<PHRASE Label="la_Text_Missing_Username" Type="1">QmxhbmsgdXNlciBuYW1l</PHRASE>
<PHRASE Label="la_Text_Missing_Password" Type="1">QmxhbmsgcGFzc3dvcmRzIGFyZSBub3QgYWxsb3dlZA==</PHRASE>
<PHRASE Label="la_text_nopermissions" Type="1">Tm8gcGVybWlzc2lvbnM=</PHRASE>
<PHRASE Label="la_Text_BackupComplete" Type="1">QmFjayB1cCBoYXMgYmVlbiBjb21wbGV0ZWQuIFRoZSBiYWNrdXAgZmlsZSBpczo=</PHRASE>
<PHRASE Label="la_prompt_updating" Type="1">VXBkYXRpbmc=</PHRASE>
<PHRASE Label="la_prompt_perform_now" Type="1">UGVyZm9ybSB0aGlzIG9wZXJhdGlvbiBub3c/</PHRASE>
<PHRASE Label="la_confirm_maintenance" Type="1">VGhlIGNhdGVnb3J5IHRyZWUgbXVzdCBiZSB1cGRhdGVkIHRvIHJlZmxlY3QgdGhlIGxhdGVzdCBjaGFuZ2Vz</PHRASE>
<PHRASE Label="la_title_Module_Status" Type="1">TW9kdWxlIFN0YXR1cw==</PHRASE>
<PHRASE Label="lu_link_search_results" Type="0">TGluayBTZWFyY2ggUmVzdWx0cw==</PHRASE>
<PHRASE Label="lu_category_search_results" Type="0">Q2F0ZWdvcnkgU2VhcmNoIFJlc3VsdHM=</PHRASE>
<PHRASE Label="lu_topic_search_results" Type="0">VG9waWMgU2VhcmNoIFJlc3VsdHM=</PHRASE>
<PHRASE Label="la_Text_Simple" Type="1">U2ltcGxl</PHRASE>
<PHRASE Label="la_prompt_EnableCache" Type="1">RW5hYmxlIFRlbXBsYXRlIENhY2hpbmc=</PHRASE>
<PHRASE Label="la_prompt_CacheTimeout" Type="1">Q2FjaGUgVGltZW91dCAoc2Vjb25kcyk=</PHRASE>
<PHRASE Label="lu_template_error" Type="0">VGVtcGxhdGUgRXJyb3I=</PHRASE>
<PHRASE Label="lu_missing_error" Type="0">TWlzc2luZyBUZW1wbGF0ZQ==</PHRASE>
<PHRASE Label="lu_back" Type="0">QmFjaw==</PHRASE>
<PHRASE Label="lu_prompt_post_subject" Type="0">UG9zdCBTdWJqZWN0</PHRASE>
<PHRASE Label="lu_optional" Type="0">T3B0aW9uYWw=</PHRASE>
<PHRASE Label="lu_edit_post" Type="0">TW9kaWZ5IFBvc3Q=</PHRASE>
<PHRASE Label="lu_topic_rate_confirm" Type="0">VG9waWMgUmF0aW5nIFJlc3VsdHM=</PHRASE>
<PHRASE Label="lu_topic_rate_confirm_duplicate_text" Type="0">WW91IGhhdmUgYWxyZWFkeSByYXRlZCB0aGlzIHRvcGlj</PHRASE>
<PHRASE Label="lu_topic_rate_confirm_text" Type="0">VGhhbmsgeW91IGZvciB2b3RpbmchICBZb3VyIGlucHV0IGhhcyBiZWVuIHJlY29yZGVkLg==</PHRASE>
<PHRASE Label="lu_articles" Type="0">QXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_Text_Root" Type="1">Um9vdA==</PHRASE>
<PHRASE Label="lu_lastupdate" Type="0">TGFzdCBVcGRhdGU=</PHRASE>
<PHRASE Label="la_Text_RootCategory" Type="1">TW9kdWxlIFJvb3QgQ2F0ZWdvcnk=</PHRASE>
<PHRASE Label="la_prompt_RootCategory" Type="1">U2VsZWN0IE1vZHVsZSBSb290IENhdGVnb3J5Og==</PHRASE>
<PHRASE Label="lu_ferror_review_duplicate" Type="0">WW91IGhhdmUgYWxyZWFkeSByZXZpZXdlZCB0aGlzIGl0ZW0u</PHRASE>
<PHRASE Label="lu_my_news_favorites" Type="0">RmF2b3JpdGUgQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="lu_news_rate_confirm_duplicate_text" Type="0">WW91IGhhdmUgYWxyZWFkeSByYXRlZCB0aGlzIGFydGljbGU=</PHRASE>
<PHRASE Label="lu_action_prompt" Type="0">SGVyZSBZb3UgQ2FuOg==</PHRASE>
<PHRASE Label="lu_action" Type="0">QWN0aW9u</PHRASE>
<PHRASE Label="lu_box" Type="0">Ym94</PHRASE>
<PHRASE Label="lu_subaction_prompt" Type="0">QWxzbyBZb3UgQ2FuOg==</PHRASE>
<PHRASE Label="la_text_db_warning" Type="1">UnVubmluZyB0aGlzIHV0aWxpdHkgd2lsbCBhZmZlY3QgeW91ciBkYXRhYmFzZS4gIFBsZWFzZSBiZSBhZHZpc2VkIHRoYXQgeW91IGNhbiB1c2UgdGhpcyB1dGlsaXR5IGF0IHlvdXIgb3duIHJpc2suICBJbnRlY2huaWMgQ29ycG9yYXRpb24gY2FuIG5vdCBiZSBoZWxkIGxpYWJsZSBmb3IgYW55IGNvcnJ1cHQgZGF0YSBvciBkYXRhIGxvc3Mu</PHRASE>
<PHRASE Label="la_prompt_sqlquery" Type="1">U1FMIFF1ZXJ5Og==</PHRASE>
<PHRASE Label="la_prompt_sqlquery_header" Type="1">UGVyZm9ybSBTUUwgUXVlcnk=</PHRASE>
<PHRASE Label="la_prompt_sqlquery_result" Type="1">U1FMIFF1ZXJ5IFJlc3VsdHM=</PHRASE>
<PHRASE Label="la_prompt_edit_query" Type="1">RWRpdCBRdWVyeQ==</PHRASE>
<PHRASE Label="la_tab_QueryDB" Type="1">UXVlcnkgRGF0YWJhc2U=</PHRASE>
<PHRASE Label="la_prompt_weight" Type="1">V2VpZ2h0</PHRASE>
<PHRASE Label="la_prompt_required_field_increase" Type="1">SW5jcmVhc2UgaW1wb3J0YW5jZSBpZiBmaWVsZCBjb250YWlucyBhIHJlcXVpcmVkIGtleXdvcmQgYnk=</PHRASE>
<PHRASE Label="la_prompt_relevence_percent" Type="1">U2VhcmNoIFJlbGV2YW5jZSBkZXBlbmRzIG9u</PHRASE>
<PHRASE Label="la_text_keyword" Type="1">S2V5d29yZA==</PHRASE>
<PHRASE Label="la_text_popularity" Type="1">UG9wdWxhcml0eQ==</PHRASE>
<PHRASE Label="la_prompt_relevence_settings" Type="1">U2VhcmNoIFJlbGV2ZW5jZSBTZXR0aW5ncw==</PHRASE>
<PHRASE Label="la_prompt_decimal" Type="2">RGVjaW1hbCBQb2ludA==</PHRASE>
<PHRASE Label="la_prompt_lang_dateformat" Type="2">RGF0ZSBGb3JtYXQ=</PHRASE>
<PHRASE Label="la_prompt_lang_timeformat" Type="0">VGltZSBGb3JtYXQ=</PHRASE>
<PHRASE Label="la_prompt_thousand" Type="2">VGhvdXNhbmRzIFNlcGFyYXRvcg==</PHRASE>
<PHRASE Label="la_Text_example" Type="2">RXhhbXBsZQ==</PHRASE>
<PHRASE Label="lu_fieldcustom__" Type="2" />
<PHRASE Label="la_Text_backup_access" Type="2">SW4tUG9ydGFsIGRvZXMgbm90IGhhdmUgYWNjZXNzIHRvIHdyaXRlIHRvIHRoaXMgZGlyZWN0b3J5</PHRASE>
<PHRASE Label="lu_searchtitle_link" Type="0">U2VhcmNoIExpbmtz</PHRASE>
<PHRASE Label="lu_search_type" Type="0">U2VhcmNoIFR5cGU=</PHRASE>
<PHRASE Label="lu_continue" Type="0">Q29udGludWU=</PHRASE>
<PHRASE Label="lu_and" Type="0">QW5k</PHRASE>
<PHRASE Label="lu_true" Type="0">VHJ1ZQ==</PHRASE>
<PHRASE Label="lu_false" Type="0">RmFsc2U=</PHRASE>
<PHRASE Label="lu_advsearch_any" Type="0">QW55</PHRASE>
<PHRASE Label="lu_advsearch_is" Type="0">SXMgRXF1YWwgVG8=</PHRASE>
<PHRASE Label="lu_advsearch_isnot" Type="0">SXMgTm90IEVxdWFsIFRv</PHRASE>
<PHRASE Label="lu_advsearch_contains" Type="0">Q29udGFpbnM=</PHRASE>
<PHRASE Label="lu_advsearch_notcontains" Type="0">RG9lcyBOb3QgQ29udGFpbg==</PHRASE>
<PHRASE Label="lu_searchtitle_category" Type="0">U2VhcmNoIENhdGVnb3JpZXM=</PHRASE>
<PHRASE Label="lu_searchtitle_article" Type="0">U2VhcmNoIEFydGljbGVz</PHRASE>
<PHRASE Label="lu_searchtitle_topic" Type="0">U2VhcmNoIFRvcGljcw==</PHRASE>
<PHRASE Label="la_language" Type="1">TGFuZ3VhZ2U=</PHRASE>
<PHRASE Label="la_users_subscriber_group" Type="2">QXNzaWduIG1haWxpbmcgbGlzdCBzdWJzY3JpYmVycyB0byBncm91cA==</PHRASE>
<PHRASE Label="lu_rootcategory_name" Type="0">SG9tZQ==</PHRASE>
<PHRASE Label="la_Description_in-portal:configuration_search" Type="2">Q29uZmlndXJlIENhdGVnb3J5IHNlYXJjaCBvcHRpb25z</PHRASE>
<PHRASE Label="la_Description_in-portal:configuration_email" Type="2">Q29uZmlndXJlIENhdGVnb3J5IEVtYWlsIEV2ZW50cw==</PHRASE>
<PHRASE Label="la_Description_in-portal:user_email" Type="2">Q29uZmlndXJlIFVzZXIgZW1haWwgZXZlbnRz</PHRASE>
<PHRASE Label="la_Description_in-portal:user_banlist" Type="2">TWFuYWdlIFVzZXIgQmFuIFJ1bGVz</PHRASE>
<PHRASE Label="la_Text_BanRules" Type="2">VXNlciBCYW4gUnVsZXM=</PHRASE>
<PHRASE Label="la_tab_UserBanList" Type="1">VXNlciBCYW4gTGlzdA==</PHRASE>
<PHRASE Label="la_Text_Allow" Type="1">QWxsb3c=</PHRASE>
<PHRASE Label="la_Description_in-link:inlink_general" Type="2">SW4tTGluayBHZW5lcmFsIENvbmZpZ3VyYXRpb24gT3B0aW9ucw==</PHRASE>
<PHRASE Label="la_Text_Rule" Type="2">UnVsZQ==</PHRASE>
<PHRASE Label="la_tab_Rule" Type="2">UnVsZSBQcm9wZXJ0aWVz</PHRASE>
<PHRASE Label="la_prompt_RuleType" Type="2">UnVsZSBUeXBl</PHRASE>
<PHRASE Label="la_prompt_ItemField" Type="2">SXRlbSBGaWVsZA==</PHRASE>
<PHRASE Label="la_prompt_ErrorTag" Type="2">RXJyb3IgVGFn</PHRASE>
<PHRASE Label="la_prompt_ItemValue" Type="2">RmllbGQgVmFsdWU=</PHRASE>
<PHRASE Label="la_prompt_ItemVerb" Type="2">RmllbGQgQ29tcGFyaXNvbg==</PHRASE>
<PHRASE Label="la_prompt_applyingbanlist" Type="2">QXBwbHlpbmcgQmFuIExpc3QgdG8gRXhpc3RpbmcgVXNlcnMuLg==</PHRASE>
<PHRASE Label="lu_forgot_pw_description" Type="1">RW50ZXIgeW91ciBVc2VybmFtZSBvciBFbWFpbCBBZGRyZXNzIGJlbG93IHRvIGhhdmUgeW91ciBhY2NvdW50IGluZm9ybWF0aW9uIHNlbnQgdG8gdGhlIGVtYWlsIGFkZHJlc3Mgb2YgeW91ciBhY2NvdW50Lg==</PHRASE>
<PHRASE Label="lu_ferror_forgotpw_nodata" Type="1">WW91IG11c3QgZW50ZXIgYSBVc2VybmFtZSBvciBFbWFpbCBBZGRyZXNzIHRvIHJldHJpdmUgeW91ciBhY2NvdW50IGluZm9ybWF0aW9u</PHRASE>
<PHRASE Label="lu_ferror_unknown_username" Type="1">VGhlIFVzZXJuYW1lIGNvdWxkIG5vdCBiZSBmb3VuZA==</PHRASE>
<PHRASE Label="lu_ferror_unknown_email" Type="1">VGhlIEVtYWlsIEFkZHJlc3MgY291bGQgbm90IGJlIGZvdW5kLg==</PHRASE>
<PHRASE Label="lu_ferror_loginboth" Type="1">Qm90aCBhIFVzZXJuYW1lIGFuZCBQYXNzd29yZCBpcyByZXF1aXJlZA==</PHRASE>
<PHRASE Label="lu_ferror_login_login_password" Type="1">UGxlYXNlIGVudGVyIHlvdXIgcGFzc3dvcmQgYW5kIHRyeSBhZ2Fpbg==</PHRASE>
<PHRASE Label="lu_ferror_login_login_user" Type="1">WW91IGRpZCBub3QgZW50ZXIgeW91ciBVc2VybmFtZQ==</PHRASE>
<PHRASE Label="la_tab_BanList" Type="1">VXNlciBCYW4gTGlzdA==</PHRASE>
<PHRASE Label="la_ColHeader_RuleType" Type="1">UnVsZSBUeXBl</PHRASE>
<PHRASE Label="la_Colheader_ItemField" Type="1">SXRlbSBGaWVsZA==</PHRASE>
<PHRASE Label="la_ColHeader_ItemVerb" Type="1">Q29tcGFyaXNvbiBPcGVyYXRvcg==</PHRASE>
<PHRASE Label="la_Colheader_ItemValue" Type="1">SXRlbSBWYWx1ZQ==</PHRASE>
<PHRASE Label="la_text_Contains" Type="1">Q29udGFpbnM=</PHRASE>
<PHRASE Label="la_Text_Unique" Type="1">SXMgVW5pcXVl</PHRASE>
<PHRASE Label="la_Text_IPAddress" Type="1">SVAgQWRkcmVzcw==</PHRASE>
<PHRASE Label="la_Text_Login" Type="1">VXNlcm5hbWU=</PHRASE>
<PHRASE Label="la_Text_FirstName" Type="1">Rmlyc3QgTmFtZQ==</PHRASE>
<PHRASE Label="la_Text_LastName" Type="1">TGFzdCBOYW1l</PHRASE>
<PHRASE Label="la_Text_Address" Type="1">QWRkcmVzcw==</PHRASE>
<PHRASE Label="la_Text_City" Type="1">Q2l0eQ==</PHRASE>
<PHRASE Label="la_Text_State" Type="1">U3RhdGU=</PHRASE>
<PHRASE Label="la_Text_Zip" Type="1">Wmlw</PHRASE>
<PHRASE Label="la_Text_Phone" Type="1">UGhvbmU=</PHRASE>
<PHRASE Label="la_Text_Any" Type="1">QW55</PHRASE>
<PHRASE Label="la_Text_Is" Type="1">SXM=</PHRASE>
<PHRASE Label="la_Text_IsNot" Type="1">SXMgTm90</PHRASE>
<PHRASE Label="la_Text_NotContains" Type="1">RG9lcyBOb3QgQ29udGFpbg==</PHRASE>
<PHRASE Label="la_Text_GreaterThan" Type="1">R3JlYXRlciBUaGFu</PHRASE>
<PHRASE Label="la_Text_LessThan" Type="1">TGVzcyBUaGFu</PHRASE>
<PHRASE Label="la_Text_Exists" Type="1">RXhpc3Rz</PHRASE>
<PHRASE Label="la_Text_Deny" Type="1">RGVueQ==</PHRASE>
<PHRASE Label="la_Description_in-news:innews_general" Type="2">SW4tTmV3eiBnZW5lcmFsIGNvbmZpZ3VyYXRpb24gb3B0aW9ucw==</PHRASE>
<PHRASE Label="la_Description_in-bulletin:inbulletin_general" Type="2">SW4tYnVsbGV0aW4gZ2VuZXJhbCBjb25maWd1cmF0aW9uIG9wdGlvbnM=</PHRASE>
<PHRASE Label="lu_field_linkid" Type="2">TGluayBJRA==</PHRASE>
<PHRASE Label="lu_field_name" Type="2">TmFtZQ==</PHRASE>
<PHRASE Label="lu_field_description" Type="2">RGVzY3JpcHRpb24=</PHRASE>
<PHRASE Label="lu_field_url" Type="2">VVJM</PHRASE>
<PHRASE Label="lu_field_createdon" Type="2">RGF0ZSBDcmVhdGVk</PHRASE>
<PHRASE Label="lu_field_modified" Type="2">TGFzdCBNb2RpZmllZCBEYXRl</PHRASE>
<PHRASE Label="lu_field_hits" Type="2">SGl0cw==</PHRASE>
<PHRASE Label="lu_field_cachedrating" Type="2">UmF0aW5n</PHRASE>
<PHRASE Label="lu_field_cachedvotesqty" Type="2">TnVtYmVyIG9mIFJhdGluZyBWb3Rlcw==</PHRASE>
<PHRASE Label="lu_field_cachedreviewsqty" Type="2">TnVtYmVyIG9mIFJldmlld3M=</PHRASE>
<PHRASE Label="lu_field_createdbyid" Type="2">Q3JlYXRlZCBCeSBVc2VyIElE</PHRASE>
<PHRASE Label="lu_field_modifiedbyid" Type="2">TW9kaWZpZWQgQnkgVXNlciBJRA==</PHRASE>
<PHRASE Label="lu_field_priority" Type="2">UHJpb3JpdHk=</PHRASE>
<PHRASE Label="lu_field_status" Type="2">U3RhdHVz</PHRASE>
<PHRASE Label="lu_field_resourceid" Type="2">UmVzb3VyY2UgSUQ=</PHRASE>
<PHRASE Label="lu_field_hotitem" Type="2">SXRlbSBJcyBIb3Q=</PHRASE>
<PHRASE Label="lu_field_popitem" Type="2">SXRlbSBJcyBQb3B1bGFy</PHRASE>
<PHRASE Label="lu_field_newitem" Type="2">SXRlbSBJcyBOZXc=</PHRASE>
<PHRASE Label="lu_field_orgid" Type="2">T3JpZ2lvbmFsIEl0ZW0gSUQ=</PHRASE>
<PHRASE Label="la_prompt_DupReviews" Type="2">QWxsb3cgRHVwbGljYXRlIFJldmlld3M=</PHRASE>
<PHRASE Label="la_prompt_DupRating" Type="2">QWxsb3cgRHVwbGljYXRlIFJhdGluZyBWb3Rlcw==</PHRASE>
<PHRASE Label="la_Text_Minute" Type="1">TWludXRl</PHRASE>
<PHRASE Label="la_Text_Hour" Type="1">SG91cg==</PHRASE>
<PHRASE Label="la_Text_Day" Type="1">RGF5</PHRASE>
<PHRASE Label="la_tab_ExportLang" Type="1">RXhwb3J0IExhbmd1YWdlIFBhY2s=</PHRASE>
<PHRASE Label="la_Text_Second" Type="1">U2Vjb25kcw==</PHRASE>
<PHRASE Label="la_Text_Week" Type="1">V2Vla3M=</PHRASE>
<PHRASE Label="la_Text_Month" Type="1">TW9udGhz</PHRASE>
<PHRASE Label="la_Text_Year" Type="1">WWVhcnM=</PHRASE>
<PHRASE Label="lu_field_topicid" Type="2">VG9waWMgSUQ=</PHRASE>
<PHRASE Label="lu_field_notifyowneronchanges" Type="2">Tm90aWZ5IE93bmVyIG9mIENoYW5nZXM=</PHRASE>
<PHRASE Label="lu_field_topictext" Type="2">VG9waWMgVGV4dA==</PHRASE>
<PHRASE Label="lu_field_posts" Type="0">VG9waWMgUG9zdHM=</PHRASE>
<PHRASE Label="lu_field_views" Type="0">Vmlld3M=</PHRASE>
<PHRASE Label="lu_field_ownerid" Type="2">T3duZXIgVXNlciBJRA==</PHRASE>
<PHRASE Label="lu_field_postedby" Type="2">UG9zdGVkIEJ5</PHRASE>
<PHRASE Label="lu_field_lastpostid" Type="2">TGFzdCBQb3N0IElE</PHRASE>
<PHRASE Label="la_prompt_ExportFileName" Type="2">RXhwb3J0IEZpbGVuYW1l</PHRASE>
<PHRASE Label="la_Text_Export" Type="2">RXhwb3J0</PHRASE>
<PHRASE Label="la_Text_Languages" Type="2">TGFuZ3VhZ2U=</PHRASE>
<PHRASE Label="lu_access_denied" Type="0">WW91IGRvIG5vdCBoYXZlIGFjY2VzcyB0byBwZXJmb3JtIHRoaXMgb3BlcmF0aW9u</PHRASE>
<PHRASE Label="lu_show_user_signatures" Type="0">U2hvdyBNeSBTaWduYXR1cmU=</PHRASE>
<PHRASE Label="la_password_info" Type="2">VG8gY2hhbmdlIHRoZSBwYXNzd29yZCwgZW50ZXIgdGhlIHBhc3N3b3JkIGhlcmUgYW5kIGluIHRoZSBib3ggYmVsb3c=</PHRASE>
<PHRASE Label="lu_fieldcustom__lc6" Type="2">bGM2</PHRASE>
<PHRASE Label="lu_fieldcustom__lc5" Type="2">bGM1</PHRASE>
<PHRASE Label="lu_fieldcustom__lc4" Type="2">bGM0</PHRASE>
<PHRASE Label="lu_fieldcustom__lc3" Type="2">bGMz</PHRASE>
<PHRASE Label="lu_fieldcustom__lc2" Type="2">bGMy</PHRASE>
<PHRASE Label="lu_fieldcustom__lc1" Type="2">bGMx</PHRASE>
<PHRASE Label="lu_fieldcustom__cc6" Type="2">Y2M2</PHRASE>
<PHRASE Label="lu_fieldcustom__cc5" Type="2">Y2M1</PHRASE>
<PHRASE Label="lu_fieldcustom__cc4" Type="2">Y2M0</PHRASE>
<PHRASE Label="lu_fieldcustom__cc3" Type="2">Y2Mz</PHRASE>
<PHRASE Label="lu_fieldcustom__cc2" Type="2">Y2My</PHRASE>
<PHRASE Label="lu_fieldcustom__uc6" Type="2">dWM2</PHRASE>
<PHRASE Label="lu_fieldcustom__cc1" Type="2">Y2Mx</PHRASE>
<PHRASE Label="lu_fieldcustom__uc5" Type="2">dWM1</PHRASE>
<PHRASE Label="lu_fieldcustom__uc4" Type="2">dWM0</PHRASE>
<PHRASE Label="lu_fieldcustom__uc3" Type="2">dWMz</PHRASE>
<PHRASE Label="lu_fieldcustom__uc2" Type="2">dWMy</PHRASE>
<PHRASE Label="la_Text_Results" Type="2">UmVzdWx0cw==</PHRASE>
<PHRASE Label="la_prompt_download_export" Type="2">RG93bmxvYWQgTGFuZ3VhZ2UgRXhwb3J0Og==</PHRASE>
<PHRASE Label="la_prompt_overwritephrases" Type="2">T3ZlcndyaXRlIEV4aXN0aW5nIFBocmFzZXM=</PHRASE>
<PHRASE Label="la_importlang_phrasewarning" Type="2">RW5hYmxpbmcgdGhpcyBvcHRpb24gd2lsbCB1bmRvIGFueSBjaGFuZ2VzIHlvdSBoYXZlIG1hZGUgdG8gZXhpc3RpbmcgcGhyYXNlcw==</PHRASE>
<PHRASE Label="lu_field_categoryid" Type="0">Q2F0ZWdvcnkgSWQ=</PHRASE>
<PHRASE Label="lu_field_parentid" Type="0">UGFyZW50IElk</PHRASE>
<PHRASE Label="lu_field_metakeywords" Type="0">TWV0YSBLZXl3b3Jkcw==</PHRASE>
<PHRASE Label="lu_field_cacheddescendantcatsqty" Type="0">TnVtYmVyIG9mIERlc2NlbmRhbnRz</PHRASE>
<PHRASE Label="lu_field_cachednavbar" Type="0">Q2F0ZWdvcnkgUGF0aA==</PHRASE>
<PHRASE Label="lu_field_parentpath" Type="0">UGFyZW50IENhdGVnb3J5IFBhdGg=</PHRASE>
<PHRASE Label="lu_field_metadescription" Type="0">TWV0YSBEZXNjcmlwdGlvbg==</PHRASE>
<PHRASE Label="la_prompt_continue" Type="1">Q29udGludWU=</PHRASE>
<PHRASE Label="la_Description_in-link:validation_list" Type="2">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBydW4gdmFsaWRhdGlvbiBvbiB0aGUgbGlua3M=</PHRASE>
<PHRASE Label="la_tab_LinkValidation" Type="2">TGluayBWYWxpZGF0aW9u</PHRASE>
<PHRASE Label="la_ColHeader_ValidationStatus" Type="2">U3RhdHVz</PHRASE>
<PHRASE Label="la_ColHeader_Name" Type="2">TGluayBOYW1l</PHRASE>
<PHRASE Label="la_ColHeader_ValidationTime" Type="2">VmFsaWRhdGVkIE9u</PHRASE>
<PHRASE Label="la_ColHeader_CreatedOn" Type="2">Q3JlYXRlZCBPbg==</PHRASE>
<PHRASE Label="la_Text_Not_Validated" Type="2">Tm90IFZhbGlkYXRlZA==</PHRASE>
<PHRASE Label="la_Text_Invalid" Type="2">SW52YWxpZA==</PHRASE>
<PHRASE Label="la_Text_Link_Validation" Type="2">VmFsaWRhdGluZyBMaW5rcw==</PHRASE>
<PHRASE Label="la_prompt_runlink_validation" Type="2">VmFsaWRhdGlvbiBQcm9ncmVzcw==</PHRASE>
<PHRASE Label="la_prompt_Expired" Type="0">RXhwaXJhdGlvbiBEYXRl</PHRASE>
<PHRASE Label="la_event_user.subscribe" Type="1">VXNlciBzdWJzY3JpYmVk</PHRASE>
<PHRASE Label="la_event_user.unsubscribe" Type="1">VXNlciB1bnN1YnNjcmliZWQ=</PHRASE>
<PHRASE Label="la_Description_in-portal:browse" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB5b3UgdG8gYnJvd3NlIHRoZSBjYXRhbG9nIGFuZCBtYW5hZ2UgY2F0ZWdvcmllcyBhbmQgaXRlbXM=</PHRASE>
<PHRASE Label="la_prompt_upload" Type="1">VXBsb2FkIGltYWdlIGZyb20gbG9jYWwgUEM=</PHRASE>
<PHRASE Label="la_prompt_remote_url" Type="1">VXNlIHJlbW90ZSBpbWFnZSAoVVJMKQ==</PHRASE>
<PHRASE Label="la_ColHeader_InheritFrom" Type="1">SW5oZXJpdGVkIEZyb20=</PHRASE>
<PHRASE Label="lu_PermName_favorites_desc" Type="2">QWxsb3cgZmF2b3JpdGVz</PHRASE>
<PHRASE Label="lu_PermName_Link.Review_Pending_desc" Type="2">UmV2aWV3IExpbmsgUGVuZGluZw==</PHRASE>
<PHRASE Label="lu_PermName_Link.Modify.Pending_desc" Type="2">TW9kaWZ5IExpbmsgUGVuZGluZw==</PHRASE>
<PHRASE Label="lu_PermName_Link.Owner.Modify_desc" Type="2">TGluayBNb2RpZnkgYnkgT3duZXI=</PHRASE>
<PHRASE Label="lu_PermName_Link.Owner.Modify.Pending_desc" Type="2">TGluayBNb2RpZnkgUGVuZGluZyBieSBPd25lcg==</PHRASE>
<PHRASE Label="lu_PermName_Link.Owner.Delete_desc" Type="2">TGluayBEZWxldGUgYnkgT3duZXI=</PHRASE>
<PHRASE Label="lu_PermName_News.Review.Pending_desc" Type="2">UmV2aWV3IE5ld3MgUGVuZGluZw==</PHRASE>
<PHRASE Label="la_origional_values" Type="1">T3JpZ2luYWwgVmFsdWVz</PHRASE>
<PHRASE Label="la_prompt_link_owner" Type="1">TGluayBPd25lcg==</PHRASE>
<PHRASE Label="la_taglib_link" Type="1">VGFnIExpYnJhcnk=</PHRASE>
<PHRASE Label="la_prompt_socket_blocking_mode" Type="1">VXNlIG5vbi1ibG9ja2luZyBzb2NrZXQgbW9kZQ==</PHRASE>
<PHRASE Label="la_Text_FrontOnly" Type="1">RnJvbnQtZW5kIE9ubHk=</PHRASE>
<PHRASE Label="la_ToolTip_Email_FrontOnly" Type="1">RnJvbnQgT25seQ==</PHRASE>
<PHRASE Label="la_ToolTip_Email_UserSelect" Type="1">U2VsZWN0IFVzZXI=</PHRASE>
<PHRASE Label="la_ToolTip_Email_Enable" Type="1">RW5hYmxl</PHRASE>
<PHRASE Label="la_ToolTip_Email_Disable" Type="1">RGlzYWJsZQ==</PHRASE>
<PHRASE Label="lu_field_portaluserid" Type="0">VXNlciBJRA==</PHRASE>
<PHRASE Label="lu_field_login" Type="0">TG9naW4gKFVzZXIgbmFtZSk=</PHRASE>
<PHRASE Label="lu_field_password" Type="0">UGFzc3dvcmQ=</PHRASE>
<PHRASE Label="lu_field_firstname" Type="0">Rmlyc3QgTmFtZQ==</PHRASE>
<PHRASE Label="lu_field_lastname" Type="0">TGFzdCBOYW1l</PHRASE>
<PHRASE Label="lu_field_email" Type="0">RS1tYWls</PHRASE>
<PHRASE Label="lu_field_phone" Type="0">VGVsZXBob25l</PHRASE>
<PHRASE Label="lu_field_street" Type="0">U3RyZWV0IEFkZHJlc3M=</PHRASE>
<PHRASE Label="lu_field_city" Type="0">Q2l0eQ==</PHRASE>
<PHRASE Label="lu_field_state" Type="0">U3RhdGU=</PHRASE>
<PHRASE Label="lu_field_zip" Type="0">WmlwIChQb3N0YWwpIENvZGU=</PHRASE>
<PHRASE Label="lu_field_country" Type="0">Q291bnRyeQ==</PHRASE>
<PHRASE Label="lu_field_dob" Type="0">RGF0ZSBvZiBCaXJ0aA==</PHRASE>
<PHRASE Label="lu_field_tz" Type="0">VGltZSBab25l</PHRASE>
<PHRASE Label="la_prompt_showgeneraltab" Type="1">U2hvdyBvbiB0aGUgZ2VuZXJhbCB0YWI=</PHRASE>
<PHRASE Label="la_prompt_heading" Type="1">SGVhZGluZw==</PHRASE>
<PHRASE Label="la_prompt_FieldPrompt" Type="1">RmllbGQgUHJvbXB0</PHRASE>
<PHRASE Label="la_prompt_InputType" Type="1">SW5wdXQgVHlwZQ==</PHRASE>
<PHRASE Label="la_prompt_valuelist" Type="1">TGlzdCBvZiBWYWx1ZXM=</PHRASE>
<PHRASE Label="la_Description_in-portal:configure_general" Type="1">VGhpcyBpcyBhIGdlbmVyYWwgY29uZmd1cmF0aW9uIHNlY3Rpb24=</PHRASE>
<PHRASE Label="la_prompt_NewsId" Type="1">TmV3cyBBcnRpY2xlIElE</PHRASE>
<PHRASE Label="la_ToolTip_Import_Langpack" Type="1">SW1wb3J0IGEgTGFnbnVhZ2UgUGFja2FnZQ==</PHRASE>
<PHRASE Label="la_ToolTip_Export" Type="0">RXhwb3J0</PHRASE>
<PHRASE Label="lu_forum_hdrwelcometext" Type="0">V2VsY29tZSB0byBJbi1idWxsZXRpbiBGb3J1bXMh</PHRASE>
<PHRASE Label="lu_new_posts" Type="0">Rm9ydW0gaGFzIG5ldyBwb3N0cw==</PHRASE>
<PHRASE Label="lu_no_new_posts" Type="0">Rm9ydW0gaGFzIG5vIG5ldyBwb3N0cw==</PHRASE>
<PHRASE Label="lu_forum_locked_for_posting" Type="0">Rm9ydW0gaXMgbG9ja2VkIGZvciBwb3N0aW5n</PHRASE>
<PHRASE Label="lu_unsorted_list" Type="0">VW5zb3J0ZWQgbGlzdA==</PHRASE>
<PHRASE Label="lu_sorted_list" Type="0">U29ydGVkIGxpc3Q=</PHRASE>
<PHRASE Label="lu_no_topics" Type="0">Tm8gVG9waWNz</PHRASE>
<PHRASE Label="lu_mailinglist" Type="0">TWFpbGluZyBMaXN0</PHRASE>
<PHRASE Label="lu_button_mailinglist" Type="0">U3Vic2NyaWJl</PHRASE>
<PHRASE Label="lu_prompt_subscribe" Type="0">RW50ZXIgeW91ciBlLW1haWwgYWRkcmVzcyB0byBzdWJzY3JpYmUgdG8gdGhlIG1haWxpbmcgbGlzdC4=</PHRASE>
<PHRASE Label="lu_legend" Type="0">TGVnZW5k</PHRASE>
<PHRASE Label="lu_default_smileys" Type="0">U2ltbGllcyBvbiBieSBkZWZhdWx0</PHRASE>
<PHRASE Label="lu_default_user_signatures" Type="0">U2lnbmF0dXJlcyBvbiBieSBkZWZhdWx0</PHRASE>
<PHRASE Label="la_ToolTip_New_label" Type="1">QWRkIG5ldyBsYWJlbA==</PHRASE>
<PHRASE Label="lu_no_favorites" Type="0">Tm8gZmF2b3JpdGVz</PHRASE>
<PHRASE Label="lu_field_newsid" Type="0">QXJ0aWNsZSBJRA==</PHRASE>
<PHRASE Label="lu_field_textformat" Type="0">QXJ0aWNsZSBUZXh0</PHRASE>
<PHRASE Label="lu_field_title" Type="0">QXJ0aWNsZSBUaXRsZQ==</PHRASE>
<PHRASE Label="lu_field_excerpt" Type="0">QXJ0aWNsZSBFeGNlcnB0</PHRASE>
<PHRASE Label="lu_field_author" Type="0">QXJ0aWNsZSBBdXRob3I=</PHRASE>
<PHRASE Label="lu_field_body" Type="0">QXJ0aWNsZSBCb2R5</PHRASE>
<PHRASE Label="lu_field_endon" Type="0">RW5kcyBPbg==</PHRASE>
<PHRASE Label="lu_field_leadstory" Type="0">TGVhZCBTdG9yeT8=</PHRASE>
<PHRASE Label="lu_field_leadcatstory" Type="0">Q2F0ZWdvcnkgTGVhZCBTdG9yeT8=</PHRASE>
<PHRASE Label="lu_field_startdate" Type="0">U3RhcnQgRGF0ZQ==</PHRASE>
<PHRASE Label="lu_field_archived" Type="0">QXJjaGl2ZSBEYXRl</PHRASE>
<PHRASE Label="lu_field_topictype" Type="0">VG9waWMgVHlwZQ==</PHRASE>
<PHRASE Label="lu_message" Type="0">TWVzc2FnZQ==</PHRASE>
<PHRASE Label="la_Delete_Confirm" Type="1">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGUgaXRlbShzKT8gVGhpcyBhY3Rpb24gY2Fubm90IGJlIHVuZG9uZS4=</PHRASE>
<PHRASE Label="la_title_edit_category" Type="1">RWRpdCBDYXRlZ29yeQ==</PHRASE>
<PHRASE Label="lu_link_addreview_confirm_text" Type="0">WW91ciByZXZpZXcgaGFzIGJlZW4gYWRkZWQ=</PHRASE>
<PHRASE Label="lu_no_items" Type="0">Tm8gSXRlbXM=</PHRASE>
<PHRASE Label="la_prompt_root_name" Type="1">Um9vdCBjYXRlZ29yeSBuYW1lIChsYW5ndWFnZSB2YXJpYWJsZSk=</PHRASE>
<PHRASE Label="la_tab_AdminUI" Type="1">QWRtaW5pc3RyYXRpb24gUGFuZWwgVUk=</PHRASE>
<PHRASE Label="la_valuelist_help" Type="1">RW50ZXIgbGlzdCBvZiB2YWx1ZXMgYW5kIHRoZWlyIGRlc2NyaXB0aW9ucywgbGlrZSAxPU9uZSwgMj1Ud28=</PHRASE>
<PHRASE Label="la_type_text" Type="1">VGV4dCBmaWVsZA==</PHRASE>
<PHRASE Label="la_type_select" Type="1">RHJvcCBkb3duIGZpZWxk</PHRASE>
<PHRASE Label="la_type_radio" Type="1">UmFkaW8gYnV0dG9ucw==</PHRASE>
<PHRASE Label="la_type_password" Type="1">UGFzc3dvcmQgZmllbGQ=</PHRASE>
<PHRASE Label="la_type_textarea" Type="1">VGV4dCBhcmVh</PHRASE>
<PHRASE Label="la_type_label" Type="1">TGFiZWw=</PHRASE>
<PHRASE Label="la_ToolTip_PrimaryGroup" Type="1">U2V0IFByaW1hcnkgR3JvdXA=</PHRASE>
<PHRASE Label="la_ToolTip_Ban" Type="1">QmFu</PHRASE>
<PHRASE Label="la_ToolTip_AddToGroup" Type="1">QWRkIFVzZXIgdG8gR3JvdXA=</PHRASE>
<PHRASE Label="la_ToolTip_DeleteFromGroup" Type="1">RGVsZXRlIFVzZXIgRnJvbSBHcm91cA==</PHRASE>
<PHRASE Label="la_ToolTip_RemoveUserFromGroup" Type="1">RGVsZXRlIFVzZXIgRnJvbSBHcm91cA==</PHRASE>
<PHRASE Label="la_ToolTip_New_Rule" Type="1">TmV3IFJ1bGU=</PHRASE>
<PHRASE Label="la_ToolTip_Apply_Rules" Type="1">QXBwbHkgUnVsZXM=</PHRASE>
<PHRASE Label="la_Description_in-link:configuration_search" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2Ugc2VhcmNoIHNldHRpbmdzIGFuZCBmaWVsZHM=</PHRASE>
<PHRASE Label="la_Description_in-link:configuration_email" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgZW1haWwgZXZlbnRz</PHRASE>
<PHRASE Label="la_Description_in-link:configuration_custom" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgY3VzdG9tIGZpZWxkcw==</PHRASE>
<PHRASE Label="la_link_perpage_short_prompt" Type="1">TnVtYmVyIG9mIGxpbmtzIHBlciBwYWdlIG9uIGEgc2hvcnQgbGlzdGluZw==</PHRASE>
<PHRASE Label="la_link_votestohot_prompt" Type="1">TWF4aW11bSBudW1iZXIgb2YgSE9UIGxpbmtz</PHRASE>
<PHRASE Label="la_link_MinVotes_prompt" Type="1">TWluaW11bSBudW1iZXIgb2Ygdm90ZXMgdG8gZW5hYmxlIGxpbmsgcmF0aW5n</PHRASE>
<PHRASE Label="la_ToolTip_ContinueValidation" Type="1">Q29udGludWUgTGluayBWYWxpZGF0aW9u</PHRASE>
<PHRASE Label="la_ToolTip_NewValidation" Type="1">U3RhcnQgTmV3IFZhbGlkYXRpb24=</PHRASE>
<PHRASE Label="la_ToolTip_ValidateSelected" Type="1">VmFsaWRhdGU=</PHRASE>
<PHRASE Label="la_ToolTip_ResetValidationStatus" Type="1">UmVzZXQgVmFsaWRhdGlvbiBTdGF0dXM=</PHRASE>
<PHRASE Label="la_Description_in-bulletin:configuration_censorship" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgY2Vuc29yZWQgd29yZHMgYW5kIHRoZWlyIHJlcGxhY2VtZW50cw==</PHRASE>
<PHRASE Label="la_Description_in-bulletin:configuration_emoticon" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2Ugc2ltbGV5cw==</PHRASE>
<PHRASE Label="la_Description_in-bulletin:configuration_custom" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBtYW5hZ2UgY3VzdG9tIGZpZWxkcw==</PHRASE>
<PHRASE Label="la_posts_subheading" Type="1">UG9zdHM=</PHRASE>
<PHRASE Label="la_Description_in-portal:log_summary" Type="1">VGhpcyBzZWN0aW9uIHNob3dzIHN1bW1hcnkgc3RhdGlzdGljcw==</PHRASE>
<PHRASE Label="la_Description_in-portal:searchlog" Type="1">VGhpcyBzZWN0aW9uIHNob3dzIHRoZSBzZWFyY2ggbG9nIGFuZCBhbGxvd3MgdG8gbWFuYWdlIGl0</PHRASE>
<PHRASE Label="la_Description_in-portal:sessionlog" Type="1">VGhpcyBzZWN0aW9uIHNob3dzIGFsbCBhY3RpdmUgc2Vzc2lvbnMgYW5kIGFsbG93cyB0byBtYW5hZ2UgdGhlbQ==</PHRASE>
<PHRASE Label="la_Description_in-portal:backup" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBwZXJmb3JtIHN5c3RlbSBiYWNrdXBz</PHRASE>
<PHRASE Label="la_Description_in-portal:restore" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBwZXJmb3JtIGRhdGFiYXNlIHJlc3RvcmVz</PHRASE>
<PHRASE Label="la_Description_in-portal:export" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBleHBvcnQgSW4tcG9ydGFsIGRhdGE=</PHRASE>
<PHRASE Label="la_Description_in-portal:sql_query" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBwZXJmb3JtIGRpcmVjdCBTUUwgcXVlcmllcyBvbiBJbi1wb3J0YWwgZGF0YWJhc2U=</PHRASE>
<PHRASE Label="la_Text_Restore_Heading" Type="1">SGVyZSB5b3UgY2FuIHJlc3RvcmUgeW91ciBkYXRhYmFzZSBmcm9tIGEgcHJldmlvdXNseSBiYWNrZWQgdXAgc25hcHNob3QuIFJlc3RvcmluZyB5b3VyIGRhdGFiYXNlIHdpbGwgZGVsZXRlIGFsbCBvZiB5b3VyIGN1cnJlbnQgZGF0YSBhbmQgbG9nIHlvdSBvdXQgb2YgdGhlIHN5c3RlbS4=</PHRASE>
<PHRASE Label="la_prompt_Root_Password" Type="1">UGxlYXNlIGVudGVyIHRoZSBSb290IHBhc3N3b3Jk</PHRASE>
<PHRASE Label="la_ToolTip_Primary" Type="1">U2V0IFByaW1hcnkgVGhlbWU=</PHRASE>
<PHRASE Label="la_Text_Table" Type="1">VGFibGU=</PHRASE>
<PHRASE Label="lu_of" Type="2">b2Y=</PHRASE>
<PHRASE Label="la_Text_backing_up" Type="1">QmFja2luZyB1cA==</PHRASE>
<PHRASE Label="la_text_Rows" Type="1">cm93KHMp</PHRASE>
<PHRASE Label="la_text_Bytes" Type="1">Ynl0ZXM=</PHRASE>
<PHRASE Label="la_prompt_export_error" Type="1">R2VuZXJhbCBlcnJvcjogdW5hYmxlIHRvIGV4cG9ydA==</PHRASE>
<PHRASE Label="la_Text_LangImport" Type="1">TGFuZ3VhZ2UgSW1wb3J0</PHRASE>
<PHRASE Label="la_lang_import_progress" Type="1">SW1wb3J0IHByb2dyZXNz</PHRASE>
<PHRASE Label="la_event_import_progress" Type="1">RW1haWwgZXZlbnRzIGltcG9ydCBwcm9ncmVzcw==</PHRASE>
<PHRASE Label="lu_pick" Type="0">UGljaw==</PHRASE>
<PHRASE Label="lu_disable" Type="0">RGlzYWJsZQ==</PHRASE>
<PHRASE Label="lu_forgotpw_confirm" Type="0">UGFzc3dvcmQgUmVxdWVzdCBDb25maXJtYXRpb24=</PHRASE>
<PHRASE Label="lu_forgotpw_confirm_text" Type="0">WW91IGhhdmUgY2hvc2VkIHRvIHJlc2V0IHlvdXIgcGFzc3dvcmQuIEEgbmV3IHBhc3N3b3JkIGhhcyBiZWVuIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5IHRoZSBzeXN0ZW0uIEl0IGhhcyBiZWVuIGVtYWlsZWQgdG8geW91ciBhZGRyZXNzIG9uIGZpbGUu</PHRASE>
<PHRASE Label="la_event_user.suggest" Type="1">U3VnZ2VzdCB0byBhIGZyaWVuZA==</PHRASE>
<PHRASE Label="lu_recommend_confirm" Type="0">UmVjb21tZW5kYXRpb24gQ29uZmlybWF0aW9u</PHRASE>
<PHRASE Label="lu_recommend_confirm_text" Type="0">VGhhbmtzIGZvciByZWNvbW1lbmRpbmcgb3VyIHNpdGUgdG8geW91ciBmcmllbmQuIFRoZSBlbWFpbCBoYXMgYmVlbiBzZW50IG91dC4=</PHRASE>
<PHRASE Label="la_prompt_sqlquery_error" Type="1">QW4gU1FMIGVycm9yIGhhcyBvY2N1cmVk</PHRASE>
<PHRASE Label="lu_title_confirm" Type="0">Q29uZmlybWF0aW9u</PHRASE>
<PHRASE Label="lu_addlink_confirm_pending" Type="0">QWRkIFBlbmRpbmcgTGluayBSZXN1bHRz</PHRASE>
<PHRASE Label="lu_link_review_confirm_pending" Type="0">TGluayBSZXZpZXcgUGVuZGluZw==</PHRASE>
<PHRASE Label="lu_SiteLead_Story" Type="0">U2l0ZSBMZWFkIFN0b3J5</PHRASE>
<PHRASE Label="lu_forum_hdrtext" Type="0">V2VsY29tZSB0byBJbi1wb3J0YWwgZm9ydW1zIQ==</PHRASE>
<PHRASE Label="lu_title_mailinglist" Type="0">TWFpbGluZyBMaXN0</PHRASE>
<PHRASE Label="lu_subscribe_confirm" Type="0">U3Vic2NyaXB0aW9uIENvbmZpcm1hdGlvbg==</PHRASE>
<PHRASE Label="lu_subscribe_confirm_prompt" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHN1YnNjcmliZSB0byBvdXIgbWFpbGluZyBsaXN0PyAoWW91IGNhbiB1bnN1YnNjcmliZSBhbnkgdGltZSBieSBlbnRlcmluZyB5b3VyIGVtYWlsIG9uIHRoZSBmcm9udCBwYWdlKS4=</PHRASE>
<PHRASE Label="lu_button_no" Type="0">Tm8=</PHRASE>
<PHRASE Label="lu_button_yes" Type="0">WWVz</PHRASE>
<PHRASE Label="lu_unsubscribe_confirm" Type="0">VW5zdWJzY3JpcHRpb24gQ29uZmlybWF0aW9u</PHRASE>
<PHRASE Label="lu_unsubscribe_confirm_prompt" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVuc3Vic2NyaWJlIGZyb20gb3VyIG1haWxpbmcgbGlzdD8gKFlvdSBjYW4gYWx3YXlzIHN1YnNjcmliZSBhZ2FpbiBieSBlbnRlcmluZyB5b3VyIGVtYWlsIGF0IHRoZSBob21lIHBhZ2Up</PHRASE>
<PHRASE Label="lu_unsubscribe_title" Type="0">VW5zdWJzY3JpYmU=</PHRASE>
<PHRASE Label="lu_unsubscribe_confirm_text" Type="0">V2UgYXJlIHNvcnJ5IHlvdSBoYXZlIHVuc3Vic2NyaWJlZCBmcm9tIG91ciBtYWlsaW5nIGxpc3Q=</PHRASE>
<PHRASE Label="lu_subscribe_title" Type="0">U3Vic2NyaWJlZA==</PHRASE>
<PHRASE Label="lu_subscribe_confirm_text" Type="0">VGhhbmsgeW91IGZvciBzdWJzY3JpYmluZyB0byBvdXIgbWFpbGluZyBsaXN0IQ==</PHRASE>
<PHRASE Label="lu_recommend" Type="0">UmVjb21tZW5k</PHRASE>
<PHRASE Label="lu_privacy" Type="0">UHJpdmFjeQ==</PHRASE>
<PHRASE Label="lu_CatLead_Story" Type="0">Q2F0ZWdvcnkgTGVhZCBTdG9yeQ==</PHRASE>
<PHRASE Label="la_text_min_username" Type="1">TWluaW11bSB1c2VyIG5hbWUgbGVuZ3Ro</PHRASE>
<PHRASE Label="la_text_min_password" Type="1">TWluaW11bSBwYXNzd29yZCBsZW5ndGg=</PHRASE>
<PHRASE Label="lu_fieldcustom__age" Type="2">QWdl</PHRASE>
<PHRASE Label="lu_button_unsubscribe" Type="0">VW5zdWJzY3JpYmU=</PHRASE>
<PHRASE Label="lu_fieldcustom__Sex" Type="2">U2V4</PHRASE>
<PHRASE Label="la_Text_BanUserFields" Type="1">QmFuIFVzZXIgSW5mb3JtYXRpb24=</PHRASE>
<PHRASE Label="la_prompt_ip" Type="1">SVAgQWRkcmVzcw==</PHRASE>
<PHRASE Label="la_Text_Ban" Type="1">QmFu</PHRASE>
<PHRASE Label="la_section_overview" Type="1">U2VjdGlvbiBPdmVydmlldw==</PHRASE>
<PHRASE Label="la_selecting_categories" Type="1">U2VsZWN0aW5nIENhdGVnb3JpZXM=</PHRASE>
<PHRASE Label="la_updating_config" Type="1">VXBkYXRpbmcgQ29uZmlndXJhdGlvbg==</PHRASE>
<PHRASE Label="la_updating_rules" Type="1">VXBkYXRpbmcgUnVsZXM=</PHRASE>
<PHRASE Label="la_performing_backup" Type="1">UGVyZm9ybWluZyBCYWNrdXA=</PHRASE>
<PHRASE Label="la_performing_restore" Type="1">UGVyZm9ybWluZyBSZXN0b3Jl</PHRASE>
<PHRASE Label="la_performing_export" Type="1">UGVyZm9ybWluZyBFeHBvcnQ=</PHRASE>
<PHRASE Label="la_performing_import" Type="1">UGVyZm9ybWluZyBJbXBvcnQ=</PHRASE>
<PHRASE Label="la_running_query" Type="1">UnVubmluZyBRdWVyeQ==</PHRASE>
<PHRASE Label="lu_topics_updated" Type="0">VG9waWNzIFVwZGF0ZWQ=</PHRASE>
<PHRASE Label="lu_user_exists" Type="0">VXNlciBhbHJlYWR5IGV4aXN0cw==</PHRASE>
<PHRASE Label="lu_ferror_m_register_password" Type="0">UGFzc3dvcmQgcmVxdWlyZWQ=</PHRASE>
<PHRASE Label="lu_ferror_m_register_firstname" Type="0">Rmlyc3QgbmFtZSBpcyByZXF1aXJlZA==</PHRASE>
<PHRASE Label="lu_ferror_m_register_email" Type="0">RW1haWwgaXMgcmVxdWlyZWQ=</PHRASE>
<PHRASE Label="lu_ferror_m_register_dob" Type="0">RGF0ZSBvZiBiaXJ0aCBpcyByZXF1aXJlZA==</PHRASE>
<PHRASE Label="lu_ferror_pswd_tooshort" Type="0">UGFzc3dvcmQgaXMgdG9vIHNob3J0</PHRASE>
<PHRASE Label="lu_subcats" Type="0">U3ViY2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="lu_ferror_username_tooshort" Type="0">VXNlciBuYW1lIGlzIHRvbyBzaG9ydA==</PHRASE>
<PHRASE Label="la_login" Type="1">TG9naW4=</PHRASE>
<PHRASE Label="lu_full_story" Type="0">RnVsbCBTdG9yeQ==</PHRASE>
<PHRASE Label="lu_rate_this_article" Type="0">UmF0ZSB0aGlzIGFydGljbGU=</PHRASE>
<PHRASE Label="lu_review_this_article" Type="0">UmV2aWV3IHRoaXMgYXJ0aWNsZQ==</PHRASE>
<PHRASE Label="lu_article_details" Type="0">QXJ0aWNsZSBEZXRhaWxz</PHRASE>
<PHRASE Label="lu_suggest_error" Type="0">Rm9ybSBFcnJvcg==</PHRASE>
<PHRASE Label="lu_suggest_no_address" Type="0">RS1tYWlsIGFkZHJlc3MgbWlzc2luZyBvciBpbnZhbGlk</PHRASE>
<PHRASE Label="lu_invalid_emailaddress" Type="0">RS1tYWlsIGFkZHJlc3MgbWlzc2luZyBvciBpbnZhbGlk</PHRASE>
<PHRASE Label="lu_subscribe_error" Type="0">Rm9ybSBFcnJvcg==</PHRASE>
<PHRASE Label="lu_subscribe_no_address" Type="0">RS1tYWlsIGFkZHJlc3MgbWlzc2luZyBvciBpbnZhbGlk</PHRASE>
<PHRASE Label="lu_search_error" Type="0">Rm9ybSBFcnJvcg==</PHRASE>
<PHRASE Label="lu_no_keyword" Type="0">S2V5d29yZCBtaXNzaW5n</PHRASE>
<PHRASE Label="la_Credits_Title" Type="1">Q3JlZGl0cw==</PHRASE>
<PHRASE Label="la_button_ok" Type="1">T0s=</PHRASE>
<PHRASE Label="lu_Jan" Type="0">SmFu</PHRASE>
<PHRASE Label="lu_Feb" Type="0">RmVi</PHRASE>
<PHRASE Label="lu_Mar" Type="0">TWFy</PHRASE>
<PHRASE Label="lu_Apr" Type="0">QXBy</PHRASE>
<PHRASE Label="lu_May" Type="0">TWF5</PHRASE>
<PHRASE Label="lu_Jun" Type="0">SnVu</PHRASE>
<PHRASE Label="lu_Jul" Type="0">SnVs</PHRASE>
<PHRASE Label="lu_Aug" Type="0">QXVn</PHRASE>
<PHRASE Label="lu_Sep" Type="0">U2Vw</PHRASE>
<PHRASE Label="lu_Oct" Type="0">T2N0</PHRASE>
<PHRASE Label="lu_Nov" Type="0">Tm92</PHRASE>
<PHRASE Label="lu_Dec" Type="0">RGVj</PHRASE>
<PHRASE Label="la_Showing_Stats" Type="1">U2hvd2luZyBTdGF0aXN0aWNz</PHRASE>
<PHRASE Label="la_Showing_Logs" Type="1">U2hvd2luZyBMb2dz</PHRASE>
<PHRASE Label="la_prompt_import_error" Type="1">SW1wb3J0IGVuY291bnRlcmVkIGFuIGVycm9yIGFuZCBkaWQgbm90IGNvbXBsZXRlLg==</PHRASE>
<PHRASE Label="la_text_ReadOnly" Type="1">UmVhZCBPbmx5</PHRASE>
<PHRASE Label="la_CreatedOn" Type="1">Q3JlYXRlZCBPbg==</PHRASE>
<PHRASE Label="la_prompt_html_version" Type="1">SFRNTCBWZXJzaW9u</PHRASE>
<PHRASE Label="la_prompt_text_version" Type="1">VGV4dCBWZXJzaW9u</PHRASE>
<PHRASE Label="la_none" Type="1">Tm9uZQ==</PHRASE>
<PHRASE Label="lu_none" Type="0">Tm9uZQ==</PHRASE>
<PHRASE Label="la_Show_Log" Type="1">U2hvd2luZyBMb2dz</PHRASE>
<PHRASE Label="la_step" Type="1">U3RlcA==</PHRASE>
<PHRASE Label="lu_errors_on_form" Type="0">TWlzc2luZyBvciBpbnZhbGlkIHZhbHVlcy4gUGxlYXNlIGNoZWNrIGFsbCB0aGUgZmllbGRzIGFuZCB0cnkgYWdhaW4u</PHRASE>
<PHRASE Label="la_text_sess_expired" Type="0">U2Vzc2lvbiBFeHBpcmVk</PHRASE>
<PHRASE Label="la_prompt_ActiveLinks" Type="1">QWN0aXZlIExpbmtz</PHRASE>
<PHRASE Label="lu_user_pending_aproval" Type="0">UGVuZGluZyBSZWdpc3RyYXRpb24gQ29tcGxldGU=</PHRASE>
<PHRASE Label="lu_error_subtitle" Type="0">RXJyb3I=</PHRASE>
<PHRASE Label="la_text_disclaimer_part1" Type="1">UnVubmluZyB0aGlzIHV0aWxpdHkgd2lsbCBhZmZlY3QgeW91ciBkYXRhYmFzZS4gUGxlYXNlIGJlIGFkdmlzZWQgdGhhdCB5b3UgY2FuIHVzZSB0aGlzIHV0aWxpdHkgYXQgeW91ciBvd24gcmlzay4gSW50ZWNobmljIENvcnBvcmF0aW9uIGNhbiBub3QgYmUgaGVsZCBsaWFibGUgZm9yIGFueSBjb3JydXB0IGRhdGEgb3IgZGF0YSBsb3NzLg==</PHRASE>
<PHRASE Label="la_text_disclaimer_part2" Type="1">UGxlYXNlIG1ha2Ugc3VyZSB0byBiYWNrIHVwIHlvdXIgZGF0YWJhc2UocykgYmVmb3JlIHJ1bm5pbmcgdGhpcyB1dGlsaXR5Lg==</PHRASE>
<PHRASE Label="la_Text_ComingSoon" Type="1">U2VjdGlvbiBDb21pbmcgU29vbg==</PHRASE>
<PHRASE Label="lu_prompt_recommend" Type="0">UmVjb21tZW5kIHRoaXMgc2l0ZSB0byBhIGZyaWVuZA==</PHRASE>
<PHRASE Label="lu_fieldcustom__uc1" Type="2">dWMx</PHRASE>
<PHRASE Label="la_Text_ShowingUsers" Type="1">U2hvd2luZyBVc2Vycw==</PHRASE>
<PHRASE Label="lu_operation_notallowed" Type="0">WW91IGRvIG5vdCBoYXZlIGFjY2VzcyB0byBwZXJmb3JtIHRoaXMgb3BlcmF0aW9u</PHRASE>
<PHRASE Label="lu_user_pending_aproval_text" Type="0">VGhhbmsgeW91IGZvciByZWdpc3RlcmluZy4gWW91ciByZWdpc3RyYXRpb24gaXMgcGVuZGluZyBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbC4=</PHRASE>
<PHRASE Label="la_prompt_EditorsPick" Type="1">RWRpdG9yJ3MgUGljaw==</PHRASE>
<PHRASE Label="lu_modify_link" Type="0">TW9kaWZ5IExpbms=</PHRASE>
<PHRASE Label="lu_modifylink_confirm" Type="0">TGluayBNb2RpZmljYXRpb24gQ29uZmlybWF0aW9u</PHRASE>
<PHRASE Label="lu_modifylink_confirm_text" Type="0">WW91ciBsaW5rIGhhcyBiZWVuIG1vZGlmaWVkLg==</PHRASE>
<PHRASE Label="la_approve_description" Type="1">QWN0aXZl</PHRASE>
<PHRASE Label="la_text_restore warning" Type="1">VGhlIHZlcnNpb25zIG9mIHRoZSBiYWNrdXAgYW5kIHlvdXIgY29kZSBkb24ndCBtYXRjaC4gWW91ciBpbnN0YWxsYXRpb24gd2lsbCBwcm9iYWJseSBiZSBub24gb3BlcmF0aW9uYWwu</PHRASE>
<PHRASE Label="la_prompt_approve_warning" Type="1">Q29udGludWUgdG8gcmVzdG9yZSBhdCBteSBvd24gcmlzaz8=</PHRASE>
<PHRASE Label="la_prompt_TopicLocked" Type="1">VG9waWMgTG9ja2Vk</PHRASE>
<PHRASE Label="la_prompt_PostsToLock" Type="1">UG9zdHMgdG8gbG9jaw==</PHRASE>
<PHRASE Label="la_Warning_Save_Item" Type="1">TW9kaWZpY2F0aW9ucyB3aWxsIG5vdCB0YWtlIGVmZmVjdCB1bnRpbCB5b3UgY2xpY2sgdGhlIFNhdmUgYnV0dG9uIQ==</PHRASE>
<PHRASE Label="la_Text_ShowingGroups" Type="1">U2hvd2luZyBHcm91cHM=</PHRASE>
<PHRASE Label="la_tab_GeneralSettings" Type="1">R2VuZXJhbCBTZXR0aW5ncw==</PHRASE>
<PHRASE Label="la_prompt_TopicsTotal" Type="1">VG90YWwgVG9waWNz</PHRASE>
<PHRASE Label="la_prompt_TopicsActive" Type="1">QWN0aXZlIFRvcGljcw==</PHRASE>
<PHRASE Label="la_prompt_TopicsPending" Type="1">UGVuZGluZyBUb3BpY3M=</PHRASE>
<PHRASE Label="la_prompt_TopicsDisabled" Type="1">RGlzYWJsZWQgVG9waWNz</PHRASE>
<PHRASE Label="la_prompt_NewTopics" Type="1">TmV3IFRvcGljcw==</PHRASE>
<PHRASE Label="la_prompt_EditorsPickTopics" Type="1">RWRpdG9yIFBpY2sgVG9waWNz</PHRASE>
<PHRASE Label="la_prompt_HotTopics" Type="1">SG90IFRvcGljcw==</PHRASE>
<PHRASE Label="la_prompt_PopularTopics" Type="1">UG9wdWxhciBUb3BpY3M=</PHRASE>
<PHRASE Label="la_prompt_TopicAverageRating" Type="1">VG9waWNzIEF2ZXJhZ2UgUmF0aW5n</PHRASE>
<PHRASE Label="la_prompt_MaxTopicHits" Type="1">VG9waWMgTWF4aW11bSBIaXRz</PHRASE>
<PHRASE Label="la_prompt_MaxTopicVotes" Type="1">VG9waWMgTWF4aW11bSBWb3Rlcw==</PHRASE>
<PHRASE Label="la_prompt_NewestTopicDate" Type="1">TmV3ZXN0IFRvcGljIERhdGU=</PHRASE>
<PHRASE Label="la_prompt_NewestTopicTime" Type="1">TmV3ZXN0IFRvcGljIFRpbWU=</PHRASE>
<PHRASE Label="la_prompt_LastUpdatedTopicDate" Type="1">TGFzdCBVcGRhdGVkIFRvcGljIERhdGU=</PHRASE>
<PHRASE Label="la_prompt_LastUpdatedTopicTime" Type="1">TGFzdCBVcGRhdGVkIFRvcGljIFRpbWU=</PHRASE>
<PHRASE Label="la_prompt_TopicReviews" Type="1">VG90YWwgVG9waWMgUmV2aWV3cw==</PHRASE>
<PHRASE Label="la_prompt_PostsTotal" Type="1">VG90YWwgUG9zdHM=</PHRASE>
<PHRASE Label="la_prompt_NewestPostDate" Type="1">TmV3ZXN0IFBvc3QgRGF0ZQ==</PHRASE>
<PHRASE Label="la_prompt_NewestPostTime" Type="1">TmV3ZXN0IFBvc3QgVGltZQ==</PHRASE>
<PHRASE Label="la_prompt_LastUpdatedPostDate" Type="1">TGFzdCBVcGRhdGVkIFBvc3QgRGF0ZQ==</PHRASE>
<PHRASE Label="la_prompt_LastUpdatedPostTime" Type="1">TGFzdCBVcGRhdGVkIFBvc3QgVGltZQ==</PHRASE>
<PHRASE Label="la_prompt_PendingLinks" Type="1">UGVuZGluZyBMaW5rcw==</PHRASE>
<PHRASE Label="la_prompt_DisabledLinks" Type="1">RGlzYWJsZWQgTGlua3M=</PHRASE>
<PHRASE Label="la_prompt_NewLinks" Type="1">TmV3IExpbmtz</PHRASE>
<PHRASE Label="la_prompt_EditorsPickLinks" Type="1">RWRpdG9yJ3MgUGljayBMaW5rcw==</PHRASE>
<PHRASE Label="la_prompt_HotLinks" Type="1">SG90IExpbmtz</PHRASE>
<PHRASE Label="la_prompt_PopularLinks" Type="1">UG9wdWxhciBMaW5rcw==</PHRASE>
<PHRASE Label="la_prompt_LinksAverageRating" Type="1">QXZlcmFnZSBSYXRpbmcgb2YgTGlua3M=</PHRASE>
<PHRASE Label="la_prompt_MaxLinksHits" Type="1">TWF4aW11bSBIaXRzIG9mIGEgTGluaw==</PHRASE>
<PHRASE Label="la_prompt_MaxLinksVotes" Type="1">TWF4aW11bSBWb3RlcyBvZiBhIExpbms=</PHRASE>
<PHRASE Label="la_prompt_NewestLinkDate" Type="1">TmV3ZXN0IExpbmsgRGF0ZQ==</PHRASE>
<PHRASE Label="la_prompt_LastLinkUpdate" Type="1">TGFzdCBVcGRhdGVkIExpbms=</PHRASE>
<PHRASE Label="la_prompt_LinkReviews" Type="1">VG90YWwgTGluayBSZXZpZXdz</PHRASE>
<PHRASE Label="la_prompt_ArticlesTotal" Type="1">VG90YWwgQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_prompt_ArticlesActive" Type="1">QWN0aXZlIEFydGljbGVz</PHRASE>
<PHRASE Label="la_prompt_ArticlesPending" Type="1">UGVuZGluZyBBcnRpY2xlcw==</PHRASE>
<PHRASE Label="la_prompt_DisabledArticles" Type="1">RGlzYWJsZWQgQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_prompt_ArticlesArchived" Type="1">QXJjaGl2ZWQgQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_prompt_NewArticles" Type="1">TmV3IEFydGljbGVz</PHRASE>
<PHRASE Label="la_prompt_EditorsPickArticles" Type="1">RWRpdG9yJ3MgUGljayBBcnRpY2xlcw==</PHRASE>
<PHRASE Label="la_prompt_HotArticles" Type="1">SG90IEFydGljbGVz</PHRASE>
<PHRASE Label="la_prompt_LeadStoryArticles" Type="1">TGVhZCBTdG9yeSBBcnRpY2xlcw==</PHRASE>
<PHRASE Label="la_prompt_CategoryLeadStoryArticles" Type="1">Q2F0ZWdvcnkgTGVhZCBTdG9yeSBBcnRpY2xlcw==</PHRASE>
<PHRASE Label="la_prompt_ArticleAverageRating" Type="1">QXZlcmFnZSBSYXRpbmcgb2YgQXJ0aWNsZXM=</PHRASE>
<PHRASE Label="la_prompt_PopularArticles" Type="1">UG9wdWxhciBBcnRpY2xlcw==</PHRASE>
<PHRASE Label="la_prompt_MaxHitsArticles" Type="1">TWF4aW11bSBIaXRzIG9mIGFuIEFydGljbGU=</PHRASE>
<PHRASE Label="la_prompt_MaxVotesArticles" Type="1">TWF4aW11bSBWb3RlcyBvZiBhbiBBcnRpY2xl</PHRASE>
<PHRASE Label="la_prompt_NewestArticleDate" Type="1">TmV3ZXN0IEFydGljbGUgRGF0ZQ==</PHRASE>
<PHRASE Label="la_prompt_LastArticleUpdate" Type="1">TGFzdCBVcGRhdGVkIEFydGljbGU=</PHRASE>
<PHRASE Label="la_prompt_ArticleReviews" Type="1">VG90YWwgQXJ0aWNsZSBSZXZpZXdz</PHRASE>
<PHRASE Label="la_prompt_TotalCategories" Type="1">VG90YWwgQ2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_prompt_PendingCategories" Type="1">UGVuZGluZyBDYXRlZ29yaWVz</PHRASE>
<PHRASE Label="la_prompt_DisabledCategories" Type="1">RGlzYWJsZWQgQ2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="la_prompt_NewCategories" Type="1">TmV3IENhdGVnb3JpZXM=</PHRASE>
<PHRASE Label="la_prompt_CategoryEditorsPick" Type="1">RWRpdG9yJ3MgUGljayBDYXRlZ29yaWVz</PHRASE>
<PHRASE Label="la_prompt_NewestCategoryDate" Type="1">TmV3ZXN0IENhdGVnb3J5IERhdGU=</PHRASE>
<PHRASE Label="la_prompt_LastCategoryUpdate" Type="1">TGFzdCBDYXRlZ29yeSBVcGRhdGU=</PHRASE>
<PHRASE Label="la_prompt_TopicsUsers" Type="1">VG90YWwgVXNlcnMgd2l0aCBUb3BpY3M=</PHRASE>
<PHRASE Label="la_prompt_UsersActive" Type="1">QWN0aXZlIFVzZXJz</PHRASE>
<PHRASE Label="la_prompt_UsersPending" Type="1">UGVuZGluZyBVc2Vycw==</PHRASE>
<PHRASE Label="la_prompt_UsersDisabled" Type="1">RGlzYWJsZWQgVXNlcnM=</PHRASE>
<PHRASE Label="la_prompt_NewestUserDate" Type="1">TmV3ZXN0IFVzZXIgRGF0ZQ==</PHRASE>
<PHRASE Label="la_prompt_UsersUniqueCountries" Type="1">TnVtYmVyIG9mIFVuaXF1ZSBDb3VudHJpZXMgb2YgVXNlcnM=</PHRASE>
<PHRASE Label="la_prompt_UsersUniqueStates" Type="1">TnVtYmVyIG9mIFVuaXF1ZSBTdGF0ZXMgb2YgVXNlcnM=</PHRASE>
<PHRASE Label="la_prompt_TotalUserGroups" Type="1">VG90YWwgVXNlciBHcm91cHM=</PHRASE>
<PHRASE Label="la_prompt_BannedUsers" Type="1">QmFubmVkIFVzZXJz</PHRASE>
<PHRASE Label="la_prompt_NonExpiredSessions" Type="1">Q3VycmVudGx5IEFjdGl2ZSBVc2VyIFNlc3Npb25z</PHRASE>
<PHRASE Label="la_prompt_ThemeCount" Type="1">TnVtYmVyIG9mIFRoZW1lcw==</PHRASE>
<PHRASE Label="la_prompt_RegionsCount" Type="1">TnVtYmVyIG9mIFJlZ2lvbiBQYWNrcw==</PHRASE>
<PHRASE Label="la_prompt_TablesCount" Type="1">TnVtYmVyIG9mIERhdGFiYXNlIFRhYmxlcw==</PHRASE>
<PHRASE Label="la_prompt_RecordsCount" Type="1">TnVtYmVyIG9mIERhdGFiYXNlIFJlY29yZHM=</PHRASE>
<PHRASE Label="la_prompt_SystemFileSize" Type="1">VG90YWwgU2l6ZSBvZiBTeXN0ZW0gRmlsZXM=</PHRASE>
<PHRASE Label="la_prompt_DataSize" Type="1">VG90YWwgU2l6ZSBvZiB0aGUgRGF0YWJhc2U=</PHRASE>
<PHRASE Label="la_megabytes" Type="1">TUI=</PHRASE>
<PHRASE Label="la_kilobytes" Type="1">S0I=</PHRASE>
<PHRASE Label="la_tag_library" Type="1">VGFnIExpYnJhcnk=</PHRASE>
<PHRASE Label="la_Warning_Filter" Type="1">QSBzZWFyY2ggb3IgYSBmaWx0ZXIgaXMgaW4gZWZmZWN0LiBZb3UgbWF5IG5vdCBiZSBzZWVpbmcgYWxsIG9mIHRoZSBkYXRhLg==</PHRASE>
<PHRASE Label="la_prompt_AdminId" Type="1">QWRtaW4gZ3JvdXA=</PHRASE>
<PHRASE Label="la_text_upgrade_disclaimer" Type="1">WW91ciBkYXRhIHdpbGwgYmUgbW9kaWZpZWQgZHVyaW5nIHRoZSB1cGdyYWRlLiBXZSBzdHJvbmdseSByZWNvbW1lbmQgdGhhdCB5b3UgbWFrZSBhIGJhY2t1cCBvZiB5b3VyIGRhdGFiYXNlLiBQcm9jZWVkIHdpdGggdGhlIHVwZ3JhZGU/</PHRASE>
<PHRASE Label="la_to" Type="1">dG8=</PHRASE>
<PHRASE Label="la_PrevUser" Type="1">UHJldmlvdXMgVXNlcg==</PHRASE>
<PHRASE Label="la_NextUser" Type="1">TmV4dCBVc2Vy</PHRASE>
<PHRASE Label="lu_locked_topic" Type="0">TG9ja2VkIHRvcGlj</PHRASE>
<PHRASE Label="lu_field_editorspick" Type="0">RWRpdG9yJ3MgcGljaw==</PHRASE>
<PHRASE Label="la_ToolTip_SendEmail" Type="1">U2VuZCBFLW1haWw=</PHRASE>
<PHRASE Label="la_title_Install" Type="1">SW5zdGFsbGF0aW9uIEhlbHA=</PHRASE>
<PHRASE Label="la_tab_Install" Type="1">SW5zdGFsbA==</PHRASE>
<PHRASE Label="la_PermName_SystemAccess.ReadOnly_desc" Type="1">UmVhZC1Pbmx5IEFjY2VzcyBUbyBEYXRhYmFzZQ==</PHRASE>
<PHRASE Label="la_Text_BackupPath" Type="1">QmFja3VwIFBhdGg=</PHRASE>
<PHRASE Label="la_config_backup_path" Type="1">QmFja3VwIFBhdGg=</PHRASE>
<PHRASE Label="lu_editors_picks" Type="0">RWRpdG9yJ3MgUGlja3M=</PHRASE>
<PHRASE Label="la_tab_AdvancedView" Type="1">QWR2YW5jZWQgVmlldw==</PHRASE>
<PHRASE Label="la_title_AdvancedView" Type="1">QWR2YW5jZWQgVmlldw==</PHRASE>
<PHRASE Label="la_error_duplicate_username" Type="1">VXNlcm5hbWUgeW91IGhhdmUgZW50ZXJlZCBhbHJlYWR5IGV4aXN0cyBpbiB0aGUgc3lzdGVtLCBwbGVhc2UgY2hvb3NlIGFub3RoZXIgdXNlcm5hbWUu</PHRASE>
<PHRASE Label="la_Description_in-portal:advanced_view" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB5b3UgdG8gbWFuYWdlIGNhdGVnb3JpZXMgYW5kIGl0ZW1zIGFjcm9zcyBhbGwgY2F0ZWdvcmllcw==</PHRASE>
<PHRASE Label="lu_pick_links" Type="0">RWRpdG9yJ3MgUGljayBMaW5rcw==</PHRASE>
<PHRASE Label="lu_pick_news" Type="0">RWRpdG9yJ3MgUGljayBBcnRpY2xlcw==</PHRASE>
<PHRASE Label="la_tab_EmailLog" Type="1">RW1haWwgTG9n</PHRASE>
<PHRASE Label="la_prompt_FromUsername" Type="1">RnJvbQ==</PHRASE>
<PHRASE Label="la_prompt_AddressTo" Type="1">U2VudCBUbw==</PHRASE>
<PHRASE Label="la_prompt_Event" Type="1">RXZlbnQ=</PHRASE>
<PHRASE Label="la_prompt_SentOn" Type="1">U2VudCBPbg==</PHRASE>
<PHRASE Label="la_tab_ServerInfo" Type="1">U2VydmVyIEluZm9ybWF0aW9u</PHRASE>
<PHRASE Label="la_Description_in-portal:server_info" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byB2aWV3IFBIUCBjb25maWd1cmF0aW9u</PHRASE>
<PHRASE Label="la_Description_in-portal:emaillog" Type="1">VGhpcyBzZWN0aW9uIHNob3dzIGFsbCBlLW1haWxzIHNlbnQgYnkgSW4tUG9ydGFs</PHRASE>
<PHRASE Label="la_Description_in-portal:main_import" Type="1">VGhpcyBzZWN0aW9uIGFsbG93cyB0byBwZXJmb3JtIGRhdGEgaW1wb3J0IGZyb20gb3RoZXIgc3lzdGVtcw==</PHRASE>
<PHRASE Label="la_prompt_DatabaseSettings" Type="1">RGF0YWJhc2UgU2V0dGluZ3M=</PHRASE>
<PHRASE Label="la_prompt_SqlType" Type="1">U2VydmVyIFR5cGU=</PHRASE>
<PHRASE Label="la_prompt_Server" Type="1">U2VydmVyIEhvc3RuYW1l</PHRASE>
<PHRASE Label="la_prompt_DbName" Type="1">U2VydmVyIERhdGFiYXNl</PHRASE>
<PHRASE Label="la_prompt_DbUsername" Type="1">RGF0YWJhc2UgVXNlciBOYW1l</PHRASE>
<PHRASE Label="la_prompt_DbPass" Type="1">U2VydmVyIFBhc3N3b3Jk</PHRASE>
<PHRASE Label="la_prompt_Import_Prefix" Type="1">VGFibGUgTmFtZSBQcmVmaXg=</PHRASE>
<PHRASE Label="lu_fieldcustom__user_msn" Type="2">dXNlcl9tc24=</PHRASE>
<PHRASE Label="lu_fieldcustom__user_icq" Type="2">dXNlcl9pY3E=</PHRASE>
<PHRASE Label="lu_fieldcustom__user_aim" Type="2">dXNlcl9haW0=</PHRASE>
<PHRASE Label="lu_fieldcustom__user_yahoo" Type="2">dXNlcl95YWhvbw==</PHRASE>
<PHRASE Label="lu_fieldcustom__user_website" Type="2">dXNlcl93ZWJzaXRl</PHRASE>
<PHRASE Label="lu_fieldcustom__user_occupation" Type="2">dXNlcl9vY2N1cGF0aW9u</PHRASE>
<PHRASE Label="lu_fieldcustom__user_interests" Type="2">dXNlcl9pbnRlcmVzdHM=</PHRASE>
<PHRASE Label="la_Show_EmailLog" Type="1">U2hvdyBFbWFpbCBMb2c=</PHRASE>
<PHRASE Label="la_error_copy_subcategory" Type="1">RXJyb3IgY29weWluZyBzdWJjYXRlZ29yaWVz</PHRASE>
<PHRASE Label="la_Selection_Empty" Type="1">RW1wdHkgc2VsZWN0aW9u</PHRASE>
<PHRASE Label="lu_lastpost" Type="0">TGFzdCBQb3N0</PHRASE>
<PHRASE Label="lu_rate_article" Type="0">UmF0ZSB0aGlzIGFydGljbGU=</PHRASE>
<PHRASE Label="lu_review_article" Type="0">UmV2aWV3IGFydGljbGU=</PHRASE>
<PHRASE Label="lu_article_reviews" Type="0">QXJ0aWNsZSBSZXZpZXdz</PHRASE>
<PHRASE Label="lu_review_news" Type="0">UmV2aWV3IG5ld3MgYXJ0aWNsZQ==</PHRASE>
<PHRASE Label="lu_news_review_confirm" Type="0">VGhlIHJldmlldyBoYXMgYmVlbiBhZGRlZA==</PHRASE>
<PHRASE Label="lu_news_addreview_confirm_text" Type="0">VGhlIGFydGljbGUgcmV2aWV3IGhhcyBiZWVuIGFkZGVkIHRvIHRoZSBkYXRhYmFzZS4=</PHRASE>
<PHRASE Label="lu_hot_links" Type="0">SG90IExpbmtz</PHRASE>
<PHRASE Label="lu_show" Type="0">U2hvdw==</PHRASE>
<PHRASE Label="lu_ascending" Type="0">QXNjZW5kaW5n</PHRASE>
<PHRASE Label="lu_descending" Type="0">RGVzY2VuZGluZw==</PHRASE>
<PHRASE Label="lu_button_go" Type="0">R28=</PHRASE>
<PHRASE Label="lu_sort_by" Type="0">U29ydA==</PHRASE>
<PHRASE Label="lu_text_keyword" Type="0">S2V5d29yZA==</PHRASE>
<PHRASE Label="lu_select_theme" Type="0">U2VsZWN0IFRoZW1l</PHRASE>
<PHRASE Label="lu_users_online" Type="0">VXNlcnMgT25saW5l</PHRASE>
<PHRASE Label="lu_fieldcustom__test" Type="2">VGVzdA==</PHRASE>
<PHRASE Label="test 1" Type="0">dGVzdCAy</PHRASE>
<PHRASE Label="lu_pick_topics" Type="0">RWRpdG9yJ3MgcGljayB0b3BpY3M=</PHRASE>
<PHRASE Label="lu_total_topics" Type="0">VG90YWwgVG9waWNz</PHRASE>
<PHRASE Label="lu_addlink_confirm_pending_text" Type="0">WW91ciBsaW5rIGhhcyBiZWVuIGFkZGVkIHBlbmRpbmcgYWRtaW5pc3RyYXRpdmUgYXBwcm92YWwu</PHRASE>
<PHRASE Label="lu_pm_list" Type="0">UHJpdmF0ZSBNZXNzYWdlcw==</PHRASE>
<PHRASE Label="lu_no_session_error" Type="0">RXJyb3I6IG5vIHNlc3Npb24=</PHRASE>
<PHRASE Label="lu_default_notify_pm" Type="0">UmVjZWl2ZSBQcml2YXRlIE1lc3NhZ2UgTm90aWZpY2F0aW9ucw==</PHRASE>
<PHRASE Label="lu_send_pm" Type="0">U2VuZCBQcml2YXRlIE1lc3NhZ2U=</PHRASE>
<PHRASE Label="lu_new_pm" Type="0">TmV3IFByaXZhdGUgTWVzc2FnZQ==</PHRASE>
<PHRASE Label="lu_to" Type="0">VG8=</PHRASE>
<PHRASE Label="lu_add_pm" Type="0">U2VuZCBQcml2YXRlIE1lc3NhZ2U=</PHRASE>
<PHRASE Label="lu_in_this_message" Type="0">SW4gdGhpcyBtZXNzYWdl</PHRASE>
<PHRASE Label="lu_newpm_confirm" Type="0">TmV3IFByaXZhdGUgTWVzc2FnZSBDb25maXJtYXRpb24=</PHRASE>
<PHRASE Label="lu_newpm_confirm_text" Type="0">WW91ciBwcml2YXRlIG1lc3NhZ2UgaGFzIGJlZW4gc2VudC4=</PHRASE>
<PHRASE Label="lu_private_messages" Type="0">UHJpdmF0ZSBNZXNzYWdlcw==</PHRASE>
<PHRASE Label="lu_new_private_message" Type="0">TmV3IHByaXZhdGUgbWVzc2FnZQ==</PHRASE>
<PHRASE Label="lu_inbox" Type="0">SW5ib3g=</PHRASE>
<PHRASE Label="lu_sent" Type="0">U2VudA==</PHRASE>
<PHRASE Label="lu_created" Type="0">Y3JlYXRlZA==</PHRASE>
<PHRASE Label="lu_from" Type="0">RnJvbQ==</PHRASE>
<PHRASE Label="lu_pm_delete_confirm" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIHByaXZhdGUgbWVzc2FnZT8=</PHRASE>
<PHRASE Label="la_module_not_licensed" Type="1">TW9kdWxlIG5vdCBsaWNlbnNlZA==</PHRASE>
<PHRASE Label="la_tab_upgrade_license" Type="1">VXBkYXRlIExpY2Vuc2U=</PHRASE>
<PHRASE Label="la_Text_Update_Licence" Type="1">VXBkYXRlIExpY2Vuc2U=</PHRASE>
<PHRASE Label="lu_suggest_category_pending" Type="0">Q2F0ZWdvcnkgU3VnZ2VzdGVkIChQZW5kaW5nIEFwcHJvdmFsKQ==</PHRASE>
<PHRASE Label="lu_addcat_confirm_pending" Type="0">Q2F0ZWdvcnkgQWRkZWQgUGVuZGluZyBBcHByb3ZhbA==</PHRASE>
<PHRASE Label="lu_addcat_confirm_pending_text" Type="0">WW91ciBjYXRlZ29yeSBzdWdnZXN0aW9uIGhhcyBiZWVuIGFjY2VwdGVkIGFuZCBpcyBwZW5kaW5nIGFkbWluaXN0cmF0aXZlIGFwcHJvdmFsLg==</PHRASE>
<PHRASE Label="la_bb" Type="1">SW1wb3J0ZWQ=</PHRASE>
<PHRASE Label="lu_ferror_m_acctinfo_firstname" Type="0">TWlzc2luZyBmaXJzdCBuYW1l</PHRASE>
<PHRASE Label="lu_view_pm" Type="0">VmlldyBQTQ==</PHRASE>
<PHRASE Label="lu_recipient_doesnt_exist" Type="0">VXNlciBkb2VzIG5vdCBleGlzdA==</PHRASE>
<PHRASE Label="la_event_pm.add" Type="1">TmV3IFByaXZhdGUgTWVzc2FnZQ==</PHRASE>
<PHRASE Label="la_restore_file_not_found" Type="1">RmlsZSBub3QgZm91bmQ=</PHRASE>
<PHRASE Label="la_restore_access_denied" Type="1">QWNjZXNzIGRlbmllZA==</PHRASE>
<PHRASE Label="la_restore_file_error" Type="1">RmlsZSBlcnJvcg==</PHRASE>
<PHRASE Label="la_restore_read_error" Type="1">VW5hYmxlIHRvIHJlYWQgZnJvbSBmaWxl</PHRASE>
<PHRASE Label="la_restore_unknown_error" Type="1">QW4gdW5kZWZpbmVkIGVycm9yIGhhcyBvY2N1cmVk</PHRASE>
<PHRASE Label="la_text_review" Type="1">UmV2aWV3</PHRASE>
<PHRASE Label="la_title_searchresults" Type="1">U2VhcmNoIFJlc3VsdHM=</PHRASE>
<PHRASE Label="la_tooltip_cancel" Type="1">Q2FuY2Vs</PHRASE>
<PHRASE Label="la_prevcategory" Type="1">UHJldmlvdXMgY2F0ZWdvcnk=</PHRASE>
<PHRASE Label="la_nextcategory" Type="1">TmV4dCBjYXRlZ29yeQ==</PHRASE>
<PHRASE Label="la_prompt_charset" Type="1">Q2hhcnNldA==</PHRASE>
<PHRASE Label="la_text_custom" Type="1">Q3VzdG9t</PHRASE>
<PHRASE Label="la_text_multipleshow" Type="1">U2hvdyBtdWx0aXBsZQ==</PHRASE>
<PHRASE Label="la_prompt_multipleshow" Type="1">U2hvdyBtdWx0aXBsZQ==</PHRASE>
<PHRASE Label="la_text_minkeywordlength" Type="1">TWluaW11bSBrZXl3b3JkIGxlbmd0aA==</PHRASE>
<PHRASE Label="la_prompt_minkeywordlength" Type="1">TWluaW11bSBrZXl3b3JkIGxlbmd0aA==</PHRASE>
<PHRASE Label="la_warning_primary_delete" Type="1">WW91IGFyZSBhYm91dCB0byBkZWxldGUgdGhlIHByaW1hcnkgdGhlbWUuIENvbnRpbnVlPw==</PHRASE>
<PHRASE Label="la_tooltip_save" Type="1">U2F2ZQ==</PHRASE>
<PHRASE Label="la_tooltip_close" Type="1">Q2xvc2U=</PHRASE>
<PHRASE Label="la_title_sendmailcancel" Type="1">Q2FuY2VsIHNlbmRpbmcgbWFpbA==</PHRASE>
<PHRASE Label="la_help_in_progress" Type="1">VGhpcyBoZWxwIHNlY3Rpb24gZG9lcyBub3QgeWV0IGV4aXN0LCBpdCdzIGNvbWluZyBzb29uIQ==</PHRASE>
<PHRASE Label="la_tooltip_previousstep" Type="1">UHJldmlvdXMgc3RlcA==</PHRASE>
<PHRASE Label="la_tooltip_nextstep" Type="1">TmV4dCBzdGVw</PHRASE>
<PHRASE Label="la_prompt_movedown" Type="1">TW92ZSBkb3du</PHRASE>
<PHRASE Label="la_prompt_moveup" Type="1">TW92ZSB1cA==</PHRASE>
<PHRASE Label="la_prompt_delete" Type="1">RGVsZXRl</PHRASE>
<PHRASE Label="la_prompt_edit" Type="1">RWRpdA==</PHRASE>
<PHRASE Label="la_tab_modules" Type="1">TW9kdWxlcw==</PHRASE>
<PHRASE Label="la_title_select_item" Type="1">U2VsZWN0IGl0ZW0=</PHRASE>
<PHRASE Label="la_title_select_target_item" Type="1">U2VsZWN0IGl0ZW0=</PHRASE>
<PHRASE Label="la_text_advanced" Type="1">QWR2YW5jZWQ=</PHRASE>
<PHRASE Label="la_text_prerequisit_not_passed" Type="1">UHJlcmVxdWlzaXRlIG5vdCBmdWxmaWxsZWQsIGluc3RhbGxhdGlvbiBjYW5ub3QgY29udGludWUh</PHRASE>
<PHRASE Label="la_category" Type="1">Q2F0ZWdvcnk=</PHRASE>
<PHRASE Label="la_prevgroup" Type="1">UHJldmlvdXMgZ3JvdXA=</PHRASE>
<PHRASE Label="la_nextgroup" Type="1">TmV4dCBncm91cA==</PHRASE>
<PHRASE Label="la_ban_login" Type="1">QmFuIHVzZXIgbmFtZQ==</PHRASE>
<PHRASE Label="la_ban_email" Type="1">QmFuIGVtYWlsIGFkZHJlc3M=</PHRASE>
<PHRASE Label="la_ban_ip" Type="1">QmFuIElQIGFkZHJlc3M=</PHRASE>
<PHRASE Label="la_bytes" Type="1">Ynl0ZXM=</PHRASE>
<PHRASE Label="la_gigabytes" Type="1">Z2lnYWJ5dGUocyk=</PHRASE>
<PHRASE Label="la_terabytes" Type="1">dGVyYWJ5dGUocyk=</PHRASE>
<PHRASE Label="la_title_reviews" Type="1">UmV2aWV3cw==</PHRASE>
<PHRASE Label="la_tab_taglibrary" Type="1">VGFnIGxpYnJhcnk=</PHRASE>
<PHRASE Label="la_tab_userban" Type="1">QmFuIHVzZXI=</PHRASE>
<PHRASE Label="la_title_category_relationselect" Type="1">U2VsZWN0IHJlbGF0aW9u</PHRASE>
<PHRASE Label="la_title_category_select" Type="1">U2VsZWN0IGNhdGVnb3J5</PHRASE>
<PHRASE Label="la_title_groupselect" Type="1">U2VsZWN0IGdyb3Vw</PHRASE>
<PHRASE Label="la_title_userselect" Type="1">U2VsZWN0IHVzZXI=</PHRASE>
<PHRASE Label="la_tab_label" Type="1">TGFiZWw=</PHRASE>
<PHRASE Label="la_title_label" Type="1">TGFiZWw=</PHRASE>
<PHRASE Label="la_title_sendmail" Type="1">U2VuZCBlbWFpbA==</PHRASE>
<PHRASE Label="la_text_denied" Type="1">RGVuaWVk</PHRASE>
<PHRASE Label="la_text_quicklinks" Type="1">UXVpY2sgbGlua3M=</PHRASE>
<PHRASE Label="la_rootpass_verify_error" Type="1">RXJyb3IgdmVyaWZ5aW5nIHBhc3N3b3Jk</PHRASE>
<PHRASE Label="la_text_types" Type="1">dHlwZXM=</PHRASE>
<PHRASE Label="la_by_theme" Type="1">QnkgdGhlbWU=</PHRASE>
<PHRASE Label="la_front_end" Type="1">RnJvbnQgZW5k</PHRASE>
<PHRASE Label="la_prompt_all_templates" Type="1">QWxsIHRlbXBsYXRlcw==</PHRASE>
<PHRASE Label="la_prompt_parent_templates" Type="1">UGFyZW50IHRlbXBsYXRlcw==</PHRASE>
<PHRASE Label="lu_resetpw_confirm_text" Type="0">QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlc2V0IHRoZSBwYXNzd29yZD8=</PHRASE>
<PHRASE Label="lu_code_expired" Type="0">UGFzc3dvcmQgcmVzZXQgaGFzIGNvZGUgZXhwaXJlZA==</PHRASE>
<PHRASE Label="lu_code_is_not_valid" Type="0">UGFzc3dvcmQgcmVzZXQgY29kZSBpcyBub3QgdmFsaWQ=</PHRASE>
<PHRASE Label="lu_ferror_reset_denied" Type="0">WW91IGhhdmUgYWxyZWFkeSByZXF1ZXN0ZWQgYSBwYXNzd29yZCByZXNldC4gUGxlYXNlIHdhaXQgYmVmb3JlIHJlc2V0dGluZyBpdCBhZ2FuLg==</PHRASE>
<PHRASE Label="lu_cookies_error" Type="0">UGxlYXNlIGVuYWJsZSBjb29raWVzIHRvIGxvZ2luIQ==</PHRASE>
<PHRASE Label="lu_subscribe_banned" Type="0">U3Vic2NyaXB0aW9uIGRlbmllZA==</PHRASE>
<PHRASE Label="lu_subscribe_unknown_error" Type="0">VW5kZWZpbmVkIGVycm9yIG9jY3VycmVkLCBzdWJzY3JpcHRpb24gbm90IGNvbXBsZXRlZA==</PHRASE>
<PHRASE Label="lu_subscribe_success" Type="0">U3Vic2NyaXB0aW9uIHN1Y2Nlc3NmdWw=</PHRASE>
<PHRASE Label="lu_subscribe_missing_address" Type="0">TWlzc2luZyBlbWFpbCBhZGRyZXNz</PHRASE>
<PHRASE Label="lu_ferror_pswd_mismatch" Type="0">UGFzc3dvcmRzIGRvIG5vdCBtYXRjaA==</PHRASE>
<PHRASE Label="lu_ferror_pswd_toolong" Type="0">VGhlIHBhc3N3b3JkIGlzIHRvbyBsb25n</PHRASE>
<PHRASE Label="lu_ferror_m_profile_userid" Type="0">TWlzc2luZyB1c2Vy</PHRASE>
<PHRASE Label="lu_ferror_no_access" Type="0">QWNjZXNzIGRlbmllZA==</PHRASE>
<PHRASE Label="lu_ferror_wrongtype" Type="0">V3JvbmcgZmlsZSB0eXBl</PHRASE>
<PHRASE Label="lu_ferror_toolarge" Type="0">RmlsZSBpcyB0b28gbGFyZ2U=</PHRASE>
<PHRASE Label="la_review_alreadyreviewed" Type="1">VGhpcyBpdGVtIGhhcyBhbHJlYWR5IGJlZW4gcmV2aWV3ZWQ=</PHRASE>
<PHRASE Label="la_review_added" Type="1">UmV2aWV3IGFkZGVkIHN1Y2Nlc3NmdWxseQ==</PHRASE>
<PHRASE Label="la_review_error" Type="1">RXJyb3IgYWRkaW5nIHJldmlldw==</PHRASE>
<PHRASE Label="la_configerror_review" Type="1">UmV2aWV3IG5vdCBhZGRlZCBkdWUgdG8gYSBzeXN0ZW0gZXJyb3I=</PHRASE>
<PHRASE Label="lu_keywords_tooshort" Type="0">S2V5d29yZCBpcyB0b28gc2hvcnQ=</PHRASE>
<PHRASE Label="lu_unknown_error" Type="0">U3lzdGVtIGVycm9yIGhhcyBvY2N1cmVk</PHRASE>
<PHRASE Label="lu_guest" Type="0">R3Vlc3Q=</PHRASE>
<PHRASE Label="lu_profile_field" Type="0">UHJvZmlsZQ==</PHRASE>
<PHRASE Label="la_error_move_subcategory" Type="1">RXJyb3IgbW92aW5nIHN1YmNhdGVnb3J5</PHRASE>
<PHRASE Label="la_text_address_denied" Type="1">TG9naW4gbm90IGFsbG93ZWQgZnJvbSB0aGlzIGFkZHJlc3M=</PHRASE>
<PHRASE Label="lu_read_error" Type="0">VW5hYmxlIHRvIHJlYWQgZnJvbSBmaWxl</PHRASE>
<PHRASE Label="lu_no_template_error" Type="0">TWlzc2luZyB0ZW1wbGF0ZQ==</PHRASE>
<PHRASE Label="lu_favorite" Type="0">RmF2b3JpdGU=</PHRASE>
<PHRASE Label="lu_confirm" Type="0">Y29uZmlybQ==</PHRASE>
<PHRASE Label="lu_confirmation_title" Type="0">Q29uZmlybWF0aW9uIFRpdGxl</PHRASE>
<PHRASE Label="lu_confirm_subtitle" Type="0">Q29uZmlybWF0aW9uIFN1YnRpdGxl</PHRASE>
<PHRASE Label="lu_confirm_text" Type="0">Q29uZmlybWF0aW9uIHRleHQ=</PHRASE>
<PHRASE Label="lu_favorite_denied" Type="0">VW5hYmxlIHRvIGFkZCBmYXZvcml0ZSwgYWNjZXNzIGRlbmllZA==</PHRASE>
<PHRASE Label="lu_forgotpw_confirm_reset" Type="0">Q29uZmlybSBwYXNzd29yZCByZXNldA==</PHRASE>
<PHRASE Label="lu_forgotpw_confirm_text_reset" Type="0">UGxlYXNlIGNvbmZpcm0gdGhhdCB5b3Ugd2FudCB0byByZXNldCB5b3VyIHBhc3N3b3JkLg==</PHRASE>
<PHRASE Label="lu_pm_list_description" Type="0">UHJpdmF0ZSBNZXNzYWdlcw==</PHRASE>
<PHRASE Label="lu_rate_access_denied" Type="0">VW5hYmxlIHRvIHJhdGUsIGFjY2VzcyBkZW5pZWQ=</PHRASE>
<PHRASE Label="lu_review_access_denied" Type="0">VW5hYmxlIHRvIHJldmlldywgYWNjZXNzIGRlbmllZA==</PHRASE>
<PHRASE Label="lu_close" Type="0">Q2xvc2U=</PHRASE>
<PHRASE Label="lu_items_since_last" Type="0">SXRlbXMgc2luY2UgbGFzdCBsb2dpbg==</PHRASE>
<PHRASE Label="lu_min_pw_reset_interval" Type="0">UGFzc3dvcmQgcmVzZXQgaW50ZXJ2YWw=</PHRASE>
<PHRASE Label="lu_link_addreview_confirm_pending_text" Type="0">WW91ciByZXZpZXcgaGFzIGJlZW4gYWRkZWQgcGVuZGluZyBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbA==</PHRASE>
<PHRASE Label="lu_my_link_favorites" Type="0">TXkgRmF2b3JpdGVz</PHRASE>
<PHRASE Label="lu_modifylink_pending_confirm" Type="0">TGluayBtb2RpZmljYXRpb24gY29tcGxldGU=</PHRASE>
<PHRASE Label="lu_modifylink_pending_confirm_text" Type="0">WW91ciBsaW5rIG1vZGlmaWNhdGlvbiBoYXMgYmVlbiBzdWJtaXR0ZWQgcGVuZGluZyBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbA==</PHRASE>
<PHRASE Label="lu_new_since_links" Type="0">TmV3IGxpbmtz</PHRASE>
<PHRASE Label="lu_submitting_to" Type="0">U3VibWl0dGluZyB0bw==</PHRASE>
<PHRASE Label="lu_news_review_confirm_pending" Type="0">QXJ0aWNsZSByZXZpZXcgc3VibWl0dGVk</PHRASE>
<PHRASE Label="lu_news_addreview_confirm__pending_text" Type="0">QXJ0aWNsZSByZXZpZXcgaGFzIGJlZW4gc3VibWl0dGVkIHBlbmRpbmcgYWRtaW5pc3RyYXRpdmUgYXBwcm92YWw=</PHRASE>
<PHRASE Label="lu_enlarge_picture" Type="0">Wm9vbSBpbg==</PHRASE>
<PHRASE Label="lu_related_articles" Type="0">UmVsYXRlZCBhcnRpY2xlcw==</PHRASE>
<PHRASE Label="lu_article_name" Type="0">QXJ0aWNsZSBuYW1l</PHRASE>
<PHRASE Label="lu_new_since_news" Type="0">TmV3IGFydGljbGVz</PHRASE>
<PHRASE Label="lu_new_news" Type="0">TmV3IGFydGljbGVz</PHRASE>
<PHRASE Label="lu_new_articles" Type="0">TmV3IGFydGljbGVz</PHRASE>
<PHRASE Label="lu_news_search_results" Type="0">U2VhcmNoIFJlc3VsdHM=</PHRASE>
<PHRASE Label="lu_my_topic_favorites" Type="0">TXkgVG9waWNz</PHRASE>
<PHRASE Label="lu_edittopic_confirm_pending" Type="0">VG9waWMgbW9kaWZpZWQ=</PHRASE>
<PHRASE Label="lu_edittopic_confirm_pending_text" Type="0">VG9waWMgaGFzIGJlZW4gbW9kaWZpZWQgcGVuZGluZyBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbA==</PHRASE>
<PHRASE Label="lu_new_since_topics" Type="0">TmV3IHRvcGljcw==</PHRASE>
<PHRASE Label="lu_privatemessages_updated" Type="0">UHJpdmF0ZSBtZXNzYWdlcyB1cGRhdGVk</PHRASE>
<PHRASE Label="lu_modified" Type="0">TW9kaWZpZWQ=</PHRASE>
<PHRASE Label="lu_expires" Type="0">RXhwaXJlcw==</PHRASE>
<PHRASE Label="lu_no_expiration" Type="0">Tm8gZXhwaXJhdGlvbg==</PHRASE>
<PHRASE Label="la_tooltip_setprimary" Type="1">U2V0IHByaW1hcnk=</PHRASE>
<PHRASE Label="la_origional_value" Type="1">T3JpZ2luYWwgVmFsdWU=</PHRASE>
<PHRASE Label="la_error_unknown_category" Type="1">VW5rbm93biBjYXRlZ29yeQ==</PHRASE>
<PHRASE Label="la_inlink" Type="1">SW4tbGluaw==</PHRASE>
<PHRASE Label="la_tab_inlinkimport" Type="1">SW4tbGluayBpbXBvcnQ=</PHRASE>
<PHRASE Label="la_link_reviewed" Type="1">TGluayByZXZpZXdlZA==</PHRASE>
<PHRASE Label="la_added" Type="1">QWRkZWQ=</PHRASE>
<PHRASE Label="la_reviewer" Type="1">UmV2aWV3ZXI=</PHRASE>
<PHRASE Label="lu_rating_alreadyvoted" Type="0">QWxyZWFkeSB2b3RlZA==</PHRASE>
<PHRASE Label="lu_remove" Type="0">UmVtb3Zl</PHRASE>
<PHRASE Label="lu_enter" Type="0">RW50ZXI=</PHRASE>
<PHRASE Label="lu_add" Type="0">QWRk</PHRASE>
<PHRASE Label="lu_additional_cats" Type="0">QWRkaXRpb25hbCBjYXRlZ29yaWVz</PHRASE>
<PHRASE Label="la_text_leading" Type="1">TGVhZGluZw==</PHRASE>
<PHRASE Label="la_article_reviewed" Type="1">QXJ0aWNsZSByZXZpZXdlZA==</PHRASE>
<PHRASE Label="la_rating_alreadyvoted" Type="1">QWxyZWFkeSB2b3RlZA==</PHRASE>
<PHRASE Label="la_vote_added" Type="1">Vm90ZSBzdWJtaXR0ZWQgc3VjY2Vzc2Z1bGx5</PHRASE>
<PHRASE Label="la_original_values" Type="1">T3JpZ2luYWwgVmFsdWVz</PHRASE>
<PHRASE Label="la_tab_phpbbimport" Type="1">cGhwQkIgSW1wb3J0</PHRASE>
<PHRASE Label="lu_btn_newtopic" Type="0">TmV3IHRvcGlj</PHRASE>
<PHRASE Label="la_topic_reviewed" Type="1">VG9waWMgcmV2aWV3ZWQ=</PHRASE>
<PHRASE Label="lu_avatar_disabled" Type="0">RGlzYWJsZWQgYXZhdGFy</PHRASE>
<PHRASE Label="lu_recipent_required" Type="0">VGhlIHJlY2lwaWVudCBpcyByZXF1aXJlZA==</PHRASE>
<PHRASE Label="lu_recipient_doesnt_exit" Type="0">VGhlIHJlY2lwaWVudCBkb2VzIG5vdCBleGlzdA==</PHRASE>
<PHRASE Label="la_no_topics" Type="1">Tm8gdG9waWNz</PHRASE>
<PHRASE Label="la_event_user.pswd_confirm" Type="1">UGFzc3dvcmQgQ29uZmlybWF0aW9u</PHRASE>
<PHRASE Label="lu_fieldcustom__drop_down" Type="2">ZHJvcF9kb3du</PHRASE>
<PHRASE Label="la_Description_in-portal:reviews" Type="1">VGhpcyBzZWN0aW9uIGRpc3BsYXlzIGEgbGlzdCBvZiBhbGwgcmV2aWV3cyBpbiB0aGUgc3lzdGVtLg==</PHRASE>
<PHRASE Label="la_prompt_allow_reset" Type="1">QWxsb3cgcGFzc3dvcmQgcmVzZXQgYWZ0ZXI=</PHRASE>
<PHRASE Label="lu_reset_confirm_text" Type="0">UGxlYXNlIGNvbmZpcm0gdGhhdCB5b3Ugd2FudCB0byByZXNldCB5b3VyIHBhc3N3b3JkLg==</PHRASE>
<PHRASE Label=" lu_resetpw_confirm_text" Type="0">WW91ciBwYXNzd29yZCBoYXMgYmVlbiByZXNldC4gWW91IHdpbGwgcmVjZWl2ZSB5b3VyIG5ldyBwYXNzd29yZCBpbiB0aGUgZW1haWwgc2hvcnRseS4=</PHRASE>
<PHRASE Label="la_LastUpdate" Type="1">TGFzdCBVcGRhdGVk</PHRASE>
+<PHRASE Label="lu_site_map" Type="0">U2l0ZSBtYXA=</PHRASE>
</PHRASES><EVENTS><EVENT MessageType="text" Event="USER.ADD" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogSW4tcG9ydGFsIHJlZ2lzdHJhdGlvbgoKRGVhciA8aW5wOnRvdXNlciBfRmllbGQ9IkZpcnN0TmFtZSIgLz4gPGlucDp0b3VzZXIgX0ZpZWxkPSJMYXN0TmFtZSIgLz4sDQoNClRoYW5rIHlvdSBmb3IgcmVnaXN0ZXJpbmcgb24gPGlucDptX3BhZ2VfdGl0bGUgLz4uIFlvdXIgcmVnaXN0cmF0aW9uIGlzIG5vdyBhY3RpdmUu</EVENT>
<EVENT MessageType="text" Event="USER.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTmV3IHVzZXIgaGFzIGJlZW4gYWRkZWQKCkEgbmV3IHVzZXIgIjxpbnA6dG91c2VyIF9GaWVsZD0iVXNlck5hbWUiIC8+IiBoYXMgYmVlbiBhZGRlZC4=</EVENT>
<EVENT MessageType="text" Event="USER.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogWW91IGhhdmUgYmVlbiBhcHByb3ZlZAoKV2VsY29tZSB0byBJbi1wb3J0YWwhDQpZb3VyIHVzZXIgcmVnaXN0cmF0aW9uIGhhcyBiZWVuIGFwcHJvdmVkLiBZb3VyIHVzZXIgbmFtZSBpcyAiPGlucDp0b3VzZXIgX0ZpZWxkPSJVc2VyTmFtZSIgLz4iLg==</EVENT>
<EVENT MessageType="text" Event="USER.APPROVE" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogVXNlciBhcHByb3ZlZAoKVXNlciAiPGlucDp0b3VzZXIgX0ZpZWxkPSJVc2VyTmFtZSIgLz4iIGhhcyBiZWVuIGFwcHJvdmVkLg==</EVENT>
<EVENT MessageType="text" Event="USER.VALIDATE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogSW4tcG9ydGFsIHJlZ2lzdHJhdGlvbgoKV2VsY29tZSB0byBJbi1wb3J0YWwhDQpZb3VyIHVzZXIgcmVnaXN0cmF0aW9uIGhhcyBiZWVuIGFwcHJvdmVkLiBZb3VyIHVzZXIgbmFtZSBpcyAiPGlucDp0b3VzZXIgX0ZpZWxkPSJVc2VyTmFtZSIgLz4iIGFuZCB5b3VyIHBhc3N3b3JkIGlzICI8aW5wOnRvdXNlciBfRmllbGQ9InBhc3N3b3JkIiAvPiIuDQo=</EVENT>
<EVENT MessageType="text" Event="USER.VALIDATE" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogVXNlciB2YWxpZGF0ZWQKClVzZXIgIjxpbnA6dG91c2VyIF9GaWVsZD0iVXNlck5hbWUiIC8+IiBoYXMgYmVlbiB2YWxpZGF0ZWQu</EVENT>
<EVENT MessageType="text" Event="USER.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQWNjZXNzIGRlbmllZAoKWW91ciByZWdpc3RyYXRpb24gdG8gPGlucDptX3BhZ2VfdGl0bGUgLz4gaGFzIGJlZW4gZGVuaWVkLg==</EVENT>
<EVENT MessageType="text" Event="USER.DENY" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogVXNlciBkZW5pZWQKClVzZXIgIjxpbnA6dG91c2VyIF9GaWVsZD0iVXNlck5hbWUiIC8+IiBoYXMgYmVlbiBkZW5pZWQu</EVENT>
<EVENT MessageType="text" Event="USER.PSWD" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTG9zdCBwYXNzd29yZAoKWW91ciBsb3N0IHBhc3N3b3JkIGhhcyBiZWVuIHJlc2V0LiBZb3VyIG5ldyBwYXNzd29yZCBpczogIjxpbnA6dG91c2VyIF9GaWVsZD0iUGFzc3dvcmQiIC8+Ii4=</EVENT>
<EVENT MessageType="text" Event="USER.PSWD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTG9zdCBwYXNzd29yZAoKWW91ciBsb3N0IHBhc3N3b3JkIGhhcyBiZWVuIHJlc2V0LiBZb3VyIG5ldyBwYXNzd29yZCBpczogIjxpbnA6dG91c2VyIF9GaWVsZD0iUGFzc3dvcmQiIC8+Ii4=</EVENT>
<EVENT MessageType="text" Event="CATEGORY.ADD" Type="0">U3ViamVjdDogQ2F0ZWdvcnkgYWRkZWQKCllvdXIgc3VnZ2VzdGVkIGNhdGVnb3J5ICI8aW5wOm1fY2F0ZWdvcnlfZmllbGQgX0ZpZWxkPSJOYW1lIiBfU3RyaXBIVE1MPSIxIi8+IiBoYXMgYmVlbiBhZGRlZC4=</EVENT>
<EVENT MessageType="text" Event="CATEGORY.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBhZGRlZAoKQSBjYXRlZ29yeSAiPGlucDptX2NhdGVnb3J5X2ZpZWxkIF9GaWVsZD0iTmFtZSIgX1N0cmlwSFRNTD0iMSIvPiIgaGFzIGJlZW4gYWRkZWQu</EVENT>
<EVENT MessageType="text" Event="CATEGORY.DELETE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBkZWxldGVkCgpBIGNhdGVnb3J5ICI8aW5wOm1fY2F0ZWdvcnlfZmllbGQgX0ZpZWxkPSJOYW1lIiBfU3RyaXBIVE1MPSIxIi8+IiBoYXMgYmVlbiBkZWxldGVkLg==</EVENT>
<EVENT MessageType="text" Event="CATEGORY.DELETE" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBkZWxldGVkCgpBIGNhdGVnb3J5ICI8aW5wOm1fY2F0ZWdvcnlfZmllbGQgX0ZpZWxkPSJOYW1lIiBfU3RyaXBIVE1MPSIxIi8+IiBoYXMgYmVlbiBkZWxldGVkLg==</EVENT>
<EVENT MessageType="text" Event="CATEGORY.MODIFY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBtb2RpZmllZAoKWW91ciBzdWdnZXN0ZWQgY2F0ZWdvcnkgIjxpbnA6bV9jYXRlZ29yeV9maWVsZCBfRmllbGQ9Ik5hbWUiIF9TdHJpcEhUTUw9IjEiLz4iIGhhcyBiZWVuIG1vZGlmaWVkLg==</EVENT>
<EVENT MessageType="text" Event="CATEGORY.MODIFY" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBtb2RpZmllZAoKQSBjYXRlZ29yeSAiPGlucDptX2NhdGVnb3J5X2ZpZWxkIF9GaWVsZD0iTmFtZSIgX1N0cmlwSFRNTD0iMSIvPiIgaGFzIGJlZW4gbW9kaWZpZWQu</EVENT>
<EVENT MessageType="text" Event="CATEGORY.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBhcHByb3ZlZAoKWW91ciBzdWdnZXN0ZWQgY2F0ZWdvcnkgIjxpbnA6bV9jYXRlZ29yeV9maWVsZCBfRmllbGQ9Ik5hbWUiIF9TdHJpcEhUTUw9IjEiLz4iIGhhcyBiZWVuIGFwcHJvdmVkLg==</EVENT>
<EVENT MessageType="text" Event="CATEGORY.APPROVE" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBhcHByb3ZlZAoKQSBjYXRlZ29yeSAiPGlucDptX2NhdGVnb3J5X2ZpZWxkIF9GaWVsZD0iTmFtZSIgX1N0cmlwSFRNTD0iMSIvPiIgaGFzIGJlZW4gYXBwcm92ZWQu</EVENT>
<EVENT MessageType="text" Event="CATEGORY.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBkZW5pZWQKCllvdXIgY2F0ZWdvcnkgc3VnZ2VzdGlvbiAiPGlucDptX2NhdGVnb3J5X2ZpZWxkIF9GaWVsZD0iTmFtZSIgX1N0cmlwSFRNTD0iMSIvPiIgaGFzIGJlZW4gZGVuaWVkLg==</EVENT>
<EVENT MessageType="text" Event="CATEGORY.DENY" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSBjYXRlZ29yeSBoYXMgYmVlbiBkZW5pZWQKCkEgY2F0ZWdvcnkgIjxpbnA6bV9jYXRlZ29yeV9maWVsZCBfRmllbGQ9Ik5hbWUiIF9TdHJpcEhUTUw9IjEiLz4iIGhhcyBiZWVuIGRlbmllZC4=</EVENT>
<EVENT MessageType="text" Event="USER.SUBSCRIBE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogU3Vic2NyaXB0aW9uIGNvbmZpcm1hdGlvbgoKWW91IGhhdmUgc3Vic2NyaWJlZCB0byA8aW5wOm1fcGFnZV90aXRsZSAvPiBtYWlsaW5nIGxpc3Qu</EVENT>
<EVENT MessageType="text" Event="USER.SUBSCRIBE" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQSB1c2VyIGhhcyBzdWJzY3JpYmVkCgpBIHVzZXIgaGFzIHN1YnNjcmliZWQgdG8gPGlucDptX3BhZ2VfdGl0bGUgLz4gbWFpbGluZyBsaXN0Lg==</EVENT>
<EVENT MessageType="text" Event="USER.UNSUBSCRIBE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogWW91IGhhdmUgYmVlbiB1bnN1YnNjcmliZWQKCllvdSBoYXZlIHN1Y2Nlc3NmdWxseSB1bnN1YnNyaWJlZCBmcm9tIDxpbnA6bV9wYWdlX3RpdGxlIC8+IG1haWxpbmcgbGlzdC4=</EVENT>
<EVENT MessageType="text" Event="USER.UNSUBSCRIBE" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogVXNlciB1bnN1YnNyaWJlZAoKQSB1c2VyIGhhcyB1bnN1YnNjcmliZWQu</EVENT>
<EVENT MessageType="text" Event="LINK.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBhZGRlZAoKQSBsaW5rIGhhcyBiZWVuIGFkZGVk</EVENT>
<EVENT MessageType="text" Event="LINK.MODIFY" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBtb2RpZmllZAoKQSBsaW5rIGhhcyBiZWVuIG1vZGlmaWVkLg==</EVENT>
<EVENT MessageType="text" Event="LINK.REVIEW.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayByZXZpZXcgYWRkZWQKCkEgbGluayByZXZpZXcgaGFzIGJlZW4gYWRkZWQ=</EVENT>
<EVENT MessageType="text" Event="LINK.ADD" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBhZGRlZAoKWW91ciBsaW5rIGhhcyBiZWVuIGFkZGVkLg==</EVENT>
<EVENT MessageType="text" Event="LINK.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBhcHByb3ZlZAoKWW91ciBsaW5rIGhhcyBiZWVuIGFwcHJvdmVk</EVENT>
<EVENT MessageType="text" Event="LINK.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBkZW5pZWQKCllvdXIgbGluayBoYXMgYmVlbiBkZW5pZWQu</EVENT>
<EVENT MessageType="text" Event="LINK.MODIFY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBtb2RpZmVkCgpZb3VyIGxpbmsgaGFzIGJlZW4gbW9kaWZpZWQ=</EVENT>
<EVENT MessageType="text" Event="LINK.MODIFY.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBhcHByb3ZlZAoKWW91ciBsaW5rIG1vZGlmaWNhdGlvbiBoYXMgYmVlbiBhcHByb3ZlZA==</EVENT>
<EVENT MessageType="text" Event="LINK.REVIEW.ADD" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayByZXZpZXcgYWRkZWQKCllvdXIgbGluayByZXZpZXcgaGFzIGJlZW4gYWRkZWQ=</EVENT>
<EVENT MessageType="text" Event="LINK.REVIEW.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayByZXZpZXcgYXBwcm92ZWQKCllvdXIgbGluayByZXZpZXcgaGFzIGJlZW4gYXBwcm92ZWQ=</EVENT>
<EVENT MessageType="text" Event="LINK.REVIEW.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayByZXZpZXcgZGVjbGluZWQKCllvdXIgbGluayByZXZpZXcgaGFzIGJlZW4gZGVjbGluZWQ=</EVENT>
<EVENT MessageType="text" Event="LINK.REVIEW.ADD.PENDING" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayByZXZpZXcgYWRkZWQKCllvdXIgbGluayByZXZpZXcgaGFzIGJlZW4gYWRkZWQgYW5kIGlzIHBlbmRpbmcgYXBwcm92YWwu</EVENT>
<EVENT MessageType="text" Event="LINK.MODIFY.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTGluayBtb2RpZmljYXRpb24gZGVuaWVkCgpZb3VyIGxpbmsgbW9kaWZpY2F0aW9uIGhhcyBiZWVuIGRlbmllZC4=</EVENT>
<EVENT MessageType="html" Event="USER.SUGGEST" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQ2hlY2sgb3V0IHRoaXMgc2l0ZQoKSGksDQoNClRoaXMgbWVzc2FnZSBoYXMgYmVlbiBzZW50IHRvIHlvdSBmcm9tIG9uZSBvZiB5b3VyIGZyaWVuZHMuDQpDaGVjayBvdXQgdGhpcyBzaXRlOiA8YSBocmVmPSI8aW5wOm1fdGhlbWVfdXJsIF9wYWdlPSJjdXJyZW50Ii8+Ij48aW5wOm1fcGFnZV90aXRsZSAvPjwvYT4h</EVENT>
<EVENT MessageType="text" Event="USER.SUGGEST" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogVGhlIHNpdGUgaGFzIGJlZW4gc3VnZ2VzdGVkCgpBIHZpc2l0b3Igc3VnZ2VzdGVkIHlvdXIgc2l0ZSB0byBhIGZyaWVuZC4=</EVENT>
<EVENT MessageType="text" Event="TOPIC.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogVG9waWMgYWRkZGUKCkEgdG9waWMgaGFzIGJlZW4gYWRkZWQu</EVENT>
<EVENT MessageType="text" Event="POST.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogUG9zdCBhZGRlZAoKQSBwb3N0IGhhcyBiZWVuIGFkZGVkLg==</EVENT>
<EVENT MessageType="text" Event="POST.MODIFY" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogUG9zIG1vZGlmaWVkCgpBIHBvc3QgaGFzIGJlZW4gbW9kaWZpZWQu</EVENT>
<EVENT MessageType="text" Event="POST.ADD" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogUG9zdCBhZGRlZAoKWW91ciBwb3N0IGhhcyBiZWVuIGFkZGVkLg==</EVENT>
<EVENT MessageType="text" Event="ARTICLE.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSBhZGRlZAoKQW4gYXJ0aWNsZSBoYXMgYmVlbiBhZGRlZA==</EVENT>
<EVENT MessageType="text" Event="ARTICLE.ADD" Type="0">U3ViamVjdDogQXJ0aWNsZSBhZGRlZAoKWW91ciBhcnRpY2xlIGhhcyBiZWVuIGFkZGVk</EVENT>
<EVENT MessageType="text" Event="ARTICLE.MODIFY" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSBtb2RpZmVkCgpBbiBhcnRpY2xlIGhhcyBiZWVuIG1vZGlmaWVk</EVENT>
<EVENT MessageType="text" Event="ARTICLE.REVIEW.ADD" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSByZXZpZXcgYWRkZWQKCkFuIGFydGljbGUgcmV2aWV3IGhhcyBiZWVuIGFkZGVk</EVENT>
<EVENT MessageType="text" Event="ARTICLE.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSBhcHByb3ZlZAoKWW91ciBzdWJtaXR0ZWQgYXJ0aWNsZSBoYXMgYmVlbiBhcHByb3ZlZA==</EVENT>
<EVENT MessageType="text" Event="ARTICLE.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSBkZWNsaW5lZAoKWW91ciBzdWJtaXR0ZWQgYXJ0aWNsZSBoYXMgYmVlbiBkZWNsaW5lZA==</EVENT>
<EVENT MessageType="text" Event="ARTICLE.MODIFY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSBtb2RpZmllZAoKWW91ciBhcnRpY2xlIGhhcyBiZWVuIG1vZGlmZWQ=</EVENT>
<EVENT MessageType="text" Event="ARTICLE.MODIFY.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSBtb2RpZmljYXRpb24gYXBwcm92ZWQKCllvdXIgYXJ0aWNsZSBtb2RpZmljYXRpb24gaGFzIGJlZW4gYXBwcm92ZWQ=</EVENT>
<EVENT MessageType="text" Event="ARTICLE.MODIFY.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSBtb2RpZmljYXRpb24gZGVjbGluZWQKCllvdXIgYXJ0aWNsZSBtb2RpZmljYXRpb24gaGFzIGJlZW4gZGVjbGluZWQ=</EVENT>
<EVENT MessageType="text" Event="ARTICLE.REVIEW.ADD" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSByZXZpZXcgYWRkZWQKCllvdXIgcmV2aWV3IGhhcyBiZWVuIGFkZGVk</EVENT>
<EVENT MessageType="text" Event="ARTICLE.REVIEW.APPROVE" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSByZXZpZXcgYXBwcm92ZWQKCllvdXIgYXJ0aWNsZSByZXZpZXcgaGFzIGJlZW4gYXBwcm92ZWQ=</EVENT>
<EVENT MessageType="text" Event="ARTICLE.REVIEW.DENY" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQXJ0aWNsZSByZXZpZXcgZGVjbGluZWQKCllvdXIgYXJ0aWNsZSByZXZpZXcgaGFzIGJlZW4gZGVjbGluZWQ=</EVENT>
<EVENT MessageType="text" Event="ARTICLE.REVIEW.ADD.PENDING" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogUmV2aWV3IHBlbmRpbmcKCllvdXIgYXJ0aWNsZSByZXZpZXcgaGFzIGJlZW4gYWRkZWQgdG8gdGhlIGRhdGFiYXNlIGFuZCBpcyBjdXJyZW50bHkgcGVuZGluZyBhZG1pbmlzdHJhdGl2ZSBhcHByb3ZhbA==</EVENT>
<EVENT MessageType="text" Event="PM.ADD" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogTmV3IFByaXZhdGUgTWVzc2FnZQoKQSBuZXcgcHJpdmF0ZSBtZXNzYWdlIGhhcyBhcnJpdmVkLiA=</EVENT>
<EVENT MessageType="text" Event="USER.ADD.PENDING" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogVXNlciByZWdpc3RlcmVkCgpBIG5ldyB1c2VyIGhhcyByZWdpc3RlcmVkIGFuZCBpcyBwZW5kaW5nIGFkbWluaXN0cmF0aXZlIGFwcHJvdmFsLg==</EVENT>
<EVENT MessageType="text" Event="CATEGORY.ADD.PENDING" Type="1">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogQ2F0ZWdvcnkgYWRkZWQgKHBlbmRpbmcpCgpBIGNhdGVnb3J5ICI8aW5wOm1fY2F0ZWdvcnlfZmllbGQgX0ZpZWxkPSJOYW1lIiBfU3RyaXBIVE1MPSIxIi8+IiBoYXMgYmVlbiBhZGRlZCwgcGVuZGluZyB5b3VyIGNvbmZpcm1hdGlvbi4gIFBsZWFzZSByZXZpZXcgdGhlIGNhdGVnb3J5IGFuZCBhcHByb3ZlIG9yIGRlbnkgaXQu</EVENT>
<EVENT MessageType="text" Event="USER.PSWDC" Type="0">WC1Qcmlvcml0eTogMQ0KWC1NU01haWwtUHJpb3JpdHk6IEhpZ2gNClgtTWFpbGVyOiBJbi1Qb3J0YWwKU3ViamVjdDogUGFzc3dvcmQgcmVzZXQgY29uZmlybWF0aW9uCgpIZWxsbywNCg0KSXQgc2VlbXMgdGhhdCB5b3UgaGF2ZSByZXF1ZXN0ZWQgYSBwYXNzd29yZCByZXNldCBmb3IgeW91ciBJbi1wb3J0YWwgYWNjb3VudC4gSWYgeW91IHdvdWxkIGxpa2UgdG8gcHJvY2VlZCBhbmQgY2hhbmdlIHRoZSBwYXNzd29yZCwgcGxlYXNlIGNsaWNrIG9uIHRoZSBsaW5rIGJlbG93Og0KPGlucDptX2NvbmZpcm1fcGFzc3dvcmRfbGluayAvPg0KDQpZb3Ugd2lsbCByZWNlaXZlIGEgc2Vjb25kIGVtYWlsIHdpdGggeW91ciBuZXcgcGFzc3dvcmQgc2hvcnRseS4NCg0KSWYgeW91IGJlbGlldmUgeW91IGhhdmUgcmVjZWl2ZWQgdGhpcyBlbWFpbCBpbiBlcnJvciwgcGxlYXNlIGlnbm9yZSB0aGlzIGVtYWlsLiBZb3VyIHBhc3N3b3JkIHdpbGwgbm90IGJlIGNoYW5nZWQgdW5sZXNzIHlvdSBoYXZlIGNsaWNrZWQgb24gdGhlIGFib3ZlIGxpbmsuDQo=</EVENT>
</EVENTS></LANGUAGE></LANGUAGES>
\ No newline at end of file
Property changes on: trunk/admin/install/langpacks/english.lang
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.23
\ No newline at end of property
+1.24
\ No newline at end of property
Index: trunk/globals.php
===================================================================
--- trunk/globals.php (revision 1441)
+++ trunk/globals.php (revision 1442)
@@ -1,1699 +1,1714 @@
<?php
$vars = parse_portal_ini($pathtoroot."config.php");
while($key = key($vars))
{
$key = "g_".$key;
global $$key;
$$key = current($vars); //variable variables
next($vars);
}
/*list the tables which contain item data */
$ItemTables = array();
$KeywordIgnore = array();
global $debuglevel;
$debuglevel = 0;
//$GLOBALS['debuglevel'] = 0;
/*New, Hot, Pop field values */
define('NEVER', 0);
define('ALWAYS', 1);
define('AUTO', 2);
/*Status Values */
define('STATUS_DISABLED', 0);
define('STATUS_ACTIVE', 1);
define('STATUS_PENDING', 2);
$LogLevel=0;
$LogFile = NULL;
function parse_portal_ini($file, $parse_section = false) {
if(!file_exists($file) && !is_readable($file))
die('Could Not Open Ini File');
$contents = file($file);
$retval = array();
$section = '';
$ln = 1;
$resave = false;
foreach($contents as $line) {
if ($ln == 1 && $line != '<'.'?'.'php die() ?'.">\n") {
$resave = true;
}
$ln++;
$line = trim($line);
$line = eregi_replace(';[.]*','',$line);
if(strlen($line) > 0) {
//echo $line . " - ";
if(eregi('^[[a-z]+]$',str_replace(' ', '', $line))) {
//echo 'section';
$section = substr($line,1,(strlen($line)-2));
if ($parse_section) {
$retval[$section] = array();
}
continue;
} elseif(eregi('=',$line)) {
//echo 'main element';
list($key,$val) = explode(' = ',$line);
if (!$parse_section) {
$retval[trim($key)] = str_replace('"', '', $val);
}
else {
$retval[$section][trim($key)] = str_replace('"', '', $val);
}
} //end if
//echo '<br />';
} //end if
} //end foreach
if ($resave) {
$fp = fopen($file, "w");
reset($contents);
fwrite($fp,'<'.'?'.'php die() ?'.">\n\n");
foreach($contents as $line) fwrite($fp,"$line");
fclose($fp);
}
return $retval;
}
/**
* @return object
* @desc Returns reference to database connection
*/
function &GetADODBConnection()
{
static $DB = null;
global $g_DBType, $g_DBHost, $g_DBUser, $g_DBUserPassword, $g_DBName, $g_DebugMode;
global $ADODB_FETCH_MODE, $ADODB_COUNTRECS, $ADODB_CACHE_DIR, $pathtoroot;
if( !isset($DB) && strlen($g_DBType) > 0 )
{
$DB = ADONewConnection($g_DBType);
$connected = $DB->Connect($g_DBHost, $g_DBUser, $g_DBUserPassword, $g_DBName);
if(!$connected) die("Error connecting to database $g_DBHost <br>\n");
$ADODB_CACHE_DIR = $pathtoroot."cache";
$ADODB_FETCH_MODE = 2;
$ADODB_COUNTRECS = false;
$DB->debug = defined('ADODB_OUTP') ? 1 : 0;
$DB->cacheSecs = 3600;
$DB->Execute('SET SQL_BIG_SELECTS = 1');
}
elseif( !strlen($g_DBType) )
{
global $rootURL;
echo 'In-Portal is probably not installed, or configuration file is missing.<br>';
echo 'Please use the installation script to fix the problem.<br><br>';
if ( !preg_match('/admin/', __FILE__) ) $ins = 'admin/';
echo '<a href="'.$rootURL.$ins.'install.php">Go to installation script</a><br><br>';
flush();
exit;
}
return $DB;
}
function GetNextResourceId($Increment=1)
{
- global $objModules;
+ global $objModules, $pathtoroot;
$table_name = GetTablePrefix().'IdGenerator';
+
+ $db = &GetADODBConnection();
+
+ // dummy protection: get maximal resource id used actually and fix last_id used
+ $max_resourceid = 0;
- $db = &GetADODBConnection();
-
- // dummy protection: get maximal resource id used actually and fix last_id used
- $max_resourceid = 0;
- $table_info = $objModules->ExecuteFunction('GetModuleInfo', 'dupe_resourceids');
- $sql_template = 'SELECT MAX(ResourceId) FROM '.GetTablePrefix().'%s';
-
- foreach($table_info as $module_name => $module_info)
- {
- foreach($module_info as $module_sub_info)
- {
- $sql = sprintf($sql_template,$module_sub_info['Table']);
- $tmp_resourceid = $db->GetOne($sql);
- if($tmp_resourceid > $max_resourceid) $max_resourceid = $tmp_resourceid;
- }
- }
-
- // update lastid to be next resourceid available
- $db->Execute('LOCK TABLES '.$table_name.' WRITE');
- $id_diff = $db->GetOne('SELECT '.$max_resourceid.' + 1 - lastid FROM '.$table_name);
- if($id_diff) $Increment += $id_diff;
-
+ $m = GetModuleArray();
+ foreach($m as $key=>$value)
+ {
+ $path = $pathtoroot. $value."admin/include/parser.php";
+ if(file_exists($path))
+ {
+ include_once($path);
+ }
+ }
+
+ $table_info = $objModules->ExecuteFunction('GetModuleInfo', 'dupe_resourceids');
+ $sql_template = 'SELECT MAX(ResourceId) FROM '.GetTablePrefix().'%s';
+
+ foreach($table_info as $module_name => $module_info)
+ {
+ foreach($module_info as $module_sub_info)
+ {
+ $sql = sprintf($sql_template,$module_sub_info['Table']);
+ $tmp_resourceid = $db->GetOne($sql);
+ if($tmp_resourceid > $max_resourceid) $max_resourceid = $tmp_resourceid;
+ }
+ }
+
+ // update lastid to be next resourceid available
+ $db->Execute('LOCK TABLES '.$table_name.' WRITE');
+
+ $last_id = $db->GetOne('SELECT lastid FROM '.$table_name);
+ if ($last_id - 1 > $max_resourceid) $max_resourceid = $last_id - 1;
+
+ $id_diff = $db->GetOne('SELECT '.$max_resourceid.' + 1 - lastid FROM '.$table_name);
+ if($id_diff) $Increment += $id_diff;
+
$sql = 'UPDATE '.$table_name.' SET lastid = lastid + '.$Increment; // set new id in db
- $db->Execute($sql);
-
- $val = $db->GetOne('SELECT lastid FROM '.$table_name);
- if($val === false)
- {
- $db->Execute('INSERT INTO '.$table_name.' (lastid) VALUES ('.$Increment.')');
- $val = $Increment;
- }
- $db->Execute('UNLOCK TABLES');
-
- return $val - $Increment + $id_diff; // return previous free id (-1) ?
+ $db->Execute($sql);
+
+ $val = $db->GetOne('SELECT lastid FROM '.$table_name);
+ if($val === false)
+ {
+ $db->Execute('INSERT INTO '.$table_name.' (lastid) VALUES ('.$Increment.')');
+ $val = $Increment;
+ }
+ $db->Execute('UNLOCK TABLES');
+
+ return $val - $Increment + $id_diff; // return previous free id (-1) ?
}
function AddSlash($s)
{
if(substr($s,-1) != "/")
{
return $s."/";
}
else
return $s;
}
function StripNewline($s)
{
$bfound = false;
while (strlen($s)>0 && !$bfound)
{
if(ord(substr($s,-1))<32)
{
$s = substr($s,0,-1);
}
else
$bfound = true;
}
return $s;
}
function DeleteElement($array, $indice)
{
for($i=$indice;$i<count($array)-1;$i++)
$array[$i] = $array[$i+1];
unset($array[count($array)-1]);
return $array;
}
function DeleteElementValue($needle, &$haystack)
{
while(($gotcha = array_search($needle,$haystack)) > -1)
unset($haystack[$gotcha]);
}
function TableCount($TableName, $where="",$JoinCats=1)
{
$db = &GetADODBConnection();
if(!$JoinCats)
{
$sql = "SELECT count(*) as TableCount FROM $TableName";
}
else
$sql = "SELECT count(*) as TableCount FROM $TableName INNER JOIN ".GetTablePrefix()."CategoryItems ON ".GetTablePrefix()."CategoryItems.ItemResourceId=$TableName.ResourceId";
if(strlen($where)>0)
$sql .= " WHERE ".$where;
$rs = $db->Execute($sql);
// echo "SQL TABLE COUNT: ".$sql."<br>\n";
$res = $rs->fields["TableCount"];
return $res;
}
Function QueryCount($sql)
{
$sql = preg_replace('/SELECT(.*)FROM[ \n\r](.*)/is','SELECT COUNT(*) AS TableCount FROM $2', $sql);
$sql = preg_replace('/(.*)LIMIT(.*)/is','$1', $sql);
$sql = preg_replace('/(.*)ORDER BY(.*)/is','$1', $sql);
//echo $sql;
$db =& GetADODBConnection();
return $db->GetOne($sql);
}
function GetPageCount($ItemsPerPage,$NumItems)
{
if($ItemsPerPage==0 || $NumItems==0)
{
return 1;
}
$value = $NumItems/$ItemsPerPage;
return ceil($value);
}
/**
* @return string
* @desc Returns database table prefix entered while installation
*/
function GetTablePrefix()
{
global $g_TablePrefix;
return $g_TablePrefix;
}
function TableHasPrefix($t)
{
$pre = GetTablePrefix();
if(strlen($pre)>0)
{
if(substr($t,0,strlen($pre))==$pre)
{
return TRUE;
}
else
return FALSE;
}
else
return TRUE;
}
function AddTablePrefix($t)
{
if(!TableHasPrefix($t))
$t = GetTablePrefix().$t;
return $t;
}
function ThisDomain()
{
global $objConfig, $g_Domain;
if($objConfig->Get("DomainDetect"))
{
$d = $_SERVER['HTTP_HOST'];
}
else
$d = $g_Domain;
return $d;
}
function GetIndexUrl($secure=0)
{
global $indexURL, $rootURL, $secureURL;
switch($secure)
{
case 0:
$ret = $indexURL;
break;
case 1:
$ret = $secureURL."index.php";
break;
case 2:
$ret = $rootURL."index.php";
break;
default:
$ret = $i;
break;
}
return $ret;
}
function GetLimitSQL($Page,$PerPage)
{
if($Page<1)
$Page=1;
if(is_numeric($PerPage))
{
if($PerPage==0)
$PerPage = 20;
$Start = ($Page-1)*$PerPage;
$limit = "LIMIT ".$Start.",".$PerPage;
}
else
$limit = NULL;
return $limit;
}
function filelist ($currentdir, $startdir=NULL,$ext=NULL)
{
global $pathchar;
//chdir ($currentdir);
// remember where we started from
if (!$startdir)
{
$startdir = $currentdir;
}
$d = @opendir($currentdir);
$files = array();
if(!$d)
return $files;
//list the files in the dir
while (false !== ($file = readdir($d)))
{
if ($file != ".." && $file != ".")
{
if (is_dir($currentdir."/".$file))
{
// If $file is a directory take a look inside
$a = filelist ($currentdir."/".$file, $startdir,$ext);
if(is_array($a))
$files = array_merge($files,$a);
}
else
{
if($ext!=NULL)
{
$extstr = stristr($file,".".$ext);
if(strlen($extstr))
$files[] = $currentdir."/".$file;
}
else
$files[] = $currentdir.'/'.$file;
}
}
}
closedir ($d);
return $files;
}
function DecimalToBin($dec,$WordLength=8)
{
$bits = array();
$str = str_pad(decbin($dec),$WordLength,"0",STR_PAD_LEFT);
for($i=$WordLength;$i>0;$i--)
{
$bits[$i-1] = (int)substr($str,$i-1,1);
}
return $bits;
}
/*
function inp_escape($in, $html_enable=0)
{
$out = stripslashes($in);
$out = str_replace("\n", "\n^br^", $out);
if($html_enable==0)
{
$out=ereg_replace("<","&lt;",$out);
$out=ereg_replace(">","&gt;",$out);
$out=ereg_replace("\"","&quot;",$out);
$out = str_replace("\n^br^", "\n<br />", $out);
}
else
$out = str_replace("\n^br^", "\n", $out);
$out=addslashes($out);
return $out;
}
*/
function inp_escape($var,$html=0)
{
if($html)return $var;
if(is_array($var))
foreach($var as $k=>$v)
$var[$k]=inp_escape($v);
else
// $var=htmlspecialchars($var,ENT_NOQUOTES);
$var=strtr($var,Array('<'=>'&lt;','>'=>'&gt;',));
return $var;
}
function inp_striptags($var,$html=0)
{
if($html)return $var;
if(is_array($var))
foreach($var as $k=>$v)
$var[$k]=inp_striptags($v);
else
$var=strip_tags($var);
return $var;
}
function inp_unescape($in)
{
// if (get_magic_quotes_gpc())
return $in;
$out=stripslashes($in);
return $out;
}
function inp_textarea_unescape($in)
{
// if (get_magic_quotes_gpc())
return $in;
$out=stripslashes($in);
$out = str_replace("\n<br />", "\n", $out);
return $out;
}
function HighlightKeywords($Keywords, $html, $OpenTag="", $CloseTag="")
{
global $objConfig;
if(!strlen($OpenTag))
$OpenTag = "<B>";
if(!strlen($CloseTag))
$CloseTag = "</B>";
$r = preg_split('((>)|(<))', $html, -1, PREG_SPLIT_DELIM_CAPTURE);
foreach ($Keywords as $k) {
for ($i = 0; $i < count($r); $i++) {
if ($r[$i] == "<") {
$i++; continue;
}
$r[$i] = preg_replace("/($k)/i", "$OpenTag\\1$CloseTag", $r[$i]);
}
}
return join("", $r);
}
/*
function HighlightKeywords($Keywords,$html, $OpenTag="", $CloseTag="")
{
global $objConfig;
if(!strlen($OpenTag))
$OpenTag = "<B>";
if(!strlen($CloseTag))
$CloseTag = "</B>";
$ret = strip_tags($html);
foreach ($Keywords as $k)
{
if(strlen($k))
{
//$html = str_replace("<$k>", ":#:", $html);
//$html = str_replace("</$k>", ":##:", $html);
//$html = strip_tags($html);
if ($html = preg_replace("/($k)/Ui","$OpenTag\\1$CloseTag", $html))
//if ($html = preg_replace("/(>[^<]*)($k)([^<]*< )/Ui","$OpenTag\\1$CloseTag", $html))
$ret = $html;
//$ret = str_replace(":#:", "<$k>", $ret);
//$ret = str_replace(":##:", "</$k>", $ret);
}
}
return $ret;
}
*/
function ExtractDatePart($part,$datestamp)
{
switch($part)
{
case "month":
if($datestamp<=0)
{
$ret = "";
}
else
$ret = adodb_date("m",$datestamp);
break;
case "day":
if($datestamp<=0)
{
$ret = "";
}
else
$ret = adodb_date("d", $datestamp);
break;
case "year":
if($datestamp<=0)
{
$ret = "";
}
else
$ret = adodb_date("Y", $datestamp);
break;
case "time_24hr":
if($datestamp<=0)
{
$ret = "";
}
else
$ret = adodb_date("H:i", $datestamp);
break;
case "time_12hr":
if($datestamp<=0)
{
$ret = "";
}
else
$ret = adodb_date("g:i a",$datestamp);
break;
default:
$ret = adodb_date($part, $datestamp);
break;
}
return $ret;
}
function GetLocalTime($TimeStamp,$TargetZone=NULL)
{
if($TargetZone==NULL)
$TargetZone = $objConfig->Get("Config_Site_Time");
$server = $objConfig->Get("Config_Server_Time");
if($TargetZone!=$server)
{
$offset = ($server - $TargetZone) * -1;
$TimeStamp = $TimeStamp + (3600 * $offset);
}
return $TimeStamp;
}
function _unhtmlentities ($string)
{
$trans_tbl = get_html_translation_table (HTML_ENTITIES);
$trans_tbl = array_flip ($trans_tbl);
return strtr ($string, $trans_tbl);
}
function getLastStr($hay, $need){
$getLastStr = 0;
$pos = strpos($hay, $need);
if (is_int ($pos)){ //this is to decide whether it is "false" or "0"
while($pos) {
$getLastStr = $getLastStr + $pos + strlen($need);
$hay = substr ($hay , $pos + strlen($need));
$pos = strpos($hay, $need);
}
return $getLastStr - strlen($need);
} else {
return -1; //if $need wasn´t found it returns "-1" , because it could return "0" if it´s found on position "0".
}
}
// --- bbcode processing function: begin ----
function PreformatBBCodes($text)
{
// convert phpbb url bbcode to valid in-bulletin's format
// 1. urls
$text = preg_replace('/\[url=(.*)\](.*)\[\/url\]/Ui','[url href="$1"]$2[/url]',$text);
$text = preg_replace('/\[url\](.*)\[\/url\]/Ui','[url href="$1"]$1[/url]',$text);
// 2. images
$text = preg_replace('/\[img\](.*)\[\/img\]/Ui','[img src="$1" border="0"][/img]',$text);
// 3. color
$text = preg_replace('/\[color=(.*)\](.*)\[\/color\]/Ui','[font color="$1"]$2[/font]',$text);
// 4. size
$text = preg_replace('/\[size=(.*)\](.*)\[\/size\]/Ui','[font size="$1"]$2[/font]',$text);
// 5. lists
$text = preg_replace('/\[list(.*)\](.*)\[\/list\]/Uis','[ul]$2[/ul]',$text);
// 6. email to link
$text = preg_replace('/\[email\](.*)\[\/email\]/Ui','[url href="mailto:$1"]$1[/url]',$text);
//7. b tag
$text = preg_replace('/\[(b|i|u):(.*)\](.*)\[\/(b|i|u):(.*)\]/Ui','[$1]$3[/$4]',$text);
//8. code tag
$text = preg_replace('/\[code:(.*)\](.*)\[\/code:(.*)\]/Uis','[code]$2[/code]',$text);
return $text;
}
/**
* @return string
* @param string $BBCode
* @param string $TagParams
* @param string $TextInside
* @param string $ParamsAllowed
* @desc Removes not allowed params from tag and returns result
*/
function CheckBBCodeAttribs($BBCode, $TagParams, $TextInside, $ParamsAllowed)
{
// $BBCode - bbcode to check, $TagParams - params string entered by user
// $TextInside - text between opening and closing bbcode tag
// $ParamsAllowed - list of allowed parameter names ("|" separated)
$TagParams=str_replace('\"','"',$TagParams);
$TextInside=str_replace('\"','"',$TextInside);
if( $ParamsAllowed && preg_match_all('/ +([^=]*)=["\']?([^ "\']*)["\']?/is',$TagParams,$params,PREG_SET_ORDER) )
{
$ret = Array();
foreach($params as $param)
{
// remove spaces in both parameter name & value & lowercase parameter name
$param[1] = strtolower(trim($param[1])); // name lowercased
if(($BBCode=='url')&&($param[1]=='href'))
if(false!==strpos(strtolower($param[2]),'script:'))
return $TextInside;
// $param[2]='about:blank';
if( isset($ParamsAllowed[ $param[1] ]) )
$ret[] = $param[1].'="'.$param[2].'"';
}
$ret = count($ret) ? ' '.implode(' ',$ret) : '';
return '<'.$BBCode.$ret.'>'.$TextInside.'</'.$BBCode.'>';
}
else
return '<'.$BBCode.'>'.$TextInside.'</'.$BBCode.'>';
return false;
}
function ReplaceBBCode($text)
{
global $objConfig;
// convert phpbb bbcodes to in-bulletin bbcodes
$text = PreformatBBCodes($text);
// $tag_defs = 'b:;i:;u:;ul:type|align;font:color|face|size;url:href;img:src|border';
$tags_defs = $objConfig->Get('BBTags');
foreach(explode(';',$tags_defs) as $tag)
{
$tag = explode(':',$tag);
$tag_name = $tag[0];
$tag_params = $tag[1]?array_flip(explode('|',$tag[1])):0;
$text = preg_replace('/\['.$tag_name.'(.*)\](.*)\[\/'.$tag_name.' *\]/Uise','CheckBBCodeAttribs("'.$tag_name.'",\'$1\',\'$2\',$tag_params);', $text);
}
// additional processing for [url], [*], [img] bbcode
$text = preg_replace('/<url>(.*)<\/url>/Usi','<url href="$1">$1</url>',$text);
$text = preg_replace('/<font>(.*)<\/font>/Usi','$1',$text); // skip empty fonts
$text = str_replace( Array('<url','</url>','[*]'),
Array('<a target="_blank"','</a>','<li>'),
$text);
// bbcode [code]xxx[/code] processing
$text = preg_replace('/\[code\](.*)\[\/code\]/Uise', "ReplaceCodeBBCode('$1')", $text);
return $text;
}
function leadSpace2nbsp($x)
{
return "\n".str_repeat('&nbsp;',strlen($x));
}
function ReplaceCodeBBCode($input_string)
{
$input_string=str_replace('\"','"',$input_string);
$input_string=$GLOBALS['objSmileys']->UndoSmileys(_unhtmlentities($input_string));
$input_string=trim($input_string);
$input_string=inp_htmlize($input_string);
$input_string=str_replace("\r",'',$input_string);
$input_string = str_replace("\t", " ", $input_string);
$input_string = preg_replace('/\n( +)/se',"leadSpace2nbsp('$1')",$input_string);
$input_string='<div style="border:1px solid #888888;width:100%;background-color:#eeeeee;margin-top:6px;margin-bottom:6px"><div style="padding:10px;"><code>'.$input_string.'</code></div></div>';
// $input_string='<textarea wrap="off" style="border:1px solid #888888;width:100%;height:200px;background-color:#eeeeee;">'.inp_htmlize($input_string).'</textarea>';
return $input_string;
if(false!==strpos($input_string,'<'.'?'))
{
$input_string=str_replace('<'.'?','<'.'?php',$input_string);
$input_string=str_replace('<'.'?phpphp','<'.'?php',$input_string);
$input_string=@highlight_string($input_string,1);
}
else
{
$input_string = @highlight_string('<'.'?php'.$input_string.'?'.'>',1);
$input_string = str_replace('&lt;?php', '', str_replace('?&gt;', '', $input_string));
}
return str_replace('<br />','',$input_string);
}
// --- bbcode processing function: end ----
function GetMinValue($Table,$Field, $Where=NULL)
{
$ret = 0;
$sql = "SELECT min($Field) as val FROM $Table ";
if(strlen($where))
$sql .= "WHERE $Where";
$ado = &GetADODBConnection();
$rs = $ado->execute($sql);
if($rs)
$ret = (int)$rs->fields["val"];
return $ret;
}
function getmicrotime()
{
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
function SetMissingDataErrors($f)
{
global $FormError;
$count = 0;
if(is_array($_POST))
{
if(is_array($_POST["required"]))
{
foreach($_POST["required"] as $r)
{
$found = FALSE;
if(is_array($_FILES))
{
if( isset($_FILES[$r]) && $_FILES[$r]['size'] > 0 ) $found = TRUE;
}
if(!strlen(trim($_POST[$r])) && !$found)
{
$count++;
if (($r == "dob_day") || ($r == "dob_month") || ($r == "dob_year"))
$r = "dob";
$tag = isset($_POST["errors"]) ? $_POST["errors"][$r] : '';
if(!strlen($tag))
$tag = "lu_ferror_".$f."_".$r;
$FormError[$f][$r] = language($tag);
}
}
}
}
return $count;
}
function makepassword($length=10)
{
$pass_length=$length;
$p1=array('b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z');
$p2=array('a','e','i','o','u');
$p3=array('1','2','3','4','5','6','7','8','9');
$p4=array('(','&',')',';','%'); // if you need real strong stuff
// how much elements in the array
// can be done with a array count but counting once here is faster
$s1=21;// this is the count of $p1
$s2=5; // this is the count of $p2
$s3=9; // this is the count of $p3
$s4=5; // this is the count of $p4
// possible readable combinations
$c1='121'; // will be like 'bab'
$c2='212'; // will be like 'aba'
$c3='12'; // will be like 'ab'
$c4='3'; // will be just a number '1 to 9' if you dont like number delete the 3
// $c5='4'; // uncomment to active the strong stuff
$comb='4'; // the amount of combinations you made above (and did not comment out)
for ($p=0;$p<$pass_length;)
{
mt_srand((double)microtime()*1000000);
$strpart=mt_rand(1,$comb);
// checking if the stringpart is not the same as the previous one
if($strpart<>$previous)
{
$pass_structure.=${'c'.$strpart};
// shortcutting the loop a bit
$p=$p+strlen(${'c'.$strpart});
}
$previous=$strpart;
}
// generating the password from the structure defined in $pass_structure
for ($g=0;$g<strlen($pass_structure);$g++)
{
mt_srand((double)microtime()*1000000);
$sel=substr($pass_structure,$g,1);
$pass.=${'p'.$sel}[mt_rand(0,-1+${'s'.$sel})];
}
return $pass;
}
function LogEntry($text,$writefile=FALSE)
{
global $g_LogFile,$LogFile, $LogData, $LogLevel, $timestart;
static $last;
if(strlen($g_LogFile))
{
$el = str_pad(getmicrotime()- $timestart,10," ");
if($last>0)
$elapsed = getmicrotime() - $last;
if(strlen($el)>10)
$el = substr($el,0,10);
$indent = str_repeat(" ",$LogLevel);
$text = str_pad($text,$LogLevel,"==",STR_PAD_LEFT);
$LogData .= "$el:". round($elapsed,6).":$indent $text";
$last = getmicrotime();
if($writefile==TRUE && is_writable($g_LogFile))
{
if(!$LogFile)
{
if(file_exists($g_LogFile))
unlink($g_LogFile);
$LogFile=@fopen($g_LogFile,"w");
}
if($LogFile)
{
fputs($LogFile,$LogData);
}
}
}
}
function ValidEmail($email)
{
if (eregi("^[a-z0-9]+([-_\.]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,4}", $email))
{
return TRUE;
}
else
{
return FALSE;
}
}
function language($phrase,$LangId=0)
{
global $objSession, $objLanguageCache, $objLanguages;
if($LangId==0)
$LangId = $objSession->Get("Language");
if($LangId==0)
$LangId = $objLanguages->GetPrimary();
$translation = $objLanguageCache->GetTranslation($phrase,$LangId);
return $translation;
}
function admin_language($phrase,$lang=0,$LinkMissing=FALSE)
{
global $objSession, $objLanguageCache, $objLanguages;
//echo "Language passed: $lang<br>";
if($lang==0)
$lang = $objSession->Get("Language");
//echo "Language from session: $lang<br>";
if($lang==0)
$lang = $objLanguages->GetPrimary();
//echo "Language after primary: $lang<br>";
//echo "Phrase: $phrase<br>";
$translation = $objLanguageCache->GetTranslation($phrase,$lang);
if($LinkMissing && substr($translation,0,1)=="!" && substr($translation,-1)=="!")
{
$res = "<A href=\"javascript:OpenPhraseEditor('&direct=1&label=$phrase'); \">$translation</A>";
return $res;
}
else
return $translation;
}
function prompt_language($phrase,$lang=0)
{
return admin_language($phrase,$lang,TRUE);
}
function GetPrimaryTranslation($Phrase)
{
global $objLanguages;
$l = $objLanguages->GetPrimary();
return language($Phrase,$l);
}
function CategoryNameCount($ParentId,$Name)
{
$cat_table = GetTablePrefix()."Category";
$sql = "SELECT Name from $cat_table WHERE ParentId=$ParentId AND ";
$sql .="(Name LIKE '".addslashes($Name)."' OR Name LIKE 'Copy of ".addslashes($Name)."' OR Name LIKE 'Copy % of ".addslashes($Name)."')";
$ado = &GetADODBConnection();
$rs = $ado->Execute($sql);
$ret = array();
while($rs && !$rs->EOF)
{
$ret[] = $rs->fields["Name"];
$rs->MoveNext();
}
return $ret;
}
function CategoryItemNameCount($CategoryId,$Table,$Field,$Name)
{
$Name=addslashes($Name);
$cat_table = GetTablePrefix()."CategoryItems";
$sql = "SELECT $Field FROM $Table INNER JOIN $cat_table ON ($Table.ResourceId=$cat_table.ItemResourceId) ";
$sql .=" WHERE ($Field LIKE 'Copy % of $Name' OR $Field LIKE '$Name' OR $Field LIKE 'Copy of $Name') AND CategoryId=$CategoryId";
//echo $sql."<br>\n ";
$ado = &GetADODBConnection();
$rs = $ado->Execute($sql);
$ret = array();
while($rs && !$rs->EOF)
{
$ret[] = $rs->fields[$Field];
$rs->MoveNext();
}
return $ret;
}
function &GetItemCollection($ItemName)
{
global $objItemTypes;
if(is_numeric($ItemName))
{
$item = $objItemTypes->GetItem($ItemName);
}
else
$item = $objItemTypes->GetTypeByName($ItemName);
if(is_object($item))
{
$module = $item->Get("Module");
$prefix = ModuleTagPrefix($module);
$func = $prefix."_ItemCollection";
if(function_exists($func))
{
$var =& $func();
}
}
return $var;
}
function UpdateCategoryCount($item_type,$CategoriesIds,$ListType='')
{
global $objCountCache, $objItemTypes;
$db=&GetADODBConnection();
if( !is_numeric($item_type) )
{
$sql = 'SELECT ItemType FROM '.$objItemTypes->SourceTable.' WHERE ItemName=\''.$item_type.'\'';
$item_type=$db->GetOne($sql);
}
$objCountCache->EraseGlobalTypeCache($item_type);
if($item_type)
{
if(is_array($CategoriesIds))
{
$CategoriesIds=implode(',',$CategoriesIds);
}
if (!$CategoriesIds)
{
}
if(!is_array($ListType)) $ListType=Array($ListType=>'opa');
$sql = 'SELECT ParentPath FROM '.GetTablePrefix().'Category WHERE CategoryId IN ('.$CategoriesIds.')';
$rs = $db->Execute($sql);
$parents = Array();
while (!$rs->EOF)
{
$tmp=$rs->fields['ParentPath'];
$tmp=substr($tmp,1,strlen($tmp)-2);
$tmp=explode('|',$tmp);
foreach ($tmp as $tmp_cat_id) {
$parents[$tmp_cat_id]=1;
}
$rs->MoveNext();
}
$parents=array_keys($parents);
$list_types=array_keys($ListType);
foreach($parents as $ParentCategoryId)
{
foreach ($list_types as $list_type) {
$objCountCache->DeleteValue($list_type, $item_type, $ParentCategoryId, 0); // total count
$objCountCache->DeleteValue($list_type, $item_type, $ParentCategoryId, 1); // total count today
}
}
}
else
{
die('wrong item type passed to "UpdateCategoryCount"');
}
/* if(is_object($item))
{
$ItemType = $item->Get("ItemType");
$sql = "DELETE FROM ".$objCountCache->SourceTable." WHERE ItemType=$ItemType";
if( is_numeric($ListType) ) $sql .= " AND ListType=$ListType";
$objCountCache->adodbConnection->Execute($sql);
} */
}
function ResetCache($CategoryId)
{
global $objCountCache;
$db =& GetADODBConnection();
$sql = 'SELECT ParentPath FROM '.GetTablePrefix().'Category WHERE CategoryId = '.$CategoryId;
$parents = $db->GetOne($sql);
$parents = substr($parents,1,strlen($parents)-2);
$parents = explode('|',$parents);
foreach($parents as $ParentCategoryId)
{
$objCountCache->DeleteValue('_', TYPE_TOPIC, $ParentCategoryId, 0); // total topic count
$objCountCache->DeleteValue('_', TYPE_TOPIC, $ParentCategoryId, 1); // total
}
}
function UpdateModifiedCategoryCount($ItemTypeName,$CatId=NULL,$Modifier=0,$ExtraId=NULL)
{
}
function UpdateGroupCategoryCount($ItemTypeName,$CatId=NULL,$Modifier=0,$GroupId=NULL)
{
}
function GetTagCache($module,$tag,$attribs,$env)
{
global $objSystemCache, $objSession, $objConfig;
if($objConfig->Get("SystemTagCache") && !$objSession->Get('PortalUserId'))
{
$name = $tag;
if(is_array($attribs))
{
foreach($attribs as $n => $val)
{
$name .= "-".$val;
}
}
$CachedValue = $objSystemCache->GetContextValue($name,$module,$env, $objSession->Get("GroupList"));
}
else
$CachedValue="";
return $CachedValue;
}
function SaveTagCache($module, $tag, $attribs, $env, $newvalue)
{
global $objSystemCache, $objSession, $objConfig;
if($objConfig->Get("SystemTagCache"))
{
$name = $tag;
if(is_array($attribs))
{
foreach($attribs as $a => $val)
{
$name .= "-".$val;
}
}
$objSystemCache->EditCacheItem($name,$newvalue,$module,0,$env,$objSession->Get("GroupList"));
}
}
function DeleteTagCache($name,$extraparams, $env="")
{
global $objSystemCache, $objConfig;
if($objConfig->Get("SystemTagCache"))
{
$where = "Name LIKE '$name%".$extraparams."'";
if(strlen($env))
$where .= " AND Context LIKE $env";
$objSystemCache->DeleteCachedItem($where);
}
}
/**
* Deletes whole tag cache for
* selected module
*
* @param string $module
* @param string $name
* @access public
*/
function DeleteModuleTagCache($module, $tagname='')
{
global $objSystemCache, $objConfig;
if($objConfig->Get("SystemTagCache"))
{
$where = 'Module LIKE \''.$module.'\'';
if(strlen($tagname))
{
$where .= ' AND Name LIKE \''.$tagname.'\'';
}
$objSystemCache->DeleteCachedItem($where);
}
}
/*function ClearTagCache()
{
global $objSystemCache, $objConfig;
if($objConfig->Get("SystemTagCache"))
{
$where = '';
$objSystemCache->DeleteCachedItem($where);
}
}*/
/*function EraseCountCache()
{
// global $objSystemCache, $objConfig;
$db =& GetADODBConnection();
$sql = 'DELETE * FROM '.GetTablePrefix().'CountCache';
return $db->Execute($sql) ? true : false;
}*/
function ParseTagLibrary()
{
$objTagList = new clsTagList();
$objTagList->ParseInportalTags();
unset($objTagList);
}
function GetDateFormat($LangId=0)
{
global $objLanguages;
if(!$LangId)
$LangId= $objLanguages->GetPrimary();
$l = $objLanguages->GetItem($LangId);
if(is_object($l))
{
$fmt = $l->Get("DateFormat");
}
else
$fmt = "m-d-Y";
if(isset($GLOBALS['FrontEnd'])&&$GLOBALS['FrontEnd'])
return $fmt;
return preg_replace('/y+/i','Y',$fmt);
}
function GetTimeFormat($LangId=0)
{
global $objLanguages;
if(!$LangId)
$LangId= $objLanguages->GetPrimary();
$l = $objLanguages->GetItem($LangId);
if(is_object($l))
{
$fmt = $l->Get("TimeFormat");
}
else
$fmt = "H:i:s";
return $fmt;
}
/**
* Gets one of currently selected language options
*
* @param string $optionName
* @param int $LangId
* @return string
* @access public
*/
function GetRegionalOption($optionName,$LangId=0)
{
global $objLanguages, $objSession;
if(!$LangId) $LangId=$objSession->Get('Language');
if(!$LangId) $LangId=$objLanguages->GetPrimary();
$l = $objLanguages->GetItem($LangId);
return is_object($l)?$l->Get($optionName):false;
}
function LangDate($TimeStamp=NULL,$LangId=0)
{
$fmt = GetDateFormat($LangId);
$ret = adodb_date($fmt,$TimeStamp);
return $ret;
}
function LangTime($TimeStamp=NULL,$LangId=0)
{
$fmt = GetTimeFormat($LangId);
$ret = adodb_date($fmt,$TimeStamp);
return $ret;
}
function LangNumber($Num,$DecPlaces=NULL,$LangId=0)
{
global $objLanguages;
if(!$LangId)
$LangId= $objLanguages->GetPrimary();
$l = $objLanguages->GetItem($LangId);
if(is_object($l))
{
$ret = number_format($Num,$DecPlaces,$l->Get("DecimalPoint"),$l->Get("ThousandSep"));
}
else
$ret = $num;
return $ret;
}
function replacePngTags($x, $spacer="images/spacer.gif")
{
global $rootURL,$pathtoroot;
// make sure that we are only replacing for the Windows versions of Internet
// Explorer 5+, and not Opera identified as MSIE
$msie='/msie\s([5-9])\.?[0-9]*.*(win)/i';
$opera='/opera\s+[0-9]+/i';
if(!isset($_SERVER['HTTP_USER_AGENT']) ||
!preg_match($msie,$_SERVER['HTTP_USER_AGENT']) ||
preg_match($opera,$_SERVER['HTTP_USER_AGENT']))
return $x;
// find all the png images in backgrounds
preg_match_all('/background-image:\s*url\(\'(.*\.png)\'\);/Uis',$x,$background);
for($i=0;$i<count($background[0]);$i++){
// simply replace:
// "background-image: url('image.png');"
// with:
// "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(
// enabled=true, sizingMethod=scale src='image.png');"
// haven't tested to see if background-repeat styles work...
$x=str_replace($background[0][$i],'filter:progid:DXImageTransform.'.
'Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale'.
' src=\''.$background[1][$i].'\');',$x);
}
// OK, time to find all the IMG tags with ".png" in them
preg_match_all('/(<img.*\.png.*>|<input.*type=([\'"])image\\2.*\.png.*>)/Uis',$x,$images);
while(list($imgnum,$v)=@each($images[0])){
$original=$v;
$atts=''; $width=0; $height=0;
// If the size is defined by styles, find
preg_match_all('/style=".*(width: ([0-9]+))px.*'.
'(height: ([0-9]+))px.*"/Ui',$v,$arr2);
if(is_array($arr2) && count($arr2[0])){
// size was defined by styles, get values
$width=$arr2[2][0];
$height=$arr2[4][0];
}
// size was not defined by styles, get values
preg_match_all('/width=\"?([0-9]+)\"?/i',$v,$arr2);
if(is_array($arr2) && count($arr2[0])){
$width=$arr2[1][0];
}
preg_match_all('/height=\"?([0-9]+)\"?/i',$v,$arr2);
if(is_array($arr2) && count($arr2[0])){
$height=$arr2[1][0];
}
preg_match_all('/src=\"([^\"]+\.png)\"/i',$v,$arr2);
if(isset($arr2[1][0]) && !empty($arr2[1][0]))
$image=$arr2[1][0];
else
$image=NULL;
// We do this so that we can put our spacer.gif image in the same
// directory as the image
$tmp=split('[\\/]',$image);
array_pop($tmp);
$image_path=join('/',$tmp);
if(substr($image,0,strlen($rootURL))==$rootURL)
{
$path = str_replace($rootURL,$pathtoroot,$image);
}
else
{
$path = $pathtoroot."themes/telestial/$image";
}
// echo "Sizing $path.. <br>\n";
// echo "Full Tag: ".htmlentities($image)."<br>\n";
//if(!$height || !$width)
//{
$g = imagecreatefrompng($path);
if($g)
{
$height = imagesy($g);
$width = imagesx($g);
}
//}
if(strlen($image_path)) $image_path.='/';
// end quote is already supplied by originial src attribute
$replace_src_with=$spacer.'" style="width: '.$width.
'px; height: '.$height.'px; filter: progid:DXImageTransform.'.
'Microsoft.AlphaImageLoader(src=\''.$image.'\', sizingMethod='.
'\'scale\')';
// now create the new tag from the old
$new_tag=str_replace($image,$replace_src_with,$original);
// now place the new tag into the content
$x=str_replace($original,$new_tag,$x);
}
return $x;
}
function print_pre($str)
{
// no comments here :)
echo '<pre>'.print_r($str, true).'</pre>';
}
function GetOptions($field) // by Alex
{
// get dropdown values from custom field
$tmp =& new clsCustomField();
$tmp->LoadFromDatabase($field, 'FieldName');
$tmp_values = $tmp->Get('ValueList');
unset($tmp);
$tmp_values = explode(',', $tmp_values);
foreach($tmp_values as $mixed)
{
$elem = explode('=', trim($mixed));
$ret[ $elem[0] ] = $elem[1];
}
return $ret;
}
function ResetPage($module_prefix, $page_variable = 'p')
{
// resets page in specific module when category is changed
global $objSession;
if( !is_object($objSession) ) // when changing pages session doesn't exist -> InPortal BUG
{
global $var_list, $SessionQueryString, $FrontEnd;
//if(!$var_list["sid"]) $var_list["sid"] = $_COOKIE["sid"];
$objSession = new clsUserSession($var_list["sid"],($SessionQueryString && $FrontEnd==1));
}
//echo "SID_RESET: ".$GLOBALS['var_list']["sid"].'(COOKIE_SID: '.$_COOKIE["sid"].')<br>';
$last_cat = $objSession->GetVariable('last_category');
$prev_cat = $objSession->GetVariable('prev_category');
//echo "Resetting Page [$prev_cat] -> [$last_cat]<br>";
if($prev_cat != $last_cat) $GLOBALS[$module_prefix.'_var_list'][$page_variable] = 1;
}
if( !function_exists('GetVar') )
{
/**
* @return string
* @param string $name
* @param bool $post_priority
* @desc Get's variable from http query
*/
function GetVar($name, $post_priority = false)
{
if(!$post_priority) // follow gpc_order in php.ini
return isset($_REQUEST[$name]) ? $_REQUEST[$name] : false;
else // get variable from post 1stly if not found then from get
return isset($_POST[$name]) && $_POST[$name] !== false ? $_POST[$name] : ( isset($_GET[$name]) && $_GET[$name] ? $_GET[$name] : false );
}
}
function SetVar($VarName, $VarValue)
{
$_REQUEST[$VarName] = $VarValue;
$_POST[$VarName] = $VarValue;
}
function PassVar(&$source)
{
// source array + any count of key names in passed array
$params = func_get_args();
array_shift($params);
if( count($params) )
{
$ret = Array();
foreach($params as $var_name)
if( isset($source[$var_name]) )
$ret[] = $var_name.'='.$source[$var_name];
$ret = '&'.implode('&', $ret);
}
return $ret;
}
function GetSubmitVariable(&$array, $postfix)
{
// gets edit status of module
// used in case if some modules share
// common action parsed by kernel parser,
// but each module uses own EditStatus variable
$modules = Array('In-Link' => 'Link', 'In-News' => 'News', 'In-Bulletin' => 'Topic', 'In-Portal'=>'Review');
foreach($modules as $module => $prefix)
if( isset($array[$prefix.$postfix]) )
return Array('Module' => $module, 'variable' => $array[$prefix.$postfix]);
return false;
}
function GetModuleByAction()
{
$prefix2module = Array('m' => 'In-Portal', 'l' => 'In-Link', 'n' => 'In-News', 'bb' => 'In-Bulletin');
$action = GetVar('Action');
if($action)
{
$module_prefix = explode('_', $action);
return $prefix2module[ $module_prefix[0] ];
}
else
return false;
}
function dir_size($dir) {
// calculates folder size based on filesizes inside it (recursively)
$totalsize=0;
if ($dirstream = @opendir($dir)) {
while (false !== ($filename = readdir($dirstream))) {
if ($filename!="." && $filename!="..")
{
if (is_file($dir."/".$filename))
$totalsize+=filesize($dir."/".$filename);
if (is_dir($dir."/".$filename))
$totalsize+=dir_size($dir."/".$filename);
}
}
}
closedir($dirstream);
return $totalsize;
}
function size($bytes) {
// shows formatted file/directory size
$types = Array("la_bytes","la_kilobytes","la_megabytes","la_gigabytes","la_terabytes");
$current = 0;
while ($bytes > 1024) {
$current++;
$bytes /= 1024;
}
return round($bytes,2)." ".language($types[$current]);
}
function echod($str)
{
// echo debug output
echo str_replace( Array('[',']'), Array('[<b>', '</b>]'), $str).'<br>';
}
function PrepareParams($source, $to_lower, $mapping)
{
// prepare array with form values to use with item
$result = Array();
foreach($to_lower as $field)
$result[ $field ] = $source[ strtolower($field) ];
if( is_array($mapping) )
{
foreach($mapping as $field_from => $field_to)
$result[$field_to] = $source[$field_from];
}
return $result;
}
function GetELT($field, $phrases = Array())
{
// returns FieldOptions equivalent in In-Portal
$ret = Array();
foreach($phrases as $phrase)
$ret[] = admin_language($phrase);
$ret = "'".implode("','", $ret)."'";
return 'ELT('.$field.','.$ret.')';
}
function GetModuleImgPath($module)
{
global $rootURL, $admin;
return $rootURL.$module.'/'.$admin.'/images';
}
function ActionPostProcess($StatusField, $ListClass, $ListObjectName = '', $IDField = null)
{
// each action postprocessing stuff from admin
if( !isset($_REQUEST[$StatusField]) ) return false;
$list =& $GLOBALS[$ListObjectName];
if( !is_object($list) ) $list = new $ListClass();
$SFValue = $_REQUEST[$StatusField]; // status field value
switch($SFValue)
{
case 1: // User hit "Save" button
$list->CopyFromEditTable($IDField);
break;
case 2: // User hit "Cancel" button
$list->PurgeEditTable($IDField);
break;
}
if( function_exists('SpecificProcessing') ) SpecificProcessing($StatusField, $SFValue);
if($SFValue == 1 || $SFValue == 2) $list->Clear();
}
/**
* Returns array value if key exists
*
* @param Array $aArray
* @param int $aIndex
* @return string
*/
function getArrayValue(&$aArray, $aIndex)
{
return isset($aArray[$aIndex]) ? $aArray[$aIndex] : false;
}
function MakeHTMLTag($element, $attrib_prefix)
{
$result = Array();
$ap_length = strlen($attrib_prefix);
foreach($element->attributes as $attib_name => $attr_value)
if( substr($attib_name, $ap_length) == $ap_length )
$result[] = substr($attib_name, $ap_length, strlen($attib_name)).'="'.$attr_value.'"';
return count($result) ? implode(' ', $result) : false;
}
function GetImportScripts()
{
// return currently installed import scripts
static $import_scripts = Array();
if( count($import_scripts) == 0 )
{
$sql = 'SELECT * FROM '.GetTablePrefix().'ImportScripts ORDER BY is_id';
$db =&GetADODBConnection();
$rs = $db->Execute($sql);
if( $rs && $rs->RecordCount() > 0 )
{
while(!$rs->EOF)
{
$rec =& $rs->fields;
$import_scripts[] = Array( 'label' => $rec['is_label'], 'url' => $rec['is_script'],
'enabled' => $rec['is_enabled'], 'field_prefix' => $rec['is_field_prefix'],
'id' => $rec['is_string_id'], 'required_fields' => $rec['is_requred_fields'],
'module' => strtolower($rec['is_Module']) );
$rs->MoveNext();
}
}
else
{
$import_scripts = Array();
}
}
return $import_scripts;
}
function GetImportScript($id)
{
$scripts = GetImportScripts();
return isset($scripts[$id]) ? $scripts[$id] : false;
}
function GetNextTemplate($current_template)
{
// used on front, returns next template to make
// redirect to
$dest = GetVar('dest', true);
if(!$dest) $dest = GetVar('DestTemplate', true);
return $dest ? $dest : $current_template;
}
// functions for dealign with enviroment variable construction
function GenerateModuleEnv($prefix, $var_list)
{
// globalize module varible arrays
$main =& $GLOBALS[$prefix.'_var_list'];
$update =& $GLOBALS[$prefix.'_var_list_update'];
//echo "VAR: [$main]; VAR_UPDATE: [$update]<br>";
// ensure that we have no empty values in enviroment variable
foreach($update as $vl_key => $vl_value)
if(!$vl_value) $update[$vl_key] = '0'; // unset($update[$vl_key]);
// if update var count is zero, then do nothing
if(count($update) == 0) return '';
foreach($main as $vl_key => $vl_value)
if(!$vl_value) $main[$vl_key] = '0'; // unset($main[$vl_key]);
$ret = Array();
foreach($var_list as $var_name)
$ret[] = GetEnvVar($prefix, $var_name);
return ':'.$prefix.implode('-',$ret);
}
function GetEnvVar($prefix, $name)
{
// get variable from template variable's list
// (used in module parsers to build env string)
$main =& $GLOBALS[$prefix.'_var_list'];
$update =& $GLOBALS[$prefix.'_var_list_update'];
return isset($update[$name]) ? $update[$name] : ( isset($main[$name]) ? $main[$name] : '');
}
/**
* @return int
* @desc Checks for debug mode
*/
function IsDebugMode()
{
return defined('DEBUG_MODE') && constant('DEBUG_MODE') == 1 ? 1 : 0;
}
/**
* Two strings in-case-sensitive compare.
* Returns >0, when string1 > string2,
* <0, when string1 > string2,
* 0, when string1 = string2
*
* @param string $string1
* @param string $string2
* @return int
*/
function stricmp ($string1, $string2) {
return strcmp(strtolower($string1), strtolower($string2));
}
/**
* Generates unique code
*
* @return string
*/
function GenerateCode()
{
list($usec, $sec) = explode(" ",microtime());
$id_part_1 = substr($usec, 4, 4);
$id_part_2 = mt_rand(1,9);
$id_part_3 = substr($sec, 6, 4);
$digit_one = substr($id_part_1, 0, 1);
if ($digit_one == 0) {
$digit_one = mt_rand(1,9);
$id_part_1 = ereg_replace("^0","",$id_part_1);
$id_part_1=$digit_one.$id_part_1;
}
return $id_part_1.$id_part_2.$id_part_3;
}
?>
Property changes on: trunk/globals.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.72
\ No newline at end of property
+1.73
\ No newline at end of property

Event Timeline