diff options
Diffstat (limited to 'app/Models/Factory.php')
| -rw-r--r-- | app/Models/Factory.php | 39 |
1 files changed, 24 insertions, 15 deletions
diff --git a/app/Models/Factory.php b/app/Models/Factory.php index 08569b2e2..db09d155d 100644 --- a/app/Models/Factory.php +++ b/app/Models/Factory.php @@ -2,30 +2,39 @@ class FreshRSS_Factory { - public static function createFeedDao() { - $db = Minz_Configuration::dataBase(); - if ($db['type'] === 'sqlite') { - return new FreshRSS_FeedDAOSQLite(); + public static function createFeedDao($username = null) { + $conf = Minz_Configuration::get('system'); + if ($conf->db['type'] === 'sqlite') { + return new FreshRSS_FeedDAOSQLite($username); } else { - return new FreshRSS_FeedDAO(); + return new FreshRSS_FeedDAO($username); } } - public static function createEntryDao() { - $db = Minz_Configuration::dataBase(); - if ($db['type'] === 'sqlite') { - return new FreshRSS_EntryDAOSQLite(); + public static function createEntryDao($username = null) { + $conf = Minz_Configuration::get('system'); + if ($conf->db['type'] === 'sqlite') { + return new FreshRSS_EntryDAOSQLite($username); } else { - return new FreshRSS_EntryDAO(); + return new FreshRSS_EntryDAO($username); } } - public static function createStatsDAO() { - $db = Minz_Configuration::dataBase(); - if ($db['type'] === 'sqlite') { - return new FreshRSS_StatsDAOSQLite(); + public static function createStatsDAO($username = null) { + $conf = Minz_Configuration::get('system'); + if ($conf->db['type'] === 'sqlite') { + return new FreshRSS_StatsDAOSQLite($username); } else { - return new FreshRSS_StatsDAO(); + return new FreshRSS_StatsDAO($username); + } + } + + public static function createDatabaseDAO($username = null) { + $conf = Minz_Configuration::get('system'); + if ($conf->db['type'] === 'sqlite') { + return new FreshRSS_DatabaseDAOSQLite($username); + } else { + return new FreshRSS_DatabaseDAO($username); } } |
