<?php
   if (!isset($user->htmleditor)) {
       $user->htmleditor = 1;
   }
   if (!isset($user->picture)) {
       $user->picture = NULL;
   }
   if (empty($user->lang)) {
       $user->lang = $CFG->lang;
   }
   if (!isset($user->theme)) {
       $user->theme = '';
   }
   if (!isset($user->trackforums)) {
       $user->trackforums = 0;
   }

?>

<form method="post" name="form" enctype="multipart/form-data" action="edit.php">
<table class="formtable">
<?php
if (isadmin()) {
    $theadmin = get_admin();
    $adminself = (($theadmin->id == $USER->id) and ($USER->id == $user->id));
    echo '<tr>';
    echo '<th>'.get_string('username').':</th>';
    if ($adminself || is_internal_auth($user->auth) ){
        echo "<td><input type=\"text\" name=\"username\" size=\"20\" alt=\"".get_string("username")."\" value=\"";
        p($user->username);
        echo "\" />";
        if (isset($err["username"])) formerr($err["username"]);
    } else {
        echo "<td>";
        p($user->username);
        echo "<input type=\"hidden\" name=\"username\" value=\"";
        p($user->username);
        echo "\" />";
    }
    echo "</td>";
    echo "</tr>\n";

    $modules = get_list_of_plugins("auth");
    $auth_options = array();
    foreach ($modules as $module) {
        $auth_options[$module] = get_string("auth_$module"."title", "auth");
    }
    if (!$adminself) {    /// Main admin is ALWAYS default manual
        echo '<tr>';
        echo '<th>'.get_string("chooseauthmethod","auth").':</th>' . "\n<td>";
        choose_from_menu ($auth_options, 'auth', $user->auth);
        helpbutton('authchange', get_string('chooseauthmethod', 'auth'));
        echo "</td></tr>\n";
    }

    if ($adminself || is_internal_auth($user->auth) || (!empty($CFG->{'auth_'.$user->auth.'_stdchangepassword'}))) {
        echo '<tr>';
        echo '<th>'.get_string('newpassword').':</th>';
        echo "<td><input type=\"text\" name=\"newpassword\" size=\"20\" alt=\"".get_string("newpassword")."\" value=\"";
        if (isset($user->newpassword)) {
            p($user->newpassword);
        }
        echo "\" />";
        if (isset($err["newpassword"])) {
            formerr($err["newpassword"]);
        } else if (empty($user->newpassword)) {
            echo " (".get_string("leavetokeep").")";
        }
        echo "</td>";
        echo "</tr>\n";
        if (!$adminself && (!empty($CFG->{'auth_'.$user->auth.'_stdchangepassword'}) || is_internal_auth())){
             if (get_user_preferences('auth_forcepasswordchange', NULL, $user->id)) {
                 $checked = ' checked="checked" ';
             } else {
                 $checked = '';
             }
             echo '<tr>';
             echo '<th>'.get_string('forcepasswordchange').':</th>';
             echo '<td><input type="checkbox" name="forcepasswordchange" alt="'.get_string('forcepasswordchange').'" '.$checked.' /> '.get_string('forcepasswordchangehelp').'</td>';
             echo '</tr>';
        }

        echo '<tr><td colspan="2"><hr /></td></tr>';
    }
}

?>
<tr>
    <th><?php print_string("firstname") ?>:</th>
    <td>
    <input type="text" name="firstname" size="30" alt="<?php print_string("firstname") ?>" maxlength="100" value="<?php p($user->firstname) ?>" />
    <?php if (isset($err["firstname"])) formerr($err["firstname"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("lastname") ?>:</th>
    <td>
    <input type="text" name="lastname" size="30" alt="<?php print_string("lastname") ?>" maxlength="100" value="<?php p($user->lastname) ?>" />
    <?php if (isset($err["lastname"])) formerr($err["lastname"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("email") ?>:</th>
    <td>
    <input type="text" name="email" size="30" alt="<?php print_string("email") ?>" maxlength="100" value="<?php p($user->email) ?>" />
    <?php if (isset($err["email"])) formerr($err["email"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("emaildisplay") ?>:</th>
    <td><?php
    unset($choices);
    $choices["0"] = get_string("emaildisplayno");
    $choices["1"] = get_string("emaildisplayyes");
    $choices["2"] = get_string("emaildisplaycourse");
    choose_from_menu ($choices, "maildisplay", $user->maildisplay, "") ?>
    </td>
</tr>
<tr>
    <th><?php print_string("emailactive") ?>:</th>
    <td><?php
    unset($choices);
    $choices["0"] = get_string("emailenable");
    $choices["1"] = get_string("emaildisable");
    choose_from_menu ($choices, "emailstop", $user->emailstop, "") ?>
    </td>
</tr>
<tr>
    <th><?php print_string("emailformat") ?>:</th>
    <td><?php
    unset($choices);
    $choices["0"] = get_string("textformat");
    $choices["1"] = get_string("htmlformat");
    choose_from_menu ($choices, "mailformat", $user->mailformat, "") ?>
    </td>
</tr>
<?php if (!empty($CFG->unicodedb) && !empty($CFG->allowusermailcharset)) { ?>
<tr>
    <th><?php print_string("emailcharset") ?>:</th>
    <td><?php
        $mailcharset = get_user_preferences('mailcharset', '0', $user->id);
        unset($choices);
        unset($charsets);
        $charsets = get_list_of_charsets();
        if (!empty($CFG->sitemailcharset)) {
            $choices['0'] = get_string('site').' ('.$CFG->sitemailcharset.')';
        } else {
            $choices['0'] = get_string('default').' ('.current_charset().')';
        }
        $choices = array_merge($choices, $charsets);
        choose_from_menu($choices, 'mailcharset', $mailcharset, ''); ?>
    </td>
</tr>
<?php } ?>
<tr>
    <th><?php print_string('emaildigest') ?>:</th>
    <td><?php
    unset($choices);
    $choices['0'] = get_string('emaildigestoff');
    $choices['1'] = get_string('emaildigestcomplete');
    $choices['2'] = get_string('emaildigestsubjects');
    choose_from_menu ($choices, 'maildigest', $user->maildigest, "") ?>
    </td>
</tr>
<tr>
    <th><?php print_string("autosubscribe") ?>:</th>
    <td><?php
    unset($choices);
    $choices["1"] = get_string("autosubscribeyes");
    $choices["0"] = get_string("autosubscribeno");
    choose_from_menu ($choices, "autosubscribe", $user->autosubscribe, "") ?>
    </td>
</tr>
<?php if (!empty($CFG->forum_trackreadposts)) { ?>
<tr>
    <th><?php print_string("trackforums") ?>:</th>
    <td><?php
    unset($choices);
    $choices["0"] = get_string("trackforumsno");
    $choices["1"] = get_string("trackforumsyes");
    choose_from_menu ($choices, "trackforums", $user->trackforums, "") ?>
    </td>
</tr>
<?php } ?>
<?php if ($CFG->htmleditor) { ?>
<tr>
    <th><?php print_string("textediting") ?>:</th>
    <td><?php
    unset($choices);
    $choices["0"] = get_string("texteditor");
    $choices["1"] = get_string("htmleditor");
    choose_from_menu ($choices, "htmleditor", $user->htmleditor, "") ?>
    </td>
</tr>
<?php } ?>
<tr>
    <th><?php print_string("city") ?>:</th>
    <td>
    <input type="text" name="city" size="25" alt="<?php print_string("city") ?>" maxlength="20" value="<?php p($user->city) ?>" />
    <?php if (isset($err["city"])) formerr($err["city"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("country") ?>:</th>
    <td>
    <?php

    if (!$user->country and $CFG->country) {
        $user->country = $CFG->country;
    }

    choose_from_menu(get_list_of_countries(), "country", $user->country, get_string("selectacountry")."...", "", "");
    ?>
    <?php if (isset($err["country"])) formerr($err["country"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string('timezone')?>:</th>
    <td>
    <?php
        $timezones = get_list_of_timezones();
        if ($CFG->forcetimezone != 99) {
            choose_from_menu($timezones, 'timezone', $CFG->forcetimezone, get_string('serverlocaltime'), '', '99', false, true);
        } else {
            choose_from_menu($timezones, 'timezone', $user->timezone, get_string('serverlocaltime'), '', '99');
        }
    ?>
    </td>
</tr>
<tr>
    <th><?php print_string("preferredlanguage") ?>:</th>
    <td><?php if ($languages = get_list_of_languages()) {
               if (!$user->lang) {
                   $user->lang = $CFG->lang;
               }
               choose_from_menu ($languages, "lang", $user->lang, "", "", "");
           }
           if (isset($err["lang"])) formerr($err["lang"]);
        ?>
    </td>
</tr>
<?php if (!empty($CFG->allowuserthemes)) { ?>
<tr>
    <th><?php print_string("preferredtheme") ?>:</th>
    <td><?php
         $themes[''] = get_string('default');
         $themes += get_list_of_themes();
         choose_from_menu($themes, 'theme', $user->theme, "", "", "");
         if (isset($err["theme"])) formerr($err["theme"]);
        ?>
    </td>
</tr>
<?php } ?>
<tr>
    <th><?php print_string("userdescription") ?>:</th>
    <td><?php
        if (isset($err["description"])) {
            formerr($err["description"]);
            echo "<br />";
        }
        print_textarea($usehtmleditor, 10, 50, 50, 10, 'description', "$user->description");
        helpbutton("text", get_string("helptext"));
    ?>
    </td>
</tr>
<tr>
    <td colspan="2" style="text-align: center;"><input type="submit" value="<?php print_string("updatemyprofile") ?>" /></td>
</tr>


<tr>
    <td colspan="2" align="center"> <br /><b><?php print_string("followingoptional") ?>:</b></td>
</tr>


<?php
    $maxbytes = get_max_upload_file_size($CFG->maxbytes, $course->maxbytes);
    if (!empty($CFG->gdversion) and $maxbytes and (empty($CFG->disableuserimages) or isadmin())) {
?>
<tr>
    <th><?php print_string("currentpicture") ?>:</th>
    <td>
       <?php print_user_picture($user->id, $course->id, $user->picture, false, false, false);
             if ($user->picture) {
                 echo '&nbsp;&nbsp;<input type="checkbox" name="deletepicture" alt="'.get_string("delete").'" value="1" />';
                 print_string("delete");
             }
       ?>
    </td>
</tr>
<tr>
    <th><?php print_string("newpicture") ?>:</th>
    <td>
    <?php
       require_once($CFG->dirroot.'/lib/uploadlib.php');
       upload_print_form_fragment(1,array('imagefile'),null,false,null,0,0,false);
       helpbutton("picture", get_string("helppicture"));
       print_string("maxsize", "", display_size($maxbytes));
       if (isset($err["imagefile"])) formerr($err["imagefile"]);
    ?>
    </td>
</tr>
<?php } else if (empty($CFG->gdversion) and isadmin()) {  ?>
<tr>
    <th><?php print_string("newpicture") ?>:</th>
    <td>
    <?php
        echo "<a href=\"$CFG->wwwroot/$CFG->admin/config.php\">";
        print_string('gdnot');
        echo "</a>";
    ?>
    </td>
</tr>
<?php } ?>

<tr>
    <th><?php print_string("webpage") ?>:</th>
    <td><input type="text" name="url" size="50" alt="<?php print_string("webpage") ?>" maxlength="255" value="<?php p($user->url) ?>" />
    <?php if (isset($err["url"])) formerr($err["url"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("icqnumber") ?>:</th>
    <td><input type="text" name="icq" size="25" alt="<?php print_string("icqnumber") ?>" maxlength="15" value="<?php p($user->icq) ?>" />
    <?php if (isset($err["icq"])) formerr($err["icq"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("skypeid") ?>:</th>
    <td><input type="text" name="skype" size="25" alt="<?php print_string("skypeid") ?>" maxlength="50" value="<?php p($user->skype) ?>" />
    <?php if (isset($err["skype"])) formerr($err["skype"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("aimid") ?>:</th>
    <td><input type="text" name="aim" size="25" alt="<?php print_string("aimid") ?>" maxlength="50" value="<?php p($user->aim) ?>" />
    <?php if (isset($err["aim"])) formerr($err["aim"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("yahooid") ?>:</th>
    <td><input type="text" name="yahoo" size="25" alt="<?php print_string("yahooid") ?>" maxlength="50" value="<?php p($user->yahoo) ?>" />
    <?php if (isset($err["yahoo"])) formerr($err["yahoo"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("msnid") ?>:</th>
    <td><input type="text" name="msn" size="25" alt="<?php print_string("msnid") ?>" maxlength="50" value="<?php p($user->msn) ?>" />
    <?php if (isset($err["msn"])) formerr($err["msn"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("idnumber") ?>:</th>
    <td>
    <input type="text" name="idnumber" size="25" alt="<?php print_string("idnumber") ?>" maxlength="64" value="<?php p($user->idnumber) ?>" /> <?php p($teacheronly) ?>
    <?php if (isset($err["idnumber"])) formerr($err["idnumber"]); ?>
    </td>
</tr>
<?php if (isadmin()) {  ?>
<tr>
    <th><?php print_string("institution") ?>:</th>
    <td><input type="text" name="institution" size="25" alt="<?php print_string("institution") ?>" maxlength="40" value="<?php p($user->institution) ?>" /> <?php p($teacheronly) ?>
    </td>
</tr>
<tr>
    <th><?php print_string("department") ?>:</th>
    <td>
    <input type="text" name="department" size="25" alt="<?php print_string("department") ?>" maxlength="30" value="<?php p($user->department) ?>" /> <?php p($teacheronly) ?>
    </td>
</tr>
<?php } ?>
<tr>
    <th><?php print_string("phone") ?> 1:</th>
    <td>
    <input type="text" name="phone1" size="25" alt="<?php print_string("phone") ?>" maxlength="20" value="<?php p($user->phone1) ?>" /> <?php p($teacheronly) ?>
    <?php if (isset($err["phone1"])) formerr($err["phone1"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("phone") ?> 2:</th>
    <td>
    <input type="text" name="phone2" size="25" alt="<?php print_string("phone") ?>" maxlength="20" value="<?php p($user->phone2) ?>" /> <?php p($teacheronly) ?>
    <?php if (isset($err["phone2"])) formerr($err["phone2"]); ?>
    </td>
</tr>
<tr>
    <th><?php print_string("address") ?>:</th>
    <td>
    <input type="text" name="address" size="25" alt="<?php print_string("address") ?>" maxlength="70" value="<?php p($user->address) ?>" /> <?php p($teacheronly) ?>
    <?php if (isset($err["address"])) formerr($err["address"]); ?>
    </td>
</tr>
<tr>
    <td colspan="2" style="text-align: center;"><input type="submit" value="<?php print_string("updatemyprofile") ?>" /></td>
</tr>
</table>
<input type="hidden" name="course" value="<?php p($course->id) ?>" />
<input type="hidden" name="id" value="<?php p($user->id) ?>" />
</form>
