Browse Source

import

master
jcabillot 6 years ago
parent
commit
4529159e3c
3 changed files with 94 additions and 0 deletions
  1. 13
      include/config.php
  2. 59
      lib/DbMongo.php
  3. 22
      lib/Stream.php

13
include/config.php

@ -0,0 +1,13 @@
<?php
define('DB_RWUSER', 'mydl');
define('DB_RWPASS', 'Rinhal3SwefVowsEj0');
define('DB_SERVER', '192.168.122.2');
define('DB_COLL', 'mydl');
include dirname(__FILE__).'/../lib/DbMongo.php';
include dirname(__FILE__).'/../lib/Download.php';
include dirname(__FILE__).'/../lib/PremiumizeMe.php';
include dirname(__FILE__).'/../lib/Stream.php';
?>

59
lib/DbMongo.php

@ -0,0 +1,59 @@
<?php
/**
* Singleton permettant de gerer les connexions a la BDD Mongo.
*/
class DbMongo
{
/**
* Contient l'instance unique de Db.
*
* @var Db
*/
private static $_instance;
/**
* Contient la connexion pre-creer a la base.
*
* @var MongoDb
*/
private $_db;
/**
* Empeche la création externe d'instances.
*/
private function __construct()
{
$conn = new MongoClient('mongodb://'.DB_RWUSER.':'.DB_RWPASS.'@'.DB_SERVER.'/'.DB_COLL);
/*
* C'est moche, mais si l'on met DB_COLL directement a la ligne suivante,
* PHP essaye d'acceder a la db $conn->DB_COLL.
*/
$tmp = DB_COLL;
$this->_db = $conn->$tmp;
}
/**
* Renvoi de l'instance et initialisation si nécessaire.
* private car pas de raison de vouloir l'instance.
*
* @return Db instance unique de Db
*/
private static function _getInstance()
{
if (!(self::$_instance instanceof self)) {
self::$_instance = new self();
}
return self::$_instance;
}
/**
* Retourne un objet PDO representant la connexion.
*
* @return PDO instance unique de PDO lie a la base de donnees
*/
public static function get()
{
return self::_getInstance()->_db;
}
}
?>

22
lib/Stream.php

@ -0,0 +1,22 @@
<?php
class Stream {
/**
* Telecharge depuis $url vers $out.
*
* @param string $url URL a telecharger
* @param string $out Fichier de destination
*
* @return array Informations sur le transfert
*/
static function get($url, $out) {
set_time_limit(0);
$ch = curl_init($url);//Here is the file we are downloading, replace spaces with %20
curl_exec($ch); // get curl response
$retour = curl_getinfo($ch);
curl_close($ch);
return $retour;
}
}
//$result = Stream::get('https://dl.sdv.fr/files/0/6/7/rubygem-csscss-1.0.0-1.fc18.src.rpm', 'Archive.zip');
Loading…
Cancel
Save