summaryrefslogtreecommitdiff
path: root/index.php
blob: d7eec31fc14d402bd343edce77d8788a7f3e73ad (plain)
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
<?php

if (!array_key_exists('what',$_GET)) {
  die();
}

$max_line_len = 50;

switch ($_GET["what"]) {
  case "all":
    $list = substr(shell_exec("head -n1 ~musix/.moc/_playlist.m3u"),0,-1);
    $cnt = substr(shell_exec("wc -l < ~musix/.moc/Listen/" . $list),0,-1);
    print $list . " (" . $cnt . ")<br>\n";
    foreach (explode("\n",shell_exec("mocp -M ~musix/.moc -i 2>/dev/null")) as $line) {
      if (substr($line,0,7)=="State: ")
        $state = substr($line,7);
      if (substr($line,0,6)=="File: ")
        $file = basename(substr($line,6));
      if (substr($line,0,10)=="TimeLeft: ")
        $time = substr($line,10);
    }
    print $state . " " . $file . " (" . $time . ")<br>\n";
    print trim(shell_exec("cryptstatus"));
    break;
  case "info":
    $list = substr(shell_exec("head -n1 ~musix/.moc/_playlist.m3u"),0,-1);
    $cnt = substr(shell_exec("wc -l < ~musix/.moc/Listen/" . $list),0,-1);
    $max_list_len = $max_line_len - 3 - strlen($cnt);
    if (strlen($list) > $max_list_len)
      $list = "..." . substr($list,3-$max_list_len);
    print $list . " (" . $cnt . ")";
    break;
  case "details":
    foreach (explode("\n",shell_exec("mocp -M ~musix/.moc -i 2>/dev/null")) as $line) {
      if (substr($line,0,7)=="State: ")
        $state = substr($line,7);
      if (substr($line,0,6)=="File: ")
        $file = basename(substr($line,6));
      if (substr($line,0,10)=="TimeLeft: ")
        $time = substr($line,10);
    }
    $max_file_len = $max_line_len - 4 - strlen($state) - strlen($time);
    if (strlen($file) > $max_file_len)
      $file = "..." . substr($file,3-$max_file_len);
    print $state . " " . $file . " (" . $time . ")";
    break;
  case "crypt":
    print shell_exec("cryptstatus");
    break;
  default:
    die();
}