Index: trunk/admin/users/adduser_images.php =================================================================== diff -u -N -r822 -r881 --- trunk/admin/users/adduser_images.php (.../adduser_images.php) (revision 822) +++ trunk/admin/users/adduser_images.php (.../adduser_images.php) (revision 881) @@ -99,6 +99,10 @@ $itemcount=$objEditItems->NumItems(); $c = $objEditItems->GetItemByIndex($en); +if (!isset($c->Data['PortalUserId'])) { + $c = $objEditItems->GetItemByIndex(0); +} + if($itemcount>1) { if ($en+1 == $itemcount) Index: trunk/kernel/include/usersession.php =================================================================== diff -u -N -r844 -r881 --- trunk/kernel/include/usersession.php (.../usersession.php) (revision 844) +++ trunk/kernel/include/usersession.php (.../usersession.php) (revision 881) @@ -95,7 +95,7 @@ { if( strlen($inner_sql) ) $inner_sql .= " OR "; - if ($value != "Guest") { + if (!stristr($value, "Guest")) { $inner_sql .= $field." LIKE '%".$value."%'"; } else { Index: trunk/kernel/include/parseditem.php =================================================================== diff -u -N -r875 -r881 --- trunk/kernel/include/parseditem.php (.../parseditem.php) (revision 875) +++ trunk/kernel/include/parseditem.php (.../parseditem.php) (revision 881) @@ -928,7 +928,7 @@ function GetItemByIndex($index) { - return $this->Items[$index]; + return $this->Items[$index]; } function &GetItemRefByIndex($index) @@ -1570,9 +1570,9 @@ // specially made for cats delete if ( GetVar('Action', true) != 'm_cat_delete') { - return parent::Query_Item($sql,$this->GetPageOffset(),$this->GetPageRowCount()); + return parent::Query_Item($sql,$this->GetPageOffset(),$this->GetPageRowCount()); } - else { + else { return parent::Query_Item($sql); } } Index: trunk/admin/users/addgroup.php =================================================================== diff -u -N -r822 -r881 --- trunk/admin/users/addgroup.php (.../addgroup.php) (revision 822) +++ trunk/admin/users/addgroup.php (.../addgroup.php) (revision 881) @@ -95,6 +95,7 @@ $objEditItems->EnablePaging = FALSE; $objCustomFields = new clsCustomFieldList(6); +$objUserGroupsList = new clsUserGroupList(); //$objRelList = new clsRelationshipList(); //Multiedit init @@ -108,6 +109,7 @@ $objGroups->CreateEmptyEditTable("GroupId"); // $objRelList->CreateEmptyEditTable("RelationshipId"); $objCustomDataList->CreateEmptyEditTable("CustomDataId"); + $objUserGroupsList->CreateEmptyEditTable("PortalUserId"); } else { @@ -122,6 +124,7 @@ /* make a copy of the relationship records */ $ids = $objEditItems->GetResourceIDList(); $objCustomDataList->CopyToEditTable("ResourceId",$ids); + $objUserGroupsList->CopyToEditTable("GroupId", $ids); } $itemcount=$objEditItems->NumItems(); Index: trunk/kernel/include/portaluser.php =================================================================== diff -u -N -r875 -r881 --- trunk/kernel/include/portaluser.php (.../portaluser.php) (revision 875) +++ trunk/kernel/include/portaluser.php (.../portaluser.php) (revision 881) @@ -985,7 +985,7 @@ $sql = "SELECT * FROM $edit_table"; $rs = $this->adodbConnection->Execute($sql); -// echo $sql."
"; + //echo $sql."
"; while($rs && !$rs->EOF) { Index: trunk/admin/config/config_search.php =================================================================== diff -u -N -r787 -r881 --- trunk/admin/config/config_search.php (.../config_search.php) (revision 787) +++ trunk/admin/config/config_search.php (.../config_search.php) (revision 881) @@ -228,9 +228,25 @@ print ""; print "\n"; print "\n"; - } + } } } + + if ($module == 'In-Portal') { + $cfg = "Search_MinKeyword_Length"; + $value = $objConfig->Get($cfg); + if(!is_numeric($value)) { + $value = (int)$objConfig->Get("Search_MinKeyword_Length"); + } + + int_subsection_title(prompt_language("la_Text_MinKeyWordLength")); + print "\n"; + print "".prompt_language("la_prompt_MinKeyWordLength")."\n"; + print ""; + print ""; + print "\n"; + print "\n"; + } ?> > Index: trunk/kernel/admin/include/toolbar/edituser_items.php =================================================================== diff -u -N -r278 -r881 --- trunk/kernel/admin/include/toolbar/edituser_items.php (.../edituser_items.php) (revision 278) +++ trunk/kernel/admin/include/toolbar/edituser_items.php (.../edituser_items.php) (revision 881) @@ -7,14 +7,17 @@ $cat_select = $adminURL."/cat_select.php"; $NumItems = 0; -$Item_AllValue = 0; +$Item_AllValue = 1; for($i=0;$i<$objItemTypes->NumItems(); $i++) { if($objItemTypes->Items[$i]->Get("PrimaryItem")=="1") $Item_AllValue += pow(2,++$NumItems); } $ItemView = $objConfig->Get("UserItem_View"); + +//echo "ItemAll: $Item_AllValue : ItemView: $ItemView
"; + if(!is_numeric($ItemView)) { $ItemView = $Item_AllValue; Index: trunk/kernel/include/portalgroup.php =================================================================== diff -u -N -r701 -r881 --- trunk/kernel/include/portalgroup.php (.../portalgroup.php) (revision 701) +++ trunk/kernel/include/portalgroup.php (.../portalgroup.php) (revision 881) @@ -117,9 +117,11 @@ function AddUser($UserId,$PrimaryGroup=0) { + global $objSession; + // add user to group OR just updates it's status there $db =& $this->adodbConnection; - $table = GetTablePrefix().'UserGroup'; + $table = $objSession->GetEditTable("UserGroup");//GetTablePrefix().'UserGroup'; $group_id = $this->Get('GroupId'); $sql_patterns['check'] = 'SELECT PortalUserId FROM %s WHERE GroupId = %s AND PortalUserId = %s'; @@ -150,7 +152,9 @@ function DeleteUser($UserId) { - $sql = "DELETE FROM ".GetTablePrefix()."UserGroup WHERE PortalUserId=$UserId AND GroupId=".$this->Get("GroupId"); + global $objSession; + + $sql = "DELETE FROM ".$objSession->GetEditTable("UserGroup")." WHERE PortalUserId=$UserId AND GroupId=".$this->Get("GroupId"); $this->adodbConnection->Execute($sql); } @@ -194,7 +198,9 @@ function GetUserList() { - $sql = "SELECT * FROM ".GetTablePrefix()."UserGroup WHERE GroupId=".$this->Get("GroupId"); + global $objSession; + + $sql = "SELECT * FROM ".$objSession->GetEditTable("UserGroup")." WHERE GroupId=".$this->Get("GroupId"); $rs = $this->adodbConnection->Execute($sql); $res = array(); while($rs && !$rs->EOF) @@ -487,7 +493,7 @@ } } -/* + class clsUserGroupList extends clsItemCollection { function clsUserGroupList() @@ -497,6 +503,38 @@ $this->SetTable('live', GetTablePrefix()."UserGroup"); $this->id_field = "PortalUserId"; // don't try to insert by this ID :) } + + function CopyFromEditTable($idfield) + { + global $objSession; + $GLOBALS['_CopyFromEditTable']=1; + + $edit_table = $objSession->GetEditTable($this->SourceTable); + $sql = "SELECT * FROM $edit_table"; + $rs = $this->adodbConnection->Execute($sql); + + //echo $sql."
"; + + $clear_old = true; + while($rs && !$rs->EOF) + { + $data = $rs->fields; + + if ($clear_old) { + $sql = "DELETE FROM ".$this->SourceTable." WHERE $idfield = ".$data[$idfield]; + @$this->adodbConnection->Execute($sql); + $clear_old = false; + } + + $sql = "INSERT INTO ".$this->SourceTable." (PortalUserId, GroupId, PrimaryGroup) VALUES (".$data['PortalUserId'].", ".$data['GroupId'].", ".$data['PrimaryGroup'].")"; + @$this->adodbConnection->Execute($sql); + + $rs->MoveNext(); + } + + @$this->adodbConnection->Execute("DROP TABLE IF EXISTS $edit_table"); + unset($GLOBALS['_CopyFromEditTable']); + } } -*/ + ?> Index: trunk/admin/users/adduser_custom.php =================================================================== diff -u -N -r822 -r881 --- trunk/admin/users/adduser_custom.php (.../adduser_custom.php) (revision 822) +++ trunk/admin/users/adduser_custom.php (.../adduser_custom.php) (revision 881) @@ -103,7 +103,7 @@ $en = GetVar('en'); $objEditItems->Query_Item("SELECT * FROM ".$objEditItems->SourceTable); $itemcount=$objEditItems->NumItems(); - +//echo "EN: $en
"; $c = $objEditItems->GetItemByIndex($en); if($itemcount>1) Index: trunk/admin/users/adduser.php =================================================================== diff -u -N -r822 -r881 --- trunk/admin/users/adduser.php (.../adduser.php) (revision 822) +++ trunk/admin/users/adduser.php (.../adduser.php) (revision 881) @@ -93,7 +93,7 @@ $objCustomFields = new clsCustomFieldList(6); $objRelList = new clsRelationshipList(); $objImages = new clsImageList(); -//$objUserGroupsList = new clsUserGroupList(); +$objUserGroupsList = new clsUserGroupList(); //Multiedit init if ( GetVar('new') == 1) @@ -107,7 +107,7 @@ $objRelList->CreateEmptyEditTable("RelationshipId"); $objCustomDataList->CreateEmptyEditTable("CustomDataId"); $objImages->CreateEmptyEditTable("ResourceId"); - //$objUserGroupsList->CreateEmptyEditTable("PortalUserId"); + $objUserGroupsList->CreateEmptyEditTable("PortalUserId"); } else { @@ -127,11 +127,13 @@ if(isset($_POST["itemlist"])) { /* make a copy of the relationship records */ + $user_ids = Array(); + $user_ids[] = $u->Get("PortalUserId"); $ids = $objEditItems->GetResourceIDList(); $objRelList->CopyToEditTable("SourceId",$ids); $objCustomDataList->CopyToEditTable("ResourceId",$ids); $objImages->CopyToEditTable("ResourceId",$ids); - //$objUserGroupsList->CopyToEditTable("PortalUserId", $ids); + $objUserGroupsList->CopyToEditTable("PortalUserId", $user_ids); } $itemcount=$objEditItems->NumItems(); Index: trunk/admin/users/adduser_items.php =================================================================== diff -u -N -r836 -r881 --- trunk/admin/users/adduser_items.php (.../adduser_items.php) (revision 836) +++ trunk/admin/users/adduser_items.php (.../adduser_items.php) (revision 881) @@ -96,17 +96,20 @@ unset($objEditItems); -$objEditItems = new clsCatList(); +$objEditItems = new clsUserManager(); $objEditItems->SourceTable = $objSession->GetEditTable("PortalUser"); $objEditItems->EnablePaging = FALSE; //Multiedit init $en = GetVar('en'); $objEditItems->Query_Item("SELECT * FROM ".$objEditItems->SourceTable); - $itemcount=$objEditItems->NumItems(); $c = $objEditItems->GetItemByIndex($en); +if (!isset($c->Data['PortalUserId'])) { + $c = $objEditItems->GetItemByIndex(0); +} + if($itemcount>1) { if ($en+1 == $itemcount) @@ -126,7 +129,7 @@ $section = 'in-portal:edituser_items'; $sec = $objSections->GetSection($section); -$title = GetTitle("la_Text_User", "la_tab_Images", $c->Get('PortalUserId'), $c->Get('Login'));//admin_language("la_Text_Editing")." ".admin_language("la_Text_User")." '".$c->Get("Login")."' - ".admin_language("la_tab_Images"); +$title = GetTitle("la_Text_User", "la_tab_ItemList", $c->Get('PortalUserId'), $c->Get('Login'));//admin_language("la_Text_Editing")." ".admin_language("la_Text_User")." '".$c->Get("Login")."' - ".admin_language("la_tab_Images"); $objListToolBar = new clsToolBar(); $objListToolBar->Add("img_save", "la_Save","#","swap('img_save','toolbar/tool_select_f2.gif');", "swap('img_save', 'toolbar/tool_select.gif');","do_edit_save('save_edit_buttons','".$admin."/users/user_list.php',1);","tool_select.gif"); @@ -157,14 +160,28 @@ $objListToolBar->AddToInitScript("fwLoadMenus();"); $filter = false; // always initialize variables before use +$ItemView = $objConfig->Get("UserItem_View"); +$NumItems = 0; +$Item_AllValue = 1; +for($i=0;$i<$objItemTypes->NumItems(); $i++) +{ + if($objItemTypes->Items[$i]->Get("PrimaryItem")=="1") { + $Item_AllValue += pow(2,++$NumItems); + } +} -if ($ItemView != $Bit_All) { +if(!is_numeric($ItemView)) +{ + $ItemView = $Item_AllValue; +} + +if ($ItemView != $Item_AllValue) { $filter = true; } -$title = admin_language("la_Text_Editing")." ".admin_language("la_Text_User")." '".$c->Get("Login")."' - ".admin_language("la_tab_ItemList"); +//$title = admin_language("la_Text_Editing")." ".admin_language("la_Text_User")." '".$c->Get("Login")."' - ".admin_language("la_tab_ItemList"); int_header($objListToolBar,NULL, $title); if ($objSession->GetVariable("HasChanges") == 1) { ?> Index: trunk/kernel/action.php =================================================================== diff -u -N -r874 -r881 --- trunk/kernel/action.php (.../action.php) (revision 874) +++ trunk/kernel/action.php (.../action.php) (revision 881) @@ -971,6 +971,10 @@ $cfg = "Search_ShowMultiple_".$_POST['cfg_var']; $objConfig->Set($cfg, 0); } + + if (isset($_POST['minkeyword'])) { + $objConfig->Set("Search_MinKeyword_Length", $_POST['minkeyword']); + } $objConfig->Save(); break; @@ -2335,30 +2339,38 @@ /* User Edit */ if( GetVar('UserEditStatus') == 1 ) { + $objUserGroupsList = new clsUserGroupList(); $objUsers->CopyFromEditTable("PortalUserId"); $objCustomDataList->CopyFromEditTable("CustomDataId"); + $objUserGroupsList->CopyFromEditTable("PortalUserId"); $objGroups->Clear(); $objImages = new clsImageList(); $objImages->CopyFromEditTable("ImageId"); } if( GetVar('UserEditStatus') == 2 ) { + $objUserGroupsList = new clsUserGroupList(); $objGroups->PurgeEditTable("PortalUserId"); + $objUserGroupsList->PurgeEditTable("PortalUserId"); $objCustomDataList->PurgeEditTable("CustomDataId"); $objGroups->Clear(); } /* Group Edit */ if( GetVar('GroupEditStatus') == 1 ) { + $objUserGroupsList = new clsUserGroupList(); $objGroups->CopyFromEditTable("GroupId"); $objCustomDataList->CopyFromEditTable("CustomDataId"); + $objUserGroupsList->CopyFromEditTable("GroupId"); $objGroups->Clear(); } if( GetVar('GroupEditStatus') == 2 ) { + $objUserGroupsList = new clsUserGroupList(); $objGroups->PurgeEditTable("GroupId"); $objCustomDataList->PurgeEditTable("CustomDataId"); + $objUserGroupsList->PurgeEditTable("PortalUserId"); $objGroups->Clear(); } Index: trunk/admin/users/addgroup_users.php =================================================================== diff -u -N -r822 -r881 --- trunk/admin/users/addgroup_users.php (.../addgroup_users.php) (revision 822) +++ trunk/admin/users/addgroup_users.php (.../addgroup_users.php) (revision 881) @@ -232,8 +232,9 @@ $sql = "SELECT u.*,g.Name as GroupName,ELT(u.status+1,'".admin_language("la_Text_Disabled")." ','".admin_language("la_Text_Enabled")." ','".admin_language("la_Text_Pending")."') as UserStatus, "; $sql .="FROM_UNIXTIME(u.CreatedOn,'%m-%d-%Y') as DateCreated FROM ".GetTablePrefix()."PortalUser as u "; -$sql .="LEFT JOIN ".GetTablePrefix()."UserGroup as ug ON (u.PortalUserId=ug.PortalUserId) AND (ug.PrimaryGroup = 1) "; +$sql .="LEFT JOIN ".$objSession->GetEditTable("UserGroup")." as ug ON (u.PortalUserId=ug.PortalUserId) AND (ug.PrimaryGroup = 1) "; $sql .="LEFT JOIN ".GetTablePrefix()."PortalGroup as g ON (ug.GroupId=g.GroupId) WHERE 1"; + if(strlen($where)) $sql .= " AND ".$where; //$sql .=" ".GetLimitSQL($objSession->GetVariable("Page_Userlist"),$objConfig->Get("Perpage_User")); Index: trunk/admin/users/adduser_groups.php =================================================================== diff -u -N -r822 -r881 --- trunk/admin/users/adduser_groups.php (.../adduser_groups.php) (revision 822) +++ trunk/admin/users/adduser_groups.php (.../adduser_groups.php) (revision 881) @@ -243,7 +243,7 @@ if(strlen($orderBy)) $orderBy = " ORDER BY ".$orderBy; $sql = "SELECT g.GroupId as GroupId, g.name as GroupName, count(u.PortalUserId) as UserCount FROM ".GetTablePrefix()."PortalGroup as g "; -$sql .="INNER JOIN ".GetTablePrefix()."UserGroup as u ON g.GroupId=u.GroupId WHERE u.PortalUserId=".$c->Get("PortalUserId")." $where GROUP BY g.name".$orderBy; +$sql .="INNER JOIN ".$objSession->GetEditTable("UserGroup")." as u ON g.GroupId=u.GroupId WHERE u.PortalUserId=".$c->Get("PortalUserId")." $where GROUP BY g.name".$orderBy; if($objSession->HasSystemPermission("DEBUG.LIST")) echo htmlentities($sql,ENT_NOQUOTES)."
\n"; Index: trunk/kernel/include/itemdb.php =================================================================== diff -u -N -r872 -r881 --- trunk/kernel/include/itemdb.php (.../itemdb.php) (revision 872) +++ trunk/kernel/include/itemdb.php (.../itemdb.php) (revision 881) @@ -165,6 +165,7 @@ if( !(isset($_GET['new']) && $_GET['new']) ) { $this->DetectChanges($name[$i], $value[$value]); } + $this->Data[$name[$i]] = $value[$i]; $this->m_dirtyFieldsMap[$name[$i]] = $value[$i]; }