2019-06-19 22:00:16 +08:00
< ? php
class Clublog_model extends CI_Model {
2022-09-11 21:02:31 +08:00
function get_clublog_users () {
$this -> db -> select ( 'user_clublog_name, user_clublog_password, user_id' );
$this -> db -> where ( 'coalesce(user_clublog_name, "") != ""' );
$this -> db -> where ( 'coalesce(user_clublog_password, "") != ""' );
$query = $this -> db -> get ( $this -> config -> item ( 'auth_table' ));
return $query -> result ();
}
2019-06-19 22:00:16 +08:00
function get_clublog_auth_info ( $username ) {
2019-10-05 01:30:55 +08:00
$this -> db -> select ( 'user_name, user_clublog_name, user_clublog_password' );
2019-06-19 22:00:16 +08:00
$this -> db -> where ( 'user_name' , $username );
$query = $this -> db -> get ( $this -> config -> item ( 'auth_table' ));
return $row = $query -> row_array ();
}
2019-06-19 23:04:15 +08:00
2025-05-21 23:47:57 +08:00
// function to reset clublog fields for the user in the auth table
function reset_clublog_user_fields ( $user_id ) {
$data = array (
'user_clublog_name' => null ,
'user_clublog_password' => null ,
);
$this -> db -> where ( 'user_id' , $user_id );
$this -> db -> update ( $this -> config -> item ( 'auth_table' ), $data );
}
2019-09-26 20:05:28 +08:00
function mark_qsos_sent ( $station_id ) {
2019-06-19 23:04:15 +08:00
$data = array (
'COL_CLUBLOG_QSO_UPLOAD_DATE' => date ( 'Y-m-d' ),
'COL_CLUBLOG_QSO_UPLOAD_STATUS' => " Y " ,
);
2019-09-26 20:05:28 +08:00
$this -> db -> where ( " station_id " , $station_id );
2019-06-20 22:16:53 +08:00
$this -> db -> where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , null );
2019-06-20 22:24:54 +08:00
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " " );
2023-08-07 17:21:21 +08:00
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " N " );
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " M " );
2019-06-19 23:04:15 +08:00
$this -> db -> update ( $this -> config -> item ( 'table_name' ), $data );
}
2019-06-20 22:53:57 +08:00
2019-10-14 01:04:17 +08:00
function mark_qso_sent ( $qso_id ) {
$data = array (
'COL_CLUBLOG_QSO_UPLOAD_DATE' => date ( 'Y-m-d' ),
'COL_CLUBLOG_QSO_UPLOAD_STATUS' => " Y " ,
);
$this -> db -> where ( " COL_PRIMARY_KEY " , $qso_id );
$this -> db -> update ( $this -> config -> item ( 'table_name' ), $data );
}
2019-10-13 06:10:22 +08:00
function get_last_five ( $station_id ) {
$this -> db -> where ( 'station_id' , $station_id );
$this -> db -> where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , null );
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " " );
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " N " );
$this -> db -> limit ( 5 );
$query = $this -> db -> get ( $this -> config -> item ( 'table_name' ));
return $query ;
}
2019-09-26 20:05:28 +08:00
function mark_all_qsos_notsent ( $station_id ) {
2019-06-20 22:53:57 +08:00
$data = array (
'COL_CLUBLOG_QSO_UPLOAD_DATE' => null ,
2023-08-07 17:21:21 +08:00
'COL_CLUBLOG_QSO_UPLOAD_STATUS' => " M " ,
2019-06-20 22:53:57 +08:00
'COL_CLUBLOG_QSO_UPLOAD_STATUS' => " N " ,
);
2019-09-26 20:05:28 +08:00
$this -> db -> where ( " station_id " , $station_id );
2019-06-20 22:53:57 +08:00
$this -> db -> where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " Y " );
$this -> db -> update ( $this -> config -> item ( 'table_name' ), $data );
}
2022-09-11 21:02:31 +08:00
function get_clublog_qsos ( $station_id ){
2023-04-26 18:55:59 +08:00
$this -> db -> select ( '*, dxcc_entities.name as station_country' );
2022-09-11 21:02:31 +08:00
$this -> db -> join ( 'station_profile' , 'station_profile.station_id = ' . $this -> config -> item ( 'table_name' ) . '.station_id' );
2023-04-28 21:14:59 +08:00
$this -> db -> join ( 'dxcc_entities' , 'station_profile.station_dxcc = dxcc_entities.adif' , 'left outer' );
2022-09-11 21:02:31 +08:00
$this -> db -> where ( $this -> config -> item ( 'table_name' ) . '.station_id' , $station_id );
$this -> db -> group_start ();
$this -> db -> where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , null );
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " " );
2023-08-07 17:21:21 +08:00
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " M " );
2022-09-11 21:02:31 +08:00
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " N " );
$this -> db -> group_end ();
$query = $this -> db -> get ( $this -> config -> item ( 'table_name' ));
return $query ;
}
function all_with_count ( $userid ) {
$this -> db -> select ( 'station_profile.station_id, station_profile.station_callsign, count(' . $this -> config -> item ( 'table_name' ) . '.station_id) as qso_total' );
$this -> db -> from ( 'station_profile' );
$this -> db -> join ( $this -> config -> item ( 'table_name' ), 'station_profile.station_id = ' . $this -> config -> item ( 'table_name' ) . '.station_id' , 'left' );
$this -> db -> group_by ( 'station_profile.station_id' );
$this -> db -> where ( 'station_profile.user_id' , $userid );
$this -> db -> group_start ();
$this -> db -> where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , null );
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " " );
2023-08-07 17:21:21 +08:00
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " M " );
2022-09-11 21:02:31 +08:00
$this -> db -> or_where ( " COL_CLUBLOG_QSO_UPLOAD_STATUS " , " N " );
$this -> db -> group_end ();
return $this -> db -> get ();
}
2019-06-19 22:00:16 +08:00
}
2023-04-26 18:55:59 +08:00
?>