original_string: public function mesasAbiertas($mozo_id = null, $lastAccess = null){
              $conditions = array();
              
              // si vino el mozo por parametro, es porque solo quiero las mesas de ese mozo
              if ( !empty($mozo_id) ){
                 $conditions['Mozo.id'] =  $mozo_id;
              } else {
                  // todos los mozos activos
                  $conditions['Mozo.activo'] =  1;
              }
              
              // condiciones para traer mesas abiertas y pendientes de cobro
              if ( Configure::read('Site.type') == SITE_TYPE_HOTEL ) {
                  // si es hotel
                  $conditionsMesa = array(
                      'Mesa.deleted' => 0,        
                      'Mesa.checkin >' => date('Y-m-d', strtotime('-1 month')),
                  );
              } else {
                  // es restaurante u otros comercios
                  $conditionsMesa = array(
                      "Mesa.estado_id" => array( MESA_ABIERTA, MESA_CERRADA, MESA_COBRADA),
                      'Mesa.deleted' => 0,    
                  );
              }
              
              // si vino el parametro lastAccess, traer solo las mesas actualizadas luego del ultimo pedido
              if ( !empty($lastAccess) ) {
                  $conditionsMesa['Mesa.modified >='] = $lastAccess;
              }
              
              $contain = $this->Mesa->defaultContain;
              $contain['conditions'] = $conditionsMesa;
              unset($contain[0]);
              $optionsCreated = array(
                  'contain' => array('Mesa' => $contain),
                  'conditions'=> $conditions,
              );
  			$mesasABM = $this->find('all', $optionsCreated);
  
              $mozosMesa = array();
              foreach ( $mesasABM as $abmMesas ) {
                  // traer todos los mozos, con su array de mesas
                  $abmMesas['Mozo']['mesas'] = $abmMesas['Mesa'];
  
                  if ( !empty($lastAccess) ) {
                      // enviar solo los que tienen mesas modificadas
                      if (!empty($abmMesas['Mesa']) ) {
                          $mozosMesa['mozos'][] = $abmMesas['Mozo'];    
                      }
                  } else {
                      // enviar a todos
                      $mozosMesa['mozos'][] = $abmMesas['Mozo'];    
                  }
              }
              
  
              return $mozosMesa;
          }
code: public function mesasAbiertas($mozo_id = null, $lastAccess = null){
              $conditions = array();
              
              // si vino el mozo por parametro, es porque solo quiero las mesas de ese mozo
              if ( !empty($mozo_id) ){
                 $conditions['Mozo.id'] =  $mozo_id;
              } else {
                  // todos los mozos activos
                  $conditions['Mozo.activo'] =  1;
              }
              
              // condiciones para traer mesas abiertas y pendientes de cobro
              if ( Configure::read('Site.type') == SITE_TYPE_HOTEL ) {
                  // si es hotel
                  $conditionsMesa = array(
                      'Mesa.deleted' => 0,        
                      'Mesa.checkin >' => date('Y-m-d', strtotime('-1 month')),
                  );
              } else {
                  // es restaurante u otros comercios
                  $conditionsMesa = array(
                      "Mesa.estado_id" => array( MESA_ABIERTA, MESA_CERRADA, MESA_COBRADA),
                      'Mesa.deleted' => 0,    
                  );
              }
              
              // si vino el parametro lastAccess, traer solo las mesas actualizadas luego del ultimo pedido
              if ( !empty($lastAccess) ) {
                  $conditionsMesa['Mesa.modified >='] = $lastAccess;
              }
              
              $contain = $this->Mesa->defaultContain;
              $contain['conditions'] = $conditionsMesa;
              unset($contain[0]);
              $optionsCreated = array(
                  'contain' => array('Mesa' => $contain),
                  'conditions'=> $conditions,
              );
  			$mesasABM = $this->find('all', $optionsCreated);
  
              $mozosMesa = array();
              foreach ( $mesasABM as $abmMesas ) {
                  // traer todos los mozos, con su array de mesas
                  $abmMesas['Mozo']['mesas'] = $abmMesas['Mesa'];
  
                  if ( !empty($lastAccess) ) {
                      // enviar solo los que tienen mesas modificadas
                      if (!empty($abmMesas['Mesa']) ) {
                          $mozosMesa['mozos'][] = $abmMesas['Mozo'];    
                      }
                  } else {
                      // enviar a todos
                      $mozosMesa['mozos'][] = $abmMesas['Mozo'];    
                  }
              }
              
  
              return $mozosMesa;
          }
code_tokens: public function mesasAbiertas ( $ mozo_id = null , $ lastAccess = null ) { $ conditions = array ( ) ; // si vino el mozo por parametro, es porque solo quiero las mesas de ese mozo if ( ! empty ( $ mozo_id ) ) { $ conditions [ 'Mozo.id' ] = $ mozo_id ; } else { // todos los mozos activos $ conditions [ 'Mozo.activo' ] = 1 ; } // condiciones para traer mesas abiertas y pendientes de cobro if ( Configure :: read ( 'Site.type' ) == SITE_TYPE_HOTEL ) { // si es hotel $ conditionsMesa = array ( 'Mesa.deleted' => 0 , 'Mesa.checkin >' => date ( 'Y-m-d' , strtotime ( '-1 month' ) ) , ) ; } else { // es restaurante u otros comercios $ conditionsMesa = array ( "Mesa.estado_id" => array ( MESA_ABIERTA , MESA_CERRADA , MESA_COBRADA ) , 'Mesa.deleted' => 0 , ) ; } // si vino el parametro lastAccess, traer solo las mesas actualizadas luego del ultimo pedido if ( ! empty ( $ lastAccess ) ) { $ conditionsMesa [ 'Mesa.modified >=' ] = $ lastAccess ; } $ contain = $ this -> Mesa -> defaultContain ; $ contain [ 'conditions' ] = $ conditionsMesa ; unset ( $ contain [ 0 ] ) ; $ optionsCreated = array ( 'contain' => array ( 'Mesa' => $ contain ) , 'conditions' => $ conditions , ) ; $ mesasABM = $ this -> find ( 'all' , $ optionsCreated ) ; $ mozosMesa = array ( ) ; foreach ( $ mesasABM as $ abmMesas ) { // traer todos los mozos, con su array de mesas $ abmMesas [ 'Mozo' ] [ 'mesas' ] = $ abmMesas [ 'Mesa' ] ; if ( ! empty ( $ lastAccess ) ) { // enviar solo los que tienen mesas modificadas if ( ! empty ( $ abmMesas [ 'Mesa' ] ) ) { $ mozosMesa [ 'mozos' ] [ ] = $ abmMesas [ 'Mozo' ] ; } } else { // enviar a todos $ mozosMesa [ 'mozos' ] [ ] = $ abmMesas [ 'Mozo' ] ; } } return $ mozosMesa ; }
docstring: Para todos los mozos activos, me trae sus mesas abiertas
  @param int $mozo_id id del mozo, en caso de que no le pase ninguno, me busca todos
  @return array Mozos con sus mesas, Comandas, detalleComanda, productos y sabores
docstring_tokens: Para todos los mozos activos me trae sus mesas abiertas