Blame view

sources/apps/search/index.php 2.6 KB
42e4f8d60   Kload   add all apps
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
  <?php
  
  // check if we are a user
  OCP\User::checkLoggedIn();
  
  // load files
  OCP\Util::addStyle('files', 'files');
  OCP\Util::addStyle('search', 'search');
  OCP\Util::addscript('files', 'jquery.iframe-transport');
  OCP\Util::addscript('files', 'jquery.fileupload');
  OCP\Util::addscript('files', 'files');
  OCP\Util::addscript('files', 'filelist');
  OCP\Util::addscript('files', 'fileactions');
  OCP\Util::addscript('files', 'keyboardshortcuts');
  
  // activate link
  OCP\App::setActiveNavigationEntry('search');
  
  // get results
  $query = (isset($_GET['query'])) ? $_GET['query'] : '';
  $results = null;
  if ($query) {
      $results = OC_Search::search($query);
  }
  
  // create HTML table
  $files = array();
  if (is_array($results)) {
      foreach ($results as $result) {
          // create file
          $_file = $result->fileData;
          // discard versions
          if (strpos($_file['path'], '_versions') === 0) {
              continue;
          }
          // get basename and extension
          $fileinfo = pathinfo($_file['name']);
          $_file['basename'] = $fileinfo['filename'];
          if (!empty($fileinfo['extension'])) {
              $_file['extension'] = '.' . $fileinfo['extension'];
          } else {
              $_file['extension'] = '';
          }
          // get date
          $_file['date'] = OCP\Util::formatDate($_file['mtime']);
          // get directory
          $_file['directory'] = str_replace('/' . $_file['name'], '', $_file['path']);
          // get permissions
          $_file['type'] = ($_file['mimetype'] == 'httpd/unix-directory') ? 'dir' : 'file';
          $permissions = OCP\PERMISSION_READ;
          if (!$_file['encrypted']) {
              $permissions |= OCP\PERMISSION_SHARE;
          }
          if ($_file['type'] == 'dir' && $_file['writable']) {
              $permissions |= OCP\PERMISSION_CREATE;
          }
          if ($_file['writable']) {
              $permissions |= OCP\PERMISSION_UPDATE | OCP\PERMISSION_DELETE;
          }
          $_file['permissions'] = $permissions;
          // add file
          $files[] = $_file;
      }
  }
  $list = new OCP\Template('files', 'part.list', '');
  $list->assign('files', $files);
  $list->assign('baseURL', OCP\Util::linkTo('files', 'index.php') . '?dir=');
  $list->assign('downloadURL', OCP\Util::linkTo('files', 'download.php') . '?file=');
  
  // populate main template
  $tmpl = new OCP\Template('search', 'index', 'user');
  $tmpl->assign('files', $files);
  $tmpl->assign('fileList', $list->fetchPage());
  $tmpl->assign('breadcrumb', $query);
  $tmpl->assign('allowZipDownload', intval(OCP\Config::getSystemValue('allowZipDownload', true)));
  $tmpl->printPage();