File indexing completed on 2024-04-21 16:36:31

0001 <?php
0002 
0003 /**
0004  * ocs-fileserver
0005  *
0006  * Copyright 2016 by pling GmbH.
0007  *
0008  * This file is part of ocs-fileserver.
0009  *
0010  * ocs-fileserver is free software: you can redistribute it and/or modify
0011  * it under the terms of the GNU Affero General Public License as published by
0012  * the Free Software Foundation, either version 3 of the License, or
0013  * (at your option) any later version.
0014  *
0015  * ocs-fileserver is distributed in the hope that it will be useful,
0016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
0017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0018  * GNU Affero General Public License for more details.
0019  *
0020  * You should have received a copy of the GNU Affero General Public License
0021  * along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
0022  **/
0023 
0024 class table_files_downloaded extends BaseModel
0025 {
0026 
0027     public function __construct(&$db)
0028     {
0029         parent::__construct($db, $db->getTableConfig());
0030         $this->setName('files_downloaded');
0031         $this->setPrimaryInsert(true);
0032     }
0033 
0034     public function __set($key, $value)
0035     {
0036         $value = $this->_convertArrayToObject($value);
0037         unset($value->id);
0038         if(empty($value->referer)) {
0039             $value->referer = $this->_getReferer();
0040         }
0041         $value->downloaded_timestamp = $this->_getTimestamp();
0042         $value->downloaded_ip = $this->_getIp();
0043         parent::__set($key, $value);
0044     }
0045 
0046     public function deleteByCollectionId($collectionId)
0047     {
0048         $primary = $this->getPrimary();
0049         $this->setPrimary('collection_id');
0050         unset($this->$collectionId);
0051         $this->setPrimary($primary);
0052     }
0053 
0054     public function deleteByFileId($fileId)
0055     {
0056         $primary = $this->getPrimary();
0057         $this->setPrimary('file_id');
0058         unset($this->$fileId);
0059         $this->setPrimary($primary);
0060     }
0061 
0062 }