function plog_picture_manager($id, $from, $limit)
{
    plogger_init_pictures(array('type' => 'album', 'value' => $id, 'from' => $from, 'limit' => $limit));
    // create javascript initiation function for editable elements
    if (plogger_has_pictures()) {
        $output .= '<script type="text/javascript">';
        $output .= "Event.observe(window, 'load', init, false);";
        $output .= "function init() {";
        while (plogger_has_pictures()) {
            plogger_load_picture();
            $output .= "makeEditable('picture-description-" . plogger_get_picture_id() . "'); makeEditable('picture-caption-" . plogger_get_picture_id() . "');";
        }
        $output .= "}";
        $output .= '</script>';
    }
    // reset the picture array
    plogger_init_pictures(array('type' => 'album', 'value' => $id, 'from' => $from, 'limit' => $limit));
    if (plogger_has_pictures()) {
        $output .= '<table style="width: 100%" cellpadding="4">
			   <col style="width: 15px;"/><tr class="header"><td class="table-header-left">&nbsp;</td>';
        $output .= '<td width="65" class="table-header-middle">' . plog_tr('Thumb') . '</td>';
        $output .= '<td class="table-header-middle">' . plog_tr('Filename') . '</td>';
        $output .= '<td class="table-header-middle">' . plog_tr('Caption') . '</td>';
        $output .= '<td class="table-header-middle">' . plog_tr('Description') . '</td>';
        $output .= '<td class="table-header-middle">' . plog_tr('Allow comments') . '</td>';
        $output .= '<td class="table-header-right">' . plog_tr('Actions') . '</td></tr>';
        $counter = 0;
        while (plogger_has_pictures()) {
            if ($counter % 2 == 0) {
                $table_row_color = "color-1";
            } else {
                $table_row_color = "color-2";
            }
            $counter++;
            plogger_load_picture();
            $id = plogger_get_picture_id();
            $output .= "<tr class='{$table_row_color}'>";
            $output .= "<td><input type='checkbox' name='selected[]' value='" . $id . "'/></td>";
            $thumbpath = plogger_get_picture_thumb();
            $imgtag = '<div class="img-shadow"><img src="' . $thumbpath . '" title="' . plogger_get_picture_caption() . '" alt="' . plogger_get_picture_caption() . '" /></div>';
            //$target = 'plog-thumbpopup.php?src='.$id;
            //$java = "javascript:this.ThumbPreviewPopup('$target')";
            $output .= '<td><a href="' . plogger_get_picture_thumb(THUMB_LARGE) . '" rel="lightbox" title="' . plogger_get_picture_caption() . '">' . $imgtag . '</a></td>';
            $output .= "<td><strong><a class='folder' href='?level=comments&amp;id=" . $id . "'>" . basename(plogger_get_source_picture_path()) . "</a></strong></td>";
            $output .= "<td><p id=\"picture-caption-" . plogger_get_picture_id() . "\">" . plogger_get_picture_caption() . "&nbsp;</p></td>";
            $output .= "<td><p id=\"picture-description-" . plogger_get_picture_id() . "\">" . plogger_get_picture_description() . "&nbsp;</p></td>";
            $allow_comments = 1 == plogger_picture_allows_comments() ? "Yes" : "No";
            $output .= "<td>" . $allow_comments . "</td>";
            $output .= '<td><a href="?action=edit-picture&amp;id=' . $id;
            if (isset($_GET["entries_per_page"])) {
                $output .= '&amp;entries_per_page=' . intval($_GET["entries_per_page"]);
            }
            if (isset($_GET["plog_page"])) {
                $output .= '&amp;plog_page=' . intval($_GET["plog_page"]);
            }
            $output .= '"><img style="display:inline" src="../graphics/edit.gif" alt="' . plog_tr('Edit') . '" title="' . plog_tr('Edit') . '"></a>';
            $parent_id = $_REQUEST["id"];
            $output .= '<a href="?action=1&amp;selected%5B%5D=' . $id . '&amp;level=pictures&amp;delete_checked=1&amp;id=' . $parent_id;
            if (isset($_GET["entries_per_page"])) {
                $output .= '&amp;entries_per_page=' . intval($_GET["entries_per_page"]);
            }
            if (isset($_GET["plog_page"])) {
                $output .= '&amp;plog_page=' . intval($_GET["plog_page"]);
            }
            $output .= '"
		onClick="return confirm(\'' . plog_tr('Are you sure you want to delete this item?') . '\');"><img style="display:inline" src="../graphics/x.gif" alt="' . plog_tr('Delete') . '" 					title="' . plog_tr('Delete') . '"></a></td>';
            $output .= "</tr>";
        }
        $output .= '<tr class="header"><td colspan="7"></td></tr></table>';
        $output .= "</table>";
    } else {
        $output .= '<p class="actions">' . sprintf(plog_tr('Sadly, there are no pictures yet.  Why don\'t you <a href="%s">upload some?</a>'), 'plog-upload.php') . '</p>';
    }
    return $output;
}
function plog_picture_manager($id, $from, $limit)
{
    global $config, $empty;
    $output = '';
    plogger_init_pictures(array('type' => 'album', 'value' => $id, 'from' => $from, 'limit' => $limit, 'sortby' => !empty($config['default_sortby']) ? $config['default_sortby'] : 'id', 'sortdir' => !empty($config['default_sortdir']) ? $config['default_sortdir'] : 'ASC'));
    // Create javascript initiation function for editable elements
    if (plogger_has_pictures()) {
        $output .= "\n\t\t" . '<script type="text/javascript">';
        $output .= "\n\t\t\t" . 'Event.observe(window, \'load\', init, false);';
        $output .= "\n\t\t\t" . 'function init() {' . "\n";
        while (plogger_has_pictures()) {
            plogger_load_picture();
            $output .= "\t\t\t\tmakeEditable('picture-description-" . plogger_get_picture_id() . "');\n\t\t\t\tmakeEditable('picture-caption-" . plogger_get_picture_id() . "');\n";
        }
        $output .= "\t\t\t" . '}';
        $output .= "\n\t\t" . '</script>';
    }
    // Reset the picture array
    plogger_init_pictures(array('type' => 'album', 'value' => $id, 'from' => $from, 'limit' => $limit, 'sortby' => !empty($config['default_sortby']) ? $config['default_sortby'] : 'id', 'sortdir' => !empty($config['default_sortdir']) ? $config['default_sortdir'] : 'ASC'));
    if (plogger_has_pictures()) {
        $allow_comment = $config['allow_comments'] ? plog_tr('Allow Comments') : '&nbsp;';
        $output .= "\n\t\t" . '<table style="width: 100%;" cellpadding="3" cellspacing="0">
			<col style="width: 15px;" />
			<tr class="header">
				<th class="table-header-left align-center width-15"><input name="allbox" type="checkbox" onclick="checkToggle(document.getElementById(\'contentList\'));" /></th>
				<th class="table-header-middle align-center width-150">' . plog_tr('Thumb') . '</th>
				<th class="table-header-middle align-left width-175">' . plog_tr('Filename') . '</th>
				<th class="table-header-middle align-left">' . plog_tr('Caption') . '/' . plog_tr('Description') . '</th>
				<th class="table-header-middle align-center width-125">' . $allow_comment . '</th>
				<th class="table-header-right align-center width-100">' . plog_tr('Actions') . '</th>
			</tr>';
        $counter = 0;
        while (plogger_has_pictures()) {
            if ($counter % 2 == 0) {
                $table_row_color = 'color-1';
            } else {
                $table_row_color = 'color-2';
            }
            $counter++;
            plogger_load_picture();
            $id = plogger_get_picture_id();
            $output .= "\n\t\t\t" . '<tr class="' . $table_row_color . '">';
            $output .= "\n\t\t\t\t" . '<td class="align-center width-15"><p class="margin-5"><input type="checkbox" name="selected[]" value="' . $id . '" /></p></td>';
            $thumbpath = plogger_get_picture_thumb();
            $imgtag = '<img src="' . $thumbpath . '" title="' . plogger_get_picture_caption('clean') . '" alt="' . plogger_get_picture_caption('clean') . '" />';
            $output .= "\n\t\t\t\t" . '<td class="align-center width-150"><div class="img-shadow"><a href="' . plogger_get_picture_thumb(THUMB_LARGE) . '" rel="lightbox" title="' . plogger_get_picture_caption('code') . '">' . $imgtag . '</a></div></td>';
            $output .= "\n\t\t\t\t" . '<td class="align-left width-175"><p class="margin-5"><strong><a href="' . $_SERVER['PHP_SELF'] . '?level=comments&amp;id=' . $id . '">' . basename(plogger_get_source_picture_path()) . '</a></strong><br /><br /><span>' . sprintf(plog_tr('Comments: %d'), plogger_picture_comment_count()) . '</span></p></td>';
            $output .= "\n\t\t\t\t" . '<td class="align-left vertical-top">
					<p class="margin-5 no-margin-bottom"><strong>' . plog_tr('Caption') . ':</strong></p>
					<p class="margin-5 no-margin-top" id="picture-caption-' . plogger_get_picture_id() . '">' . plogger_get_picture_caption() . '</p>
					<p class="margin-5 no-margin-bottom"><strong>' . plog_tr('Description') . ':</strong></p>
					<p class="margin-5 no-margin-top" id="picture-description-' . plogger_get_picture_id() . '">' . plogger_get_picture_description() . '</p>
				</td>';
            if ($config['allow_comments']) {
                $allow_comments = 1 == plogger_picture_allows_comments() ? plog_tr('Yes') : plog_tr('No');
            } else {
                $allow_comments = '&nbsp;';
            }
            $output .= "\n\t\t\t\t" . '<td class="align-center width-125"><p class="margin-5">' . $allow_comments . '</p></td>';
            $output .= "\n\t\t\t\t" . '<td class="align-center width-100"><p class="margin-5"><a href="?action=edit-picture&amp;id=' . $id;
            if (isset($_GET['entries_per_page'])) {
                $output .= '&amp;entries_per_page=' . intval($_GET['entries_per_page']);
            }
            if (isset($_GET['plog_page'])) {
                $output .= '&amp;plog_page=' . intval($_GET['plog_page']);
            }
            $output .= '"><img style="display: inline;" src="' . $config['gallery_url'] . 'plog-admin/images/edit.gif" alt="' . plog_tr('Edit') . '" title="' . plog_tr('Edit') . '" /></a>';
            $parent_id = $_REQUEST['id'];
            $output .= '&nbsp;&nbsp;&nbsp;<a href="?action=move-delete&amp;selected%5B%5D=' . $id . '&amp;level=pictures&amp;delete_checked=1&amp;id=' . $parent_id;
            if (isset($_GET['plog_page'])) {
                $output .= '&amp;plog_page=' . intval($_GET['plog_page']);
            }
            $output .= '" onclick="return confirm(\'' . plog_tr('Are you sure you want to delete this item?') . '\');"><img style="display: inline;" src="' . $config['gallery_url'] . 'plog-admin/images/x.gif" alt="' . plog_tr('Delete') . '" title="' . plog_tr('Delete') . '" /></a></p></td>';
            $output .= "\n\t\t\t" . '</tr>';
        }
        $output .= "\n\t\t\t" . '<tr class="footer">
				<td class="align-left invert-selection" colspan="6"><a href="#" onclick="checkToggle(document.getElementById(\'contentList\')); return false;">' . plog_tr('Toggle Checkbox Selection') . '</a></td>
			</tr>
		</table>' . "\n";
    } else {
        $output .= "\n\n\t\t" . '<p class="actions">' . sprintf(plog_tr('Sadly, there are no pictures yet. Why don\'t you <a title="upload images" href="%s" style="font-weight: bold;">upload some</a>?'), 'plog-upload.php') . '</p>' . "\n";
        $empty = true;
    }
    return $output;
}