<?php
require('../setClassPath.php');
require_once('object/User.php');
require_once('object/Picture.php');
require_once('db/UserDB.php');
require_once('db/TransManager.php');
require_once('ui/Component.php');
require_once('util/InputHelper.php');

$helper     = InputHelper::getInstance();
$fname      = $helper->fixInput($_GET['name'], FALSE);

if (!isset($fname))
    exit();

session_start();
$self           = $_SESSION['user'];

$trans = TransManager::getInstance();
$trans->beginTrans();
$userdb = new UserDB();

$user = $userdb->lookupUserInformation($fname, $trans->getPDO());
if (!$user) {
    $trans->commit();
    $trans->disconnect();
    exit();
}
$mypics = (isset($self) && $self->getUserId() == $user->getUserId());

if ($mypics && strlen($_POST['subbtn']) > 0) { //reorder pictures
    $pids = $_POST['pid'];
    $disporders = $_POST['disporder'];
    if (count($pids) == count($disporders)) {
        for ($i = 0, $n = count($pids); $i < $n; ++$i) { //make all ints
            $pids[$i]       = intval($pids[$i]);
            $disporders[$i] = intval($disporders[$i]);
        }

        for ($i = 0, $n = count($pids); $i < $n; ++$i) { //sort
            for ($j = $i + 1, $m = $n; $j < $m; ++$j) {
                if ($disporders[$j] < $disporders[$i]) { //swap 'em
                    $tmp = $disporders[$i];
                    $disporders[$i] = $disporders[$j];
                    $disporders[$j] = $tmp;
                    $tmp = $pids[$i];
                    $pids[$i] = $pids[$j];
                    $pids[$j] = $tmp;
                }
            }
        }


        //now our $pids are sorted by user-entered disp order. save it to db
        $userdb->reorderPictures($user->getUserId(), $pids, $trans->getPDO());
        $picReorder = true;
    }
}


$pictures   = $userdb->getPictures($user->getUserId(), $trans->getPDO(), 50);

$trans->commit();
$trans->disconnect();


?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title><?= ($mypics ? 'Manage Your Pictures' : $user->getName() .'\'s Pictures') ?></title>
<link type="text/css" rel="stylesheet" href="/css/main.css">
<link type="text/css" rel="stylesheet" href="/css/profile.css">
</head>
<body>
<div id="body">
<h1><?= ($myfriends ? 'Manage Your Pictures' : $user->getName() .'\'s Pictures') ?></h1>

<?php
if ($picReorder)
    echo '<p>Your pictures have been re-ordered the way you wanted.</p>';
?>

  <form action="/pictures/<?= $user->getFName() ?>" method="post" id="manageform">


  <div id="top2">
    <h2><?= $user->getName() ?>'s Pictures</h2>
  </div>
  <table cellspacing="2" id="details">
    <tr>
      <td>
<?php
if (!$pictures) {
    if ($mypics)
        echo '<i>You have not yet added any pictures</i>';
    else
        echo '<i>'. $user->getName() .' has not yet added any pictures</i>';
}
else {
    echo '<ul id="friends">';
    for ($i = 0, $n = count($pictures); $i < $n; ++$i) {
        $pic = $pictures[$i];
        echo '<li><a href="/pic/'. $pic->getDirName() . $pic->getFilename() .'"><img src="/pic/'. $pic->getDirName() . $pic->getThumbName() .'" border="0"></a>';
        if ($mypics)
            echo '<br><div class="endfr"><a href="/account/picdef.html?p='. $pic->getPictureId() .'">make primary</a><br><a href="/account/delpic.html?p='. $pic->getPictureId() .'">delete</a></div><input type="hidden" name="pid[]" value="'. $pic->getPictureId() .'"><input type="text" size="2" maxlength="3" name="disporder[]" value="'. ($i + 1) .'"></li>';
        else
            echo '</li>';
    }
    echo '</ul>';
}
?>
      </td>
    </tr>
  </table>
<?php
if ($mypics)
    echo '<input type="submit" value="Re-Order Pictures" name="subbtn">';
?>
  </form>

<?php
$ui = Component::getInstance();
$ui->drawHeader($self);
$ui->drawFooter();
?>
</div>
</body>
</html>
