Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/File/Set/File.php
Строк: 26
<?php
namespace ConcreteCoreFileSet;

use 
File as ConcreteFile;
use 
FileSet;
use 
Loader;

class 
File
{

    public static function 
getFileSetFiles(Set $fs)
    {
        
$db Loader::db();
        
$r $db->query('SELECT fsfID FROM FileSetFiles WHERE fsID = ? ORDER BY fsDisplayOrder ASC', array($fs->getFileSetID()));
        
$files = array();
        while (
$row $r->FetchRow()) {
            
$fsf = static::getByID($row['fsfID']);
            if (
is_object($fsf)) {
                
$files[] = $fsf;
            }
        }
        return 
$files;
    }

    public static function 
getByID($fsfID)
    {
        
$db Loader::db();
        
$r $db->GetRow('SELECT * FROM FileSetFiles WHERE fsfID = ?', array($fsfID));
        if (
is_array($r) && $r['fsfID']) {
            
$fsf = new static;
            
$fsf array_to_object($fsf$r);
            return 
$fsf;
        }
    }

    public static function 
createAndGetFile($f_id$fs_id)
    {
        
$db Loader::db();
        
$fsfID $db->GetOne('SELECT fsfID FROM FileSetFiles WHERE fID = ? AND fsID = ?', array($f_id$fs_id));
        if (
$fsfID 0) {
            return static::
getByID($fsfID);
        } else {
            
$fs FileSet::getByID($fs_id);
            
$f ConcreteFile::getByID($f_id);
            
$fsf = static::add($f$fs);
            return 
$fsf;
        }
    }

    public static function 
add(ConcreteFile $fFileSet $fs)
    {
        
$db Loader::db();
        
$fsDisplayOrder $db->GetOne('SELECT count(fID) FROM FileSetFiles WHERE fsID = ?', array($fs->getFileSetID()));
        
$db->insert(
            
'FileSetFiles',
            array(
                
'fsID'           => $fs->getFileSetID(),
                
'timestamp'      => date('Y-m-d H:i:s'),
                
'fID'            => $f->getFileID(),
                
'fsDisplayOrder' => $fsDisplayOrder));
        
$fsfID $db->lastInsertId();
        return 
File::getByID($fsfID);
    }

}
Онлайн: 2
Реклама