annotate vendor/jcalderonzumba/gastonjs/src/Browser/BrowserCookieTrait.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 4c8ae668cc8c
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Zumba\GastonJS\Browser;
Chris@0 4
Chris@0 5 use Zumba\GastonJS\Cookie;
Chris@0 6
Chris@0 7 /**
Chris@0 8 * Trait BrowserCookieTrait
Chris@0 9 * @package Zumba\GastonJS\Browser
Chris@0 10 */
Chris@0 11 trait BrowserCookieTrait {
Chris@0 12 /**
Chris@0 13 * Gets the cookies on the browser
Chris@0 14 *
Chris@0 15 * @return Cookie[]
Chris@0 16 */
Chris@0 17 public function cookies() {
Chris@0 18 $cookies = $this->command('cookies');
Chris@0 19 $objCookies = array();
Chris@0 20 foreach ($cookies as $cookie) {
Chris@0 21 $objCookies[$cookie["name"]] = new Cookie($cookie);
Chris@0 22 }
Chris@0 23 return $objCookies;
Chris@0 24 }
Chris@0 25
Chris@0 26 /**
Chris@0 27 * Sets a cookie on the browser, expires times is set in seconds
Chris@0 28 * @param $cookie
Chris@0 29 * @return mixed
Chris@0 30 */
Chris@0 31 public function setCookie($cookie) {
Chris@0 32 //TODO: add error control when the cookie array is not valid
Chris@0 33 if (isset($cookie["expires"])) {
Chris@0 34 $cookie["expires"] = intval($cookie["expires"]) * 1000;
Chris@0 35 }
Chris@0 36 $cookie['value'] = urlencode($cookie['value']);
Chris@0 37 return $this->command('set_cookie', $cookie);
Chris@0 38 }
Chris@0 39
Chris@0 40 /**
Chris@0 41 * Deletes a cookie on the browser if exists
Chris@0 42 * @param $cookieName
Chris@0 43 * @return bool
Chris@0 44 */
Chris@0 45 public function removeCookie($cookieName) {
Chris@0 46 return $this->command('remove_cookie', $cookieName);
Chris@0 47 }
Chris@0 48
Chris@0 49 /**
Chris@0 50 * Clear all the cookies
Chris@0 51 * @return bool
Chris@0 52 */
Chris@0 53 public function clearCookies() {
Chris@0 54 return $this->command('clear_cookies');
Chris@0 55 }
Chris@0 56
Chris@0 57 /**
Chris@0 58 * Enables or disables the cookies con phantomjs
Chris@0 59 * @param bool $enabled
Chris@0 60 * @return bool
Chris@0 61 */
Chris@0 62 public function cookiesEnabled($enabled = true) {
Chris@0 63 return $this->command('cookies_enabled', $enabled);
Chris@0 64 }
Chris@0 65 }