public function getThumbnail() { $avatar = Config::getValue_('default-avatar'); if (file_exists($this->thumbnail) || ($isUrl = Utils::isUrlValid($this->thumbnail))) { $avatar = isset($isUrl) ? $this->thumbnail : WEBROOT . $this->thumbnail; } else { if (strpos($this->thumbnail, WEBROOT) !== false) { $avatar = $this->thumbnail; } } return $avatar; }
public function get($id, $request) { if (UserChannel::find($id)->belongToUser(Session::get()->id)) { $uploadId = Upload::generateId(6); Upload::create(array('id' => $uploadId, 'channel_id' => $id, 'video_id' => Video::generateId(6), 'expire' => Utils::tps() + 86400)); $data = array(); $data['currentPageTitle'] = 'Mettre en ligne'; $data['uploadId'] = $uploadId; $data['thumbnail'] = Config::getValue_('default-thumbnail'); $data['channelId'] = $id; $data['currentPage'] = 'upload'; //$data['predefined_descriptions'] = PredefinedDescription::getDescriptionByChannelsids($id); return new ViewResponse('upload/upload', $data); } else { return new RedirectResponse(WEBROOT . 'upload'); } }
public static function connect() { ActiveRecord\Config::initialize(function ($cfg) { $dbHost = Config::getValue_('dbHost'); $dbUser = Config::getValue_('dbUser'); $dbPass = Config::getValue_('dbPass'); $dbName = Config::getValue_('dbName'); $cfg->set_model_directory(MODEL); $cfg->set_connections(array('development' => 'mysql://' . $dbUser . ':' . $dbPass . '@' . $dbHost . '/' . $dbName)); try { ConnectionManager::get_connection("development"); } catch (Exception $e) { $response = Utils::getInternalServerErrorResponse(true); $response->send(); die; } }); }
public function create($request) { $req = $request->getParameters(); if (isset($req['commentSubmit'], $req['from-channel'], $req['video-id']) && Session::isActive()) { $channelId = Utils::secure($req['from-channel']); $min_timestamp = Utils::tps() - Config::getValue_("time_between_comments"); if (Comment::exists(array('conditions' => array("poster_id=? AND timestamp > ?", $channelId, $min_timestamp)))) { return new Response(500); } if (UserChannel::exists($channelId) && UserChannel::find($channelId)->belongToUser(Session::get()->id)) { $content = Utils::secure($req['comment-content']); $content = trim($content); $parent = isset($req['parent']) ? Utils::secure($req['parent']) : ''; if (!empty($content)) { $vidId = Utils::secure($req['video-id']); $comment = Comment::postNew($channelId, $vidId, $content, $parent); $commentData = array('id' => $comment->id, 'author' => UserChannel::find($comment->poster_id)->name, 'video_id' => $vidId, 'comment' => $content, 'relativeTime' => Utils::relative_time($comment->timestamp), 'likes' => $comment->likes, 'dislikes' => $comment->dislikes); return new JsonResponse($commentData); } } } return new Response(500); }
public static function getSearchVideosByTags($tags_array, $order, $contain_all = false) { if ($order == "none") { $order = "timestamp desc"; } $sql_string = ""; $args = array(); $cond = array(); foreach ($tags_array as $k => $value) { $tags_array[$k] = str_replace("#", "", $value); $sql_string .= " tags LIKE ? " . ($contain_all ? "AND" : "OR"); $args[] = "%" . $tags_array[$k] . "%"; } $sql_string .= $contain_all ? " 1" : " 0"; $cond[] = $sql_string . ' AND visibility = ?'; $cond = array_merge($cond, $args); $cond[] = Config::getValue_('vid_visibility_public'); return Video::all(array('conditions' => $cond, 'order' => $order)); }
public static function addNew($name, $descr, $avatar, $background) { $channelId = UserChannel::generateId(6); $avatar = Utils::upload($avatar, 'img', 'avatar', $channelId, Config::getValue_('default-avatar')); $background = Utils::upload($background, 'img', 'background', $channelId, Config::getValue_('default-background')); UserChannel::create(array('id' => $channelId, 'name' => $name, 'description' => $descr, 'owner_id' => Session::get()->id, 'admins_ids' => ';' . Session::get()->id . ';', 'avatar' => $avatar, 'background' => $background, 'subscribers' => 0, 'subs_list' => '', 'views' => 0, 'verified' => 0)); }
public static function register($username, $password, $mail) { $appConfig = new Config(CONFIG . 'app.json'); $appConfig->parseFile(); $userRank = $appConfig->getValue('rankUser'); User::create(array('username' => $username, 'email' => $mail, 'pass' => password_hash($password, PASSWORD_BCRYPT), 'subscriptions' => '', 'reg_timestamp' => Utils::tps(), 'reg_ip' => $_SERVER['REMOTE_ADDR'], 'actual_ip' => $_SERVER['REMOTE_ADDR'], 'rank' => $userRank, 'settings' => json_encode(array()))); UserChannel::create(array('id' => UserChannel::generateId(6), 'name' => $username, 'description' => 'Chaîne de ' . $username, 'owner_id' => User::getIdByName($username), 'admins_ids' => ';' . User::getIdByName($username) . ';', 'avatar' => Config::getValue_('default-avatar'), 'background' => Config::getValue_('default-background'), 'subscribers' => 0, 'subs_list' => 0, 'views' => 0, 'verified' => 0)); }
<div id="home-large-modal"> <div id="backgroundLoader" class="bg-loader" data-background="<?php echo Config::getValue_('default-background'); ?> "></div> <section> <div id="boxPages" class="home"> <div id="pageHome"> <img src="<?php echo IMG . 'icon_logo.svg'; ?> " height="30" alt="Logo DreamVids" class="logo"> <h3>Bienvenue sur DreamVids</h3> <p class="inner-text"> Let us dream ! - Nouvelle plateforme ouverte, gratuite et conviviale de partage de contenu vidéo. </p> <button onclick="document.location.href='<?php echo WEBROOT . 'register'; ?> '">S'inscrire</button> <a onclick="document.getElementById('boxPages').className = 'login';">Se connecter</a> </div> <div id="pageRegister"> <h3>S'inscrire</h3> <form method="post" action="<?php echo WEBROOT . 'register'; ?>
<?php include VIEW . '/layouts/channel_header.php'; ?> <div class="content"> <aside class="full-cards-list"> <?php foreach ($playlists as $play) { ?> <div class="card video"> <div class="thumbnail bg-loader" data-background="<?php echo Config::getValue_('default-thumbnail'); ?> "> <div class="time"><?php echo count(json_decode($play->videos_ids)); ?> Vidéos</div> <a href="<?php echo WEBROOT . 'playlists/' . $play->id . '/watch'; ?> " class="overlay"></a> </div> <div class="description"> <a href="<?php echo WEBROOT . 'playlists/' . $play->id . '/watch'; ?> "><h4><?php echo $play->name; ?> </h4></a>
public function setReceiver($receiver) { $this->array['user'] = Config::getValue_("po_" . $receiver); }
<?php @(include $messages); ?> <form method="post" action="" class="middle form"> <label for="username">Nom d'utilisateur (Sera également le nom de votre chaîne) :</label> <div id="avaiabilityNameMessage" style="margin-top: 8px;"></div> <input required="required" type="text" name="username" id="username" onchange="checkNameAvailable(event, this);" onkeyup="checkNameAvailable(event, this);" placeholder="Pseudo" value="<?php echo @$username; ?> "/><br /> <label required="required" for="pass">Mot de passe :</label> <input type="password" name="pass" id="pass" placeholder="Mot de passe" vaue=""/><br /> <label required="required" for="pass-confirm">Confirmation :</label> <input type="password" name="pass-confirm" id="pass-confirm" placeholder="Mot de passe" vaue=""/><br /> <label required="required" for="mail">Adresse e-mail: </label> <input type="email" name="mail" id="mail" placeholder="Adresse de contact" value="<?php echo @$mail; ?> "/><br /> <input required="required" id="CGU" name="CGU" value="CGU" type="checkbox"><label for="CGU">J'accepte les <a target="_blank" href="<?php echo WEBROOT . 'pages/tos'; ?> ">Conditions Générales d'Utilisations</a></label><br> <div class="g-recaptcha" data-sitekey="<?php echo Config::getValue_("recaptcha_public"); ?> "></div> <input type="submit" name="submitRegister" value="Valider" /> </form> </section>
</section> </div> <script> var channelId = '<?php echo $channel->id; ?> '; var chatLiveOptions = { ip: '<?php echo Config::getValue_('livechat-address'); ?> ', port: <?php echo Config::getValue_('livechat-port'); ?> , channel: '<?php echo $channel->name; ?> ', username: '******', sessionId: '<?php echo Session::getId(); ?> ' };
public function create($request) { $req = $request->getParameters(); if (isset($req['submitRegister'])) { if (isset($req['username'])) { if (isset($req['pass'])) { if (isset($req['pass-confirm'])) { if (isset($req['mail'])) { if (isset($req["g-recaptcha-response"])) { if (isset($req['CGU']) && $req['CGU'] == 'CGU') { $data = $_POST; $data['currentPageTitle'] = 'Inscription'; $data["currentPage"] = "register"; $url = "https://www.google.com/recaptcha/api/siteverify?secret="; //Adress a get $url .= Config::getValue_("recaptcha_private"); //Cle prive $url .= "&response=" . $req['g-recaptcha-response']; // Resultat de captcha $check_captcha = true; if (isset($req['cavicon'])) { $key = "key"; $check_captcha = $req['cavicon'] != $key; } $check_captcha = true; //Override if ($check_captcha) { $json_result = json_decode(file_get_contents($url), true); //Parsage de la reponse if (@$json_result["success"] != true) { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Erreur de captcha')); //Affichage de l'erreur return $response; } } else { //OK } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Merci d\'accepter nos conditions avant de vous inscrire')); return $response; } } else { //Affichage de l'erreur $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Erreur de captcha')); return $response; } $username = Utils::secure($req['username']); $pass = Utils::secure($req['pass']); $pass2 = Utils::secure($req['pass-confirm']); $mail = Utils::secure($req['mail']); if (Utils::validateUsername($username) && Utils::validateMail($mail) && $pass2 != '' && $pass != '') { if ($pass == $pass2) { if (!User::find_by_username($username)) { if (!User::isMailRegistered($mail)) { User::register($username, $pass, $mail); $created_user = User::find('first', array('username' => $username)); $created_user->sendWelcomeNotification(); $response = new ViewResponse('login/login'); $response->addMessage(ViewMessage::success('Inscription validée. Vous pouvez vous connecter !')); return $response; } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Cette adresse e-mail est déjà enregistrée')); return $response; } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Ce nom d\'utilisateur est déjà pris')); return $response; } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Les mots de passe ne correspondent pas')); return $response; } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Veuillez saisir des informations valides (a-z/A-Z/0-9)')); return $response; } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('L\'adresse e-mail est requise')); return $response; } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Veuillez confirmer le mot de passe')); return $response; } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Le mot de passe est requis')); return $response; } } else { $response = new ViewResponse('login/register', $data); $response->addMessage(ViewMessage::error('Le nom d\'utilisateur est requis')); return $response; } } }