<?php 
##############################################################
##In-portal													##
##############################################################
##					      In-portal							##
##					Intechnic Corporation					##
##			   All Rights Reserved, 1998-2002				##
##															##	
##	No portion of this code may be copied, reproduced or	##	
##	   otherwise redistributed without proper written		##
##	  consent of Intechnic Corporation.  Violation will		##
##	   result in revocation of the license and support		##
##	 privileges along maximum prosecution allowed by law.	##
##############################################################

// new startup: begin
define('REL_PATH', 'admin/users');
$relation_level = count( explode('/', REL_PATH) );
define('FULL_PATH', realpath(dirname(__FILE__) . str_repeat('/..', $relation_level) ) );
require_once FULL_PATH.'/kernel/startup.php';
// new startup: end

require_once ($pathtoroot.$admin."/include/elements.php"); 
require_once ($pathtoroot."kernel/admin/include/navmenu.php"); 
//require_once ($pathtolocal."admin/include/navmenu.php"); 
require_once($pathtoroot.$admin."/toolbar.php");

unset($objEditItems);
$objEditItems = new clsUserManager();
$objEditItems->SourceTable = $objSession->GetEditTable("PortalUser");
$objEditItems->EnablePaging = FALSE;
$objCustomFields = new clsCustomFieldList(6);
$objRelList = new clsRelationshipList();
$objImages = new clsImageList();
$objUserGroupsList = new clsUserGroupList();

//Multiedit init
if ( GetVar('new') == 1)
{
	$c = new clsPortalUser(NULL);
	$c->Set("CreatedOn", adodb_mktime());
	$c->Set("Status", 2);
    $en = 0;
    $action = "m_add_user";
    $objUsers->CreateEmptyEditTable("PortalUserId");
    $objRelList->CreateEmptyEditTable("RelationshipId");
    $objCustomDataList->CreateEmptyEditTable("CustomDataId");
    $objImages->CreateEmptyEditTable("ResourceId");  
    $objUserGroupsList->CreateEmptyEditTable("PortalUserId");
    
    $objItemTypes->BuildUserItemTable(-1, 1); // 0 - user_id, 1 - clear table
}
else
{   
	$direct_id = GetVar('direct_id');
	if($direct_id) $_POST['itemlist'] = Array($direct_id);
	
	$en = GetVar('en');
    if (isset($_POST["itemlist"]))
    {         
        $objUsers->CopyToEditTable("ResourceId",$_POST["itemlist"]);                
    }   
    $objEditItems->Query_Item("SELECT * FROM ".$objEditItems->SourceTable);
    $first=1;
    foreach($objEditItems->Items as $u)
    {
        $objItemTypes->BuildUserItemTable($u->Get("PortalUserId"),$first);            
        $first=0;        
    }

    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", $user_ids);
    }

    $itemcount=$objEditItems->NumItems();
    $c = $objEditItems->GetItemByIndex($en);

    if($itemcount>1)
    {    
	  if ($en+1 == $itemcount)
		$en_next = -1;
	  else
		$en_next = $en+1;
	
	  if ($en == 0)
		$en_prev = -1;
	  else
		$en_prev = $en-1;	
    }
    $action = "m_edit_user";
}

$envar = "env=" . BuildEnv() . "&en=$en";
	
$section = 'in-portal:edituser_general'; 

if (strlen($c->Get("Login")))
	$editing_title = "'".$c->Get("Login")."' ";
else
	$editing_title = "";


$title = GetTitle("la_Text_User", "la_Text_General", $c->Get('PortalUserId'), $c->Get('Login'));
$c->Data=inp_htmlize($c->Data);

$saveURL = $admin."/".$objSession->GetVariable('ReturnScript');

//Display header
$sec = $objSections->GetSection($section);
$objCatToolBar = new clsToolBar();
$objCatToolBar->Add("img_save", "la_Save","#","swap('img_save','toolbar/tool_select_f2.gif');", "swap('img_save', 'toolbar/tool_select.gif');","edit_submit('edituser','UserEditStatus','".$saveURL."',1);","tool_select.gif");
$objCatToolBar->Add("img_cancel", "la_Cancel","#","swap('img_cancel','toolbar/tool_cancel_f2.gif');", "swap('img_cancel', 'toolbar/tool_cancel.gif');","edit_submit('edituser','UserEditStatus','".$saveURL."',2);","tool_cancel.gif");

if ( isset($en_prev) || isset($en_next) )
{
  $url = $RootUrl.$admin."/users/adduser.php"; 
  $StatusField = "UserEditStatus";
  $form = "edituser";
  MultiEditButtons($objCatToolBar,$en_next,$en_prev,$form,$StatusField,$url,$sec->Get("OnClick"),'','la_PrevUser','la_NextUser');  
}

int_header($objCatToolBar,NULL,$title);

if ($objSession->GetVariable("HasChanges") == 1) {
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0" class="toolbar">
  <tr>
    <td valign="top">
      <?php int_hint_red(admin_language("la_Warning_Save_Item")); ?>
    </td>
  </tr>
</table>
<?php } ?> 
<table width="100%" border="0" cellspacing="0" cellpadding="4" class="tableborder">
<form ID="edituser" name="edituser" action="" method=POST>	 
  
  <?php int_subsection_title(prompt_language("la_Text_User")); ?>

  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span id="prompt_user_login" class="text"><?php echo prompt_language("la_prompt_Usermame"); ?></span></td>
    <td> 
      <input type="text" tabindex="1" name="user_login" ID="user_login" class="text" ValidationType="exists" size="20" value="<?php echo isset($dupe_user) && $dupe_user ? $dupe_user : $c->parsetag("user_login"); ?>">
      <span class="validation_error"><?php if( isset($dupe_user) && $dupe_user ) echo admin_language($lvErrorString); ?></span>
    </td>
    <td></td>
  </tr>
  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span ID="prompt_password" class="text"><?php echo prompt_language("la_prompt_Password"); ?></span></td>
    <td> 
      <input type="password" id="password" tabindex="2" name="password" class="text" ValidationType="password" size="20" value="">
      <?php if( !GetVar('new') ) echo prompt_language("la_password_info"); ?>
    </td>     
    <td></td>
  </tr>
  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span ID="prompt_password_verify" class="text"><?php echo prompt_language("la_prompt_PasswordRepeat"); ?></span></td>
    <td> 
     <input type="password" id="password_verify" tabindex="4" name="password_verify" class="text" size="20" value="">
    </td>
    <td></td>
  </tr>

  <?php int_subsection_title(prompt_language("la_prompt_PersonalInfo")); ?>

  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span id="prompt_user_firstname" class="text"><?php echo prompt_language("la_prompt_FirstName"); ?></span></td>
    <td> 
      <input type="text" name="user_firstname" class="text" tabindex="5" size="30" value="<?php echo $c->parsetag("user_firstname"); ?>">
    </td>
    <td></td>
  </tr>
  
	<tr <?php int_table_color(); ?>> 
    	<td valign="top">
    		<span id="prompt_user_lastname" class="text"><?php echo prompt_language("la_prompt_LastName"); ?></span>
    	</td>
    	<td> 
     		<input type="text" name="user_lastname" class="text" tabindex="6" size="30" value="<?php echo $c->parsetag("user_lastname"); ?>">
    	</td>
    	<td></td>
  	</tr>
  	
  	<tr <?php int_table_color(); ?>> 
    	<td valign="top">
    		<span id="prompt_user_company" class="text"><?php echo prompt_language("la_fld_Company"); ?></span>
    	</td>
    	<td> 
     		<input type="text" name="user_company" class="text" tabindex="7" size="30" value="<?php echo inp_htmlize($c->Get('Company')); ?>">
    	</td>
    	<td></td>
  	</tr>

  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span ID="prompt_user_email" class="text"><?php echo prompt_language("la_prompt_Email"); ?></span></td>
    <td> 
     <input type="text" ValidationType="exists" name="user_email" tabindex="8" ID="user_email" class="text" size="30" value="<?php echo $c->parsetag("user_email"); ?>">
    </td>
    <td><span class="text">&nbsp;</span></td>
  </tr>
  <tr <?php int_table_color(); ?>> 
    <td valign="top"><SPAN id="prompt_user_dob" class="text"><?php echo prompt_language("la_prompt_birthday"); ?></SPAN></td>
    <td> 
      <input type="text" ValidationType="date,exists" tabindex="9" name="user_dob" id="user_dob_selector" datepickerIcon="<?php echo $adminURL; ?>/images/ddarrow.gif" class="text" size="20" value="<?php echo $c->parsetag("user_dob"); ?>">            
      <span class="small"><?php echo prompt_language("la_prompt_DateFormat"); ?></span></td>
    <td></td>
  </tr>

  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span id="prompt_user_phone" class="text"><?php echo prompt_language("la_prompt_Phone"); ?></span></td>
    <td> 
     <input type="text" name="user_phone" tabindex="10" class="text" size="30" value="<?php echo inp_htmlize($c->Get('Phone')); ?>">
    </td>
    <td><span class="text">&nbsp;</span></td>
  </tr>
  
	<tr <?php int_table_color(); ?>> 
    	<td valign="top">
    		<span id="prompt_user_fax" class="text"><?php echo prompt_language("la_fld_Fax"); ?></span>
    	</td>
    	<td> 
     		<input type="text" name="user_fax" tabindex="11" class="text" size="30" value="<?php echo inp_htmlize($c->Get('Fax')); ?>">
    	</td>
    	<td>
    		<span class="text">&nbsp;</span>
    	</td>
	</tr>

	<tr <?php int_table_color(); ?>> 
		<td valign="top">
			<span id="prompt_user_street" class="text"><?php echo prompt_language("la_fld_AddressLine"); ?> 1</span>
		</td>
		<td> 
     		<input type="text" name="user_street" tabindex="12" class="text" size="40" value="<?php echo inp_htmlize($c->Get('Street')); ?>">
    	</td>
    	<td>
    		<span class="text">&nbsp;</span>
    	</td>
  	</tr>
  	
  	<tr <?php int_table_color(); ?>> 
		<td valign="top">
			<span id="prompt_user_street2" class="text"><?php echo prompt_language("la_fld_AddressLine"); ?> 2</span>
		</td>
		<td> 
     		<input type="text" name="user_street2" tabindex="13" class="text" size="40" value="<?php echo inp_htmlize($c->Get('Street2')); ?>">
    	</td>
    	<td>
    		<span class="text">&nbsp;</span>
    	</td>
  	</tr>
  
  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span id="prompt_user_city" class="text"><?php echo prompt_language("la_prompt_City"); ?></span></td>
    <td> 
     <input type="text" name="user_city" class="text" tabindex="14" size="30" value="<?php echo $c->parsetag("user_city"); ?>">
    </td>
    <td><span class="text">&nbsp;</span></td>
  </tr>
    <tr <?php int_table_color(); ?>> 
    <td valign="top"><span id="prompt_user_state" class="text"><?php echo prompt_language("la_prompt_State"); ?></span></td>
    <td> 
     <input type="text" name="user_state" class="text" tabindex="15" size="20" value="<?php echo $c->parsetag("user_state"); ?>">
    </td>
    <td><span class="text">&nbsp;</span></td>
  </tr>
  <tr <?php int_table_color(); ?>> 
    <td valign="top"><span id="prompt_user_zip" class="text"><?php echo prompt_language("la_prompt_Zip"); ?></span></td>
    <td> 
     <input type="text" name="user_zip" class="text" size="6" tabindex="16" value="<?php echo $c->parsetag("user_zip"); ?>">
    </td>
    <td><span class="text">&nbsp;</span></td>
  </tr>
    <tr <?php int_table_color(); ?>> 
    <td valign="top"><span id="prompt_user_country" class="text"><?php echo prompt_language("la_prompt_Country"); ?></span></td>
    <td> 
     <input type="text" name="user_country" class="text" tabindex="17" size="30" value="<?php echo $c->parsetag("user_country"); ?>">
    </td>
    <td><span class="text">&nbsp;</span></td>
  </tr>
  <?php int_subsection_title(prompt_language("la_prompt_Properties")); ?>
  <tr <?php int_table_color(); ?>>
    <td valign="top"><span id="prompt_status" class="text"><?php echo prompt_language("la_prompt_Status"); ?></span></td>
    <td>
      <input type="radio" name="status" class="text" tabindex="18" value="1" <?php if($c->Get("Status") == 1) echo "checked"; ?>><?php echo prompt_language("la_val_Active"); ?>
      <input type="radio" name="status" class="text" tabindex="18" value="2" <?php if($c->Get("Status") == 2) echo "checked"; ?>><?php echo prompt_language("la_val_Pending"); ?>
      <input type="radio" name="status" class="text" tabindex="18" value="0" <?php if($c->Get("Status") == 0) echo "checked"; ?>><?php echo prompt_language("la_val_Disabled"); ?>
     </td>
    <td class="text">&nbsp;</td>
  </tr>
  <!-- User: CreatedOn: begin -->
 <tr <?php int_table_color(); ?>> 
    <td valign="top"><SPAN id="prompt_user_date" class="text"><?php echo prompt_language("la_prompt_CreatedOn"); ?></SPAN></td>
    <td> 
      <input type="text" name="user_date" id="user_date_selector" tabindex="19" datepickerIcon="<?php echo $adminURL; ?>/images/ddarrow.gif" class="text" size="20" value="<?php echo $c->parsetag("user_date"); ?>">            
      <span class="small"><?php echo prompt_language("la_prompt_DateFormat"); ?></span></td>
    <td></td>
  </tr>
  <tr <?php int_table_color(); ?>> 
    <td valign="top"><SPAN id="prompt_user_time" class="text"><?php echo prompt_language("la_prompt_CreatedOn_Time"); ?></SPAN></td>
    <td> 
      <input type="text" name="user_time" tabindex="20" class="text" size="20" value="<?php echo $c->parsetag("user_time"); ?>">
      <span class="small"><?php echo prompt_language("la_prompt_TimeFormat"); ?></span></td>
    <td></td>
  </tr>
  <!-- User: CreatedOn: end -->
  
<?php

$CustomFieldUI = $objCustomFields->GetFieldUIList(TRUE); // get custom fields to show on general tab
if($CustomFieldUI->NumItems()>0)
{
  $objCustomDataList->SetTable('edit');
  
  if((int)$c->Get("ResourceId")>0)
	$objCustomDataList->LoadResource($c->Get("ResourceId"));
	
  $headings = $CustomFieldUI->GetHeadingList();
  // draw headings
  for($i = 0; $i < count($headings); $i++)
  {
    $h = $headings[$i];
    if(strlen($h))
    {
        int_subsection_title(prompt_language($h));
        $Items = $CustomFieldUI->GetHeadingItems($h);
        foreach($Items as $f)
        {
        	$n = substr($f->name,1); // TabIndex
        	$cfield = $objCustomFields->GetItemByField('FieldName',$n,FALSE);
        	if(is_object($cfield))
        	{
        		$cv = $objCustomDataList->GetDataItem($cfield->Get("CustomFieldId"));
        		if(is_object($cv))
        		{
        	      $f->default_value = $cv->Get("Value");
        		}
        	}
            print "<tr ".int_table_color_ret().">\n"; 
            print "  <td valign=\"top\"><span class=\"text\">".$f->GetPrompt()."</span></td>\n";
            
            print "  <td nowrap>".$f->ItemFormElement(17)."</TD>";       
            if(is_object($f->NextItem))
            {
                $n = $f->NextItem;
                print "  <td>".$n->ItemFormElement(17)."</TD>";       
            }
            else
              print "  <td><span class=\"text\">&nbsp;</span></td>\n";
            print "</tr>\n";
        }
    }
  }
  $objCustomDataList->SetTable('live');
}
?>
  <tr <?php int_table_color(); ?>> 
    <td colspan="3"> 
	  <input type="hidden" name="Action" value="<?php echo $action; ?>">
	  <input type="hidden" name="user_id" value="<?php echo $c->Get("PortalUserId"); ?>">
      <input type="hidden" name="UserEditStatus" VALUE="0">
   </td>
  </tr>
    </td>
  </tr>
</table>
</form>
<script src="<?php echo $adminURL; ?>/include/calendar.js"></script>
<SCRIPT language="JavaScript">
    initCalendar("user_date_selector", CalDateFormat);
    initCalendar("user_dob_selector", CalDateFormat);
</SCRIPT> 
<?php 
	MarkFields('edituser');
	int_footer(); 
?>