/**
  * Get upload directory path
  * @return string
  */
 function getUploadedFilesTemporaryPath()
 {
     if (!MFUQueuesSQLite3::$uploadsTempDir) {
         MFUQueuesSQLite3::$uploadsTempDir = \Nette\Environment::expand("%tempDir%" . DIRECTORY_SEPARATOR . "uploads-MFU");
     }
     if (!file_exists(MFUQueuesSQLite3::$uploadsTempDir)) {
         mkdir(MFUQueuesSQLite3::$uploadsTempDir, 0777, true);
     }
     if (!is_writable(MFUQueuesSQLite3::$uploadsTempDir)) {
         MFUQueuesSQLite3::$uploadsTempDir = \Nette\Environment::expand("%tempDir%");
     }
     if (!is_writable(MFUQueuesSQLite3::$uploadsTempDir)) {
         throw new \Nette\InvalidStateException("Directory for temp files is not writable!");
     }
     return MFUQueuesSQLite3::$uploadsTempDir;
 }
        $this->query('END TRANSACTION');
        // Jedou za čas - promaže fyzicky smazané řádky
        $this->query('VACUUM');
    }
    /**
     * Get all queues
     * @return array of IMFUQueueModel
     */
    function getQueues()
    {
        $queuesOut = array();
        $res = $this->query('
            SELECT queueID
            FROM files
            GROUP BY queueID
        ');
        while ($row = $res->fetchArray(SQLITE3_ASSOC)) {
            $queuesOut[] = $this->createQueueObj($row['queueID']);
        }
        return $queuesOut;
    }
    static function init()
    {
        $config = \Nette\Environment::getConfig('MultipleFileUploader', array('databasePath' => dirname(__FILE__) . '/database.sqlite3', 'uploadsTempDir' => ''));
        foreach ($config as $key => $val) {
            self::${$key} = $val;
        }
    }
}
MFUQueuesSQLite3::init();