function filedepotAjaxServer_getfilelisting in filedepot 6
Same name and namespace in other branches
- 7 lib-ajaxserver.php \filedepotAjaxServer_getfilelisting()
@file lib-ajaxserver.php Library functions for the ajax_server
1 call to filedepotAjaxServer_getfilelisting()
- filedepot_dispatcher in ./
ajaxserver.php - @file ajaxserver.php Implementation of filedepot_ajax() - main ajax handler for the module
File
- ./
lib-ajaxserver.php, line 10 - lib-ajaxserver.php Library functions for the ajax_server
Code
function filedepotAjaxServer_getfilelisting() {
global $user;
$filedepot = filedepot_filedepot();
if (empty($filedepot->activeview)) {
$filedepot->ajaxBackgroundMode = TRUE;
}
elseif ($filedepot->cid == 0 and !in_array($filedepot->activeview, $filedepot->validReportingModes)) {
$filedepot->activeview = 'latestfiles';
$filedepot->ajaxBackgroundMode = FALSE;
}
if (db_result(db_query("SELECT COUNT(*) FROM {filedepot_categories} WHERE cid=%d", $filedepot->cid)) == 0) {
$filedepot->cid = 0;
}
if ($filedepot->activeview == 'notifications') {
$data['cid'] = $filedepot->cid;
$data['retcode'] = 200;
$data['cid'] = $filedepot->cid;
$data['activefolder'] = theme('filedepot_activefolder');
$data['displayhtml'] = theme('filedepot_notifications');
$data['header'] = theme('filedepot_header');
$data['moreactions'] = filedepotAjaxServer_getMoreActions($filedepot->activeview);
}
elseif ($filedepot->cid > 0 and $filedepot
->checkPermission($filedepot->cid, 'view')) {
$data['retcode'] = 200;
$data['cid'] = $filedepot->cid;
$foldercount = db_result(db_query("SELECT count(cid) FROM {filedepot_categories} WHERE cid=%d", $filedepot->cid));
if (user_is_logged_in() and $filedepot->cid > 0 and $foldercount == 1) {
$pid = db_result(db_query("SELECT pid FROM {filedepot_categories} WHERE cid=%d", $filedepot->cid));
if ($pid > 0) {
$count1 = db_result(db_query("SELECT count(cid) FROM {filedepot_recentfolders} WHERE uid=%d", $user->uid));
if ($count1 > 4) {
db_query("DELETE FROM {filedepot_recentfolders} WHERE uid=%d ORDER BY id ASC LIMIT %d", $user->uid, $count1 - 4);
}
$count2 = db_result(db_query("SELECT count(cid) FROM {filedepot_recentfolders} WHERE uid=%d AND cid=%d", $user->uid, $filedepot->cid));
if ($count2 == 0) {
db_query("INSERT INTO {filedepot_recentfolders} (uid,cid) VALUES (%d,%d)", $user->uid, $filedepot->cid);
}
}
}
$data['displayhtml'] = filedepot_displayFolderListing($filedepot->cid);
if (is_array($filedepot->lastRenderedFiles) and count($filedepot->lastRenderedFiles) > 0) {
$data['lastrenderedfiles'] = json_encode($filedepot->lastRenderedFiles);
}
firelogmsg("Completed generating FileListing");
$data['activefolder'] = theme('filedepot_activefolder');
$data['moreactions'] = filedepotAjaxServer_getMoreActions($filedepot->activeview);
$data['header'] = theme('filedepot_header');
}
elseif ($filedepot->cid == 0) {
$data['retcode'] = 200;
$data['cid'] = $filedepot->cid;
$data['displayhtml'] = filedepot_displayFolderListing($filedepot->cid);
$data['activefolder'] = theme('filedepot_activefolder');
$data['moreactions'] = filedepotAjaxServer_getMoreActions($filedepot->activeview);
$data['header'] = theme('filedepot_header');
}
else {
$data['retcode'] = 401;
$data['error'] = 'Error: No Access to Folder';
}
//firelogmsg("Completed generating Header return data");
return $data;
}