public function actionAlertaPresubasta() { Yii::$enableIncludePath = false; // //list($MailController) = Yii::app()->createController('Mail'); //$MailController->mailsend(); $arreglo = array(); $criteria = new CDbCriteria(); // Verificar // Existe una subasta silenciosa activa? $criteria = new CDbCriteria(); $criteria->condition = 'silenciosa=:silenciosa'; $criteria->params = array(':silenciosa' => 1); $subas = Subastas::model()->find($criteria); if ($subas == null) { //Tomo ultima silenciosa $criteria->condition = 'fuesilenciosa=:fuesilenciosa'; $criteria->params = array(':fuesilenciosa' => 1); $criteria->order = 'id DESC'; $silenciosa = Subastas::model()->find($criteria); // Ya fue enviado los correos masivos. if ($silenciosa->envio_correos) { return; } // Pre Subasta $criteria = new CDbCriteria(); $criteria->condition = 'ids=:ids'; $criteria->params = array(':ids' => $silenciosa->id); $crono = Cronometro::model()->find($criteria); $time = new DateTime($crono->fecha_finalizacion); //$time->add(new DateInterval('PT1H')); $actualTime = new DateTime("now"); $intervaloPresubasta = $actualTime->getTimestamp() - $time->getTimestamp(); // Verificando que se encuentra en los proximos 10 minutos al finalizar la subasta. if (!($intervaloPresubasta >= 0 && $intervaloPresubasta <= 600)) { return; } } else { return; } $footer = Correos::model()->find('id=:id', array('id' => 1)); //construyo el titulo del mensaje $subject = 'Ha finalizado la Pre-' . $silenciosa['nombre'] . ' ' . $silenciosa['nombrec']; //obtengo los resultados de las obras en la subasta finalizada. //$imagenes = ImagenS::model()->findAll('ids=:ids', array(':ids' => $silenciosa['id'])); $criteria = new CDbCriteria(); $criteria->distinct = true; $criteria->condition = "ids=" . $silenciosa->id; $criteria->select = 'id_usuario, ids'; $imagenes = ImagenS::model()->findAll($criteria); $message = ""; //echo $silenciosa['nombre']; //echo "Hola"; foreach ($imagenes as $key => $value) { //valido que la obra la tenga un usuario y q no vuelva a entrar ese mismo usuario /* if($value->id_usuario and !in_array($value->id_usuario, $arreglo)) {*/ $usuario = Usuarios::model()->find('id=:id', array(':id' => $value->id_usuario)); $usuariospuja = Usuariospujas::model()->find('idusuario=:idusuario and idsubasta=:idsubasta', array(':idusuario' => $usuario['id'], ':idsubasta' => $silenciosa['id'])); if (!$usuariospuja) { continue; } $correo = $usuario['email']; $nombre = $usuario['nombre']; $apellido = $usuario['apellido']; $paleta = $usuariospuja['paleta']; $to = $correo; $message = ' <div style="padding-left:50px !important; padding-top:10px !important; float:left !important; padding-right:20px !important;">'; $message .= '<h2>PRE-SUBASTA FINALIZADA</h2><br> <h2 style="padding-bottom:5px !important; font-size:14px !important;">Estimado(a) ' . strtoupper($nombre) . ' ' . strtoupper($apellido) . ', la Pre-' . $silenciosa['nombre'] . ' ' . $silenciosa['nombrec'] . ' ha finalizado a las 5:00 p.m. del día de hoy.</h2> <h2 style="padding-bottom:10px !important; font-size:14px !important;">Hasta el momento Ud. tiene la última puja de los siguientes lotes:</h2><br/> <table width="100%"> <thead> <tr> <th align="left" style="width: 200px;">LOTE</th> <th align="left">ÚLTIMA PUJA</th> </tr> </thead> <tbody>'; //$arreglo[] = $value->id_usuario; $usuarios = ImagenS::model()->findAll('id_usuario=:id_usuario and ids=:idsubasta', array(':id_usuario' => $value->id_usuario, ':idsubasta' => $silenciosa['id'])); // Lista de imágenes del usuario. foreach ($usuarios as $ky => $valor) { $message .= '<tr> <td align="left" style="width: 200px;"> <!--<img src="http://www.odalys.com/odalys/' . $valor->imagen . '" style="float:left;padding-right:20px;"/>--> ' . $valor->descri . ' </td>'; $message .= ' <td align="left">' . $silenciosa['moneda'] . ' ' . number_format($valor->actual) . '</td> </tr>'; } $message .= '</tbody> </table> <hr>'; $message .= '<h2 style="padding-bottom:10px !important; font-size:14px !important;"> A partir de este momento, tiene hasta el día de mañana a las 10:00 a.m. para ingresar en nuestra plataforma y seleccionar qué desea hacer con los lotes sobre los que tiene la última puja hasta el momento. Haga click aquí para ir a <a href="' . Yii::app()->request->baseUrl . '">Subastas Odalys</a></h2>'; $message .= ' Para cada uno de dichos lotes podrá seleccionar alguna de las siguientes opciones: <br><br> 1. Dejar puja máxima, que va a ser realizada por nosotros como una puja en ausencia durante el acto de Subasta en vivo. <br><br> 2. Dejar puja telefónica, en cuyo caso nos comunicáremos con Ud. el día del acto de Subasta en vivo en el momento que sea subastado su lote. Importante: de no lograr comunicarnos con Ud. durante la subasta, su última puja de la presubasta será tomada como su última oferta en el lote. <br><br> 3. Asistiré a la subasta en vivo, en este caso su última puja de la presubasta va a ser tomada como su última oferta en el lote, es decir, el lote será subastado en la sala desde ese monto y usted mismo podrá continuar su puja si fuese superada por algún otro postor. <br><br> 4. Quedarme con mi puja actual, en este caso su última puja de la presubasta va a ser tomada como su última oferta en el lote, es decir, el lote será subastado en la sala desde ese monto. <br><br> <b>* Si no selecciona ninguna opción en el tiempo estipulado, automáticamente se selecciona la opción 4.</b> <br> <br> <br> Recuerde que la Subasta 237 Maestros Venezolanos, se realizará mañana domingo 29 de noviembre a las 11:00 a.m. en el Hotel JW Marriott Caracas. Salón Armando Reverón. Av. Venezuela con calle Mohedano. El Rosal. Caracas. <br> <br> Ante cualquier duda, por favor póngase en contacto con nosotros. '; $message .= ' <br> Atentamente, <br><br> Casa de Subastas Odalys<br> C. Comercial Concresa, Nivel PB. Local <br> 115 y 116, Prados del Este, Baruta 1080,<br> Estado Miranda, Venezuela<br> Telfs: +58 2129795942, +58 2129761773<br> Fax: +58 212 9794068<br> odalys@odalys.com<br> </div>'; //echo $message; //echo "Fin de mensaje"; //echo "----------------------------------"; //echo "<br>"; echo 'Enviando correo a: ' . $to . ' con asunto: ' . $subject; echo PHP_EOL; $this->mailsend($to, $subject, $message); //$MailController->mailsend($to,$subject,$message); //var_dump(($value)); //die; $message = ""; $to = ""; //$subject = ""; // $this->render('compradores', array('valor'=>$message)); //} $message = ""; $to = ""; $subject = ""; } // Se marca la subasta que fue silenciosa como enviada los correos. $silenciosa->envio_correos = 1; if ($silenciosa->save()) { return; } }
public function actionResultados() { $criteria = new CDbCriteria(); $criteria->condition = 'fuesilenciosa=:fuesilenciosa'; $criteria->params = array(':fuesilenciosa' => 1); $criteria->order = 'id DESC'; $ultimaSubastaSilenciosa = Subastas::model()->find($criteria); // Pre Subasta $crono = Cronometro::model()->findByAttributes(array('ids' => $ultimaSubastaSilenciosa->id)); $query = ImagenS::model()->findAll('ids=:ids ORDER BY id', array(':ids' => $ultimaSubastaSilenciosa['id'])); $contador = 0; $numero = 0; $fancyElements = $imprimir = ""; //echo '<table width="80%"><tr>'; $imprimir = '<div id="wrapper_imagens" width="100%" class="tablaresultado">'; foreach ($query as $key => $value) { $numero++; $link = CHtml::link(CHtml::image('', '', array('data-original' => $this->imagenesDir . $value->imagen, 'style' => 'vertical-align: bottom;', 'class' => 'lazy', 'onError' => 'this.onerror=null;this.src=\'' . Yii::app()->getBaseUrl(true) . '/images/loader.gif\';', 'width' => 'auto', 'height' => 'auto')), '', array('class' => 'des_' . $value->id, 'rel' => 'gallery')); if ($contador == 6) { //$imprimir .= '<tr align="center" valign="bottom">'; } $contador++; $imprimir .= '<div id="elementosImagens" style="height: 160px; text-align: center;" align="center" style="height: 180px;" class="tile ' . $value->solonombre . '" data-nombres="' . $value->nombres . '" data-apellidos="' . $value->apellidos . '" data-numero="' . $numero . '">'; $imprimir .= '<span style="display: inline-block; height:100px; vertical-align: bottom; "> </span> ' . $link . '<div style="padding-bottom: 8px;"></div> <loteautor>' . $value->solonombre . '</loteautor>'; if ($value->id_usuario > 0) { if (Yii::app()->session['admin']) { $ganador_imagen = Usuariospujas::model()->find('idusuario=:idusuario && idsubasta=:idsubasta', array(':idusuario' => $value->id_usuario, ':idsubasta' => $ultimaSubastaSilenciosa->id)); $imprimir .= '<div>Paleta <paleta_' . $value->id . '>' . $ganador_imagen['paleta'] . '</paleta_' . $value->id . '></div>'; } if (Yii::app()->session['id_usuario'] && Yii::app()->session['id_usuario'] == $value->id_usuario) { $imprimir .= '<br/><w id="' . $value->id . 'a">' . CHtml::image(Yii::app()->getBaseUrl(false) . '/images/vendido.png', '', array('style' => 'width: 5px;hight:5px;')) . '</w>'; /* $time = new DateTime($crono->fecha_finalizacion); $time->add(new DateInterval('PT1H')); $actualTime = new DateTime("now"); $intervaloPresubasta = $time->getTimestamp() - $actualTime->getTimestamp() ;*/ // Verificando que se encuentra en la proxima hora al finalizar la subasta. $existe = PreSubastas::model()->find('usuario_id=:usuario_id AND imagen_s_id=:imagen_s_id', array(':usuario_id' => Yii::app()->session['id_usuario'], 'imagen_s_id' => $value->id)); if (!$existe && $ultimaSubastaSilenciosa->enPresubasta()) { $etiqueta = 'Dejar puja'; $pujarAjaxLink = CHtml::ajaxLink($etiqueta, $this->createUrl('site/presubasta'), array('type' => 'POST', 'data' => array('imagen_s' => '0'), 'context' => 'js:this', 'beforeSend' => 'function(xhr,settings){ settings.data = encodeURIComponent(\'imagen_s\') + \'=\' + encodeURIComponent($(this).attr(\'id\')); }', 'success' => 'function(r){$("#pujaModal").html(r).dialog("open"); return false;}'), array('id' => $value->id, 'style' => 'color: #014F92;')); $imprimir .= '<br>' . $pujarAjaxLink; } if ($existe) { //$imprimir .= '<br> Estatus Presubasta: '; //$imprimir .= '<br>'; if ($existe->puja_maxima) { $etiqueta = 'Dejó puja máxima por: ' . $ultimaSubastaSilenciosa->moneda . ' ' . number_format($existe->monto); } if ($existe->puja_telefonica) { $etiqueta = 'Dejó puja telefónica'; } if ($existe->asistir_subasta) { $etiqueta = 'Asistiré a la subasta'; } if ($existe->no_hacer_nada) { $etiqueta = 'Quedarme con mi puja actual'; } //$existe = PreSubastas::model()->find('usuario_id=:usuario_id AND imagen_s_id=:imagen_s_id',array(':usuario_id'=>Yii::app()->session['id_usuario'],'imagen_s_id'=>$value->id)); if ($ultimaSubastaSilenciosa->enPresubasta()) { //$etiqueta = 'Modificar puja dejada'; $pujarAjaxLink = CHtml::ajaxLink($etiqueta, $this->createUrl('site/presubasta', array('actualizar' => true)), array('type' => 'POST', 'data' => array('imagen_s' => '0'), 'context' => 'js:this', 'beforeSend' => 'function(xhr,settings){ settings.data = encodeURIComponent(\'imagen_s\') + \'=\' + encodeURIComponent($(this).attr(\'id\')); }', 'success' => 'function(r){$("#pujaModal").html(r).dialog("open"); return false;}'), array('id' => $value->id, 'style' => 'color: #014F92;')); $imprimir .= '<br>' . $pujarAjaxLink; } else { $imprimir .= '<br>' . $etiqueta; } } } else { $imprimir .= ' <br/><span style="color:#656565;">' . ($ultimaSubastaSilenciosa->enPresubasta() ? 'Pujado' : 'Pujado') . '</span>'; } } $imprimir .= '</div>'; if ($contador == 6) { //$imprimir .='</tr>'; $contador = 0; } $this->mostrandoImagen($value); } $imprimir .= '</div>'; $this->render('resultados', array('resultados' => $imprimir, 'subasta' => $ultimaSubastaSilenciosa, 'imagenesDir' => $this->imagenesDir, 'crono' => $crono)); }
<nombrecsubasta></nombrecsubasta> </div> <div class="alignright" style="margin: 0 0 0 0;"> <?php $subasta = new Subastas(); $sub = Subastas::model()->find('silenciosa=1'); //$fecha = null; // Verificando que se encuentra en la proxima hora al finalizar la subasta. //if($subasta->enPresubasta() ){ $fecha = $subasta->fechaPresubasta(); //}else if ($sub != null) { $fecha = new DateTime(Cronometro::model()->find('ids=:ids', array(':ids' => $sub['id']))['fecha_finalizacion']); } //$fecha = new DateTime(); //var_dump($fecha);die; $actualTime = new DateTime("now"); $segundos = $fecha->getTimestamp() - $actualTime->getTimestamp(); ?> <!-- ESTO TIENE QUE IR EN EL HEADER CON POSICIÓN FIJADA(QUE SIEMPRE SE VEA)--> <div id="odliczanie-b" class="" syle="margin: 0 0 0 0;"><b><?php echo $subasta->enPresubasta() ? 'Pre-Subasta: ' : ''; ?> <span data-time-old="<?php echo $fecha->format('U'); ?> " class="cronometro" data-seconds="<?php
CClientScript::POS_READY);*/ Yii::app()->clientScript->registerScript('refresh', 'var time = new Date().getTime(); $(document.body).bind("mousemove keypress", function(e) { time = new Date().getTime(); }); function refresh() { if(new Date().getTime() - time >= 1800000) window.location.reload(true); else setTimeout(refresh, 300000); } setTimeout(refresh, 300000);', CClientScript::POS_READY); $fecha = new DateTime(Cronometro::model()->find('ids=:ids', array(':ids' => Subastas::model()->find('silenciosa=1')['id']))['fecha_finalizacion']); //echo 'Fecha Finalización: '.$fecha->format('d-m-Y h:i:s'); /*$this->widget('ext.bcountdown.BCountdown', array( //'title'=>'UNDER CONSTRUCTION', // Title //'message'=>'Stay tuned for news and updates', // message for user 'isDark'=>false, // two skin dark and light , by default it light i.e isDark=false 'year'=>$fecha->format('Y'), 'month'=>$fecha->format('m'), 'day'=>$fecha->format('d'), 'hour'=>$fecha->format('h'), 'min'=>$fecha->format('i'), 'sec'=>$fecha->format('s'), ) ); */
public function fechaSubastaActiva() { if (!$this->silenciosaActiva()) { return false; } $crono = Cronometro::model()->findByAttributes(array('ids' => $this->silenciosaActiva()->id)); return new DateTime($crono->fecha_finalizacion); }