/**
  * configure
  *
  * Configure the instance
  * @param <type> $dsn
  * @param <type> $user
  * @param <type> $pass
  * @return db
  */
 public static function configure($dsn, $user, $pass)
 {
     if (self::$instance !== NULL) {
         throw new Exception('copperDb already configured.');
     }
     try {
         self::$instance = new copperDbPDO($dsn, $user, $pass);
         self::$instance->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
         self::$instance->prepare("SET NAMES UTF8;")->execute();
     } catch (Exception $e) {
         copperConfig::doError(" Configure: " . $e->getMessage() . " File: " . __FILE__ . ":" . __LINE__);
         echo "Hubo un error con la base de datos.\n";
         die;
     }
     return self::$instance;
 }
 public function parseAdditionalMetadata()
 {
     try {
         $feedURL = "http://gdata.youtube.com/feeds/api/videos/" . $this->videoId;
         $sxml = simplexml_load_file($feedURL);
         $media = $sxml->children('http://search.yahoo.com/mrss/');
         //// get <yt:duration> node for video length
         $yt = $media->children('http://gdata.youtube.com/schemas/2007');
         $attrs = $yt->duration->attributes();
         $this->duration = $this->length = $length = $attrs['seconds'];
     } catch (Exception $e) {
         copperConfig::doError('Error al intentar obtener metadata adicional desde URL: ' . $feedURL . ' Excepcion: ' . $e->getMessage());
         return false;
     }
     return true;
 }
     * @param array $params
     */
    public function testAjaxService(array $params)
    {
        echo json_encode($params);
    }
    /**
     * doAjaxError
     *
     * Response an ajax error
     *
     * @param string $msg
     * @return false
     */
    protected function doAjaxError($msg)
    {
        $message = array('error' => true, "msg" => $msg);
        echo json_encode($message);
        return false;
    }
}
try {
    $Ajax = new Ajax($_REQUEST['method'], $_REQUEST['params']);
} catch (Exception $exc) {
    $errLog = "Peticion ajax (";
    $errLog .= $_REQUEST['method'] . " con params " . json_encode($_REQUEST['params']);
    $errLog .= ") falla por excepcion: " . $exc->getMessage();
    copperConfig::doError($errLog . " File: " . __FILE__ . ":" . __LINE__);
    copperConfig::doError($exc->getTraceAsString());
    echo json_encode(array("error" => true, "msg" => $exc->getMessage()));
}
echo copperConfig::get('callbackUrl');
?>
';
      var CANVAS_URL  = '<?php 
echo copperConfig::get('canvasUrl');
?>
';
      <?php 
if (copperConfig::get('facebookActivate')) {
    ?>
        var SIGNED_REQUEST  = '<?php 
    echo htmlentities($_REQUEST['signed_request']);
    ?>
';
      <?php 
}
?>
    </script>
    <?php 
$fbInstance = copperConfig::get('fbInstance');
if (!empty($fbInstance)) {
    try {
        $friends = $fbInstance->facebook->api('/me/friends');
    } catch (Exception $exc) {
        copperConfig::doError("Error al intentrar inicializar el /me/ : " . $exc->getMessage());
        copperConfig::doError("Error al intentrar inicializar el /me/ con trace: " . $exc->getTraceAsString());
    }
    if (!empty($friends)) {
        copperUtils::setJsVars('myFriends', $friends);
    }
}