Obrazy - Admin - 05-12-2025
Tworzymy klasę rozszerzającą dla klasy głównej.
Kod PHP: class AppClass extends Core {
Metoda , która zostanie uruchomiona jako pierwsza po zainicjalizowaniu obiektu.
Kod PHP: public function AppStart() { global $Lang;
Sprawdzamy czy użytkownik jest zalogowany na konto administratora.
Kod PHP: if($this->AppSessionGetValue('admin_id') != "") {
Tworzymy nagłówek strony .
Kod PHP: $this->AppBody .= '<h1>'.$Lang['ap_a3_picture_header'].'</h1>'; $this->AppBody .= '<div class="heading_row"></div>';
Wpisujemy do paska tytułu odpowiednią nazwę strony.
Kod PHP: $this->AppTitle = $Lang['ap_a3_picture_header']; if($_GET['action'] == 'accept') {
W przypadku zaakceptowania zgłoszenia ustawiamy w odpowiednim polu wartość ,aby zgłoszenie nie pojawiało się już w panelu .
Kod PHP: $SqlConfig = 'UPDATE '.$this->DBPrefix.'warning SET warn_active = "y" WHERE warn_id = "'.$this->AppDBSecure($_GET['warn_id']).'"'; if(!$this->AppDBQuery($SqlConfig)) { $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig); }
Informujemy użytkownika o dokonanej aktualizacji zgłoszenia .
Kod PHP: $this->AppBody .= $this->AppPrintSuccess($Lang['ap_a3_comm_insert_deleted']); } if($_GET['action'] == 'accept_delete') {
Kiedy zostało wywołane usunięcie danego obrazu , musimy ustawić w zgłoszeniu wartość w polu , aby nie pojawiało się ono ponownie .
Kod PHP: $SqlConfig = 'UPDATE '.$this->DBPrefix.'warning SET warn_active = "y" WHERE warn_id = "'.$this->AppDBSecure($_GET['warn_id']).'"'; if(!$this->AppDBQuery($SqlConfig)) { $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig); }
Następnie umieszczamy dany wpis pośród usuniętych ustawiając wartość jego pola .
Kod PHP: $SqlConfig = 'UPDATE '.$this->DBPrefix.'album_pictures SET pic_delete = "y" WHERE pic_id = "'.$this->AppDBSecure($_GET['warn_content_id']).'"'; if(!$this->AppDBQuery($SqlConfig)) { $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig); }
Informujemy użytkownika o tym , że dany wpis został usunięty .
Kod PHP: $this->AppBody .= $this->AppPrintSuccess($Lang['ap_a3_picture_upd_and_del']); }
Wybieramy liczbę zgłoszeń , aby móc je podzielić na strony .
Kod PHP: $SqlConfig = 'SELECT count(warn_id) FROM '.$this->DBPrefix.'warning WHERE warn_what = "image" AND warn_active = ""'; if(!$this->AppDBQuery($SqlConfig)) { $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig); } $Result = $this->AppDBResult(); $Rows = $this->AppDBHowMany();
Wszystkie wpisy dzielimy przez 20 sztuk na stronę .
Kod PHP: $HowManyPagesTemp = $Result[0]['count(warn_id)'] / 20; $HowManyPagesTemp = explode('.',$HowManyPagesTemp); $HowManyPages = $HowManyPagesTemp[0]; if($HowManyPagesTemp[1] > 0) { $HowManyPages++; }
Pobieramy z adresu URL numer strony oraz tej podstawie tworzymy zmienną zawierającą identyfikator rekordu , od którego będziemy zaczynać przeglądanie .
Kod PHP: $PageSelect = $_GET['page']; if($_GET['page'] == "") { $StartFrom = 0; } else { if(empty($_GET['page']) OR $_GET['page'] == 1) { $StartFrom = 0; } else { $_GET['page'] = $_GET['page'] - 1; $StartFrom = 20 * $_GET['page']; } } if($PageSelect == "" OR $PageSelect == 1) { $CurrentPage = 1; } else { $CurrentPage = $PageSelect; }
Tworzymy miejsce , gdzie będą znajdowały się łącza umożliwiające przejście do odpowiedniej strony .
Kod PHP: if($HowManyPages > 1) { $this->AppBody .= '<div style="padding-left: 5px; padding-right: 5px; padding-top: 5px; padding-bottom: 5px; text-align: right;">'; $this->AppBody .= $Lang['l2_a3_page']; for($i=1;$i<($HowManyPages+1);$i++) { if($CurrentPage == $i) { $this->AppBody .= $i; } else { $this->AppBody .= '<a href="'.$this->AppUrl.'admin.php?app=application_pictures&page='.$i.'">'.$i.'</a>'; } if($i<$HowManyPages) { $this->AppBody .= ' , '; } } $this->AppBody .= '</div'; }
Wybieramy powiadomienia wraz z podziałem na strony i uwzględniając obecną stronę , od której mają zostać wybrane rekordy .
Kod PHP: $SqlConfig = 'SELECT * FROM '.$this->DBPrefix.'warning WHERE warn_what = "image" AND warn_active = "" LIMIT '.$this->AppDBSecure($StartFrom).',20'; if(!$this->AppDBQuery($SqlConfig)) { $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig); } $Result = $this->AppDBResult(); $Rows = $this->AppDBHowMany();
Tabela do prezentacji zgłoszeń wraz z akcjami potrzebnymi do podjęcia odpowiednich akcji .
Kod PHP: $this->AppBody .= '<table cellpadding="0" cellspacing="0" border="0" width="100%">'; $this->AppBody .= '<tr>'; $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_id'].'</td>'; $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_user'].'</td>'; $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_content'].'</td>'; $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_date'].'</td>'; $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_upd'].'</td>'; $this->AppBody .= '<td class="fb_header_info">'.$Lang['ap_a3_comm_upd_adm_del'].'</td>'; $this->AppBody .= '</tr>'; for($f=0;$f<$Rows;$f++) {
Dla każdego wiersza będzie dostępna inna kolorystyka za pomocą klasy z arkusza stylów CSS .
Kod PHP: if($RowColor == 1) { $TdClass = 'fb_row_1'; $RowColor = 0; } else { $TdClass = 'fb_row_2'; $RowColor = 1; } $this->AppBody .= '<tr>';
Należy wybrać użytkownika , który wybrał dany wpis do zgłoszenia .
Kod PHP: $SqlConfig = 'SELECT user_id,user_lang,user_firstname,user_lastname,user_is_firm FROM '.$this->DBPrefix.'user WHERE user_id = "'.$this->AppDBSecure($Result[$f]['warn_user_id']).'"'; if(!$this->AppDBQuery($SqlConfig)) { $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig); } $ResultUser = $this->AppDBResult(); $this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['warn_id']).'</td>';
Wyświetlamy dane w zależności od tego , czy użytkownik jest firmą czy też osobą prywatną .
Kod PHP: if($ResultUser[0]['user_is_firm'] == 'y') { $UserField = '<a href="'.$this->AppUrl.'index.php?app=showprofile&option='.$ResultUser[0]['user_id'].'">'.$this->AppDBUnsecure($ResultUser[0]['user_lastname']).'</a>'; } else { $UserField = '<a href="'.$this->AppUrl.'index.php?app=showprofile&option='.$ResultUser[0]['user_id'].'">'.$this->AppDBUnsecure($ResultUser[0]['user_firstname']).' '.$this->AppDBUnsecure($ResultUser[0]['user_lastname']).'</a>'; } $this->AppBody .= '<td class="'.$TdClass.'">'.$UserField.'</td>'; $this->AppBody .= '<td class="'.$TdClass.'">'.$this->AppDBUnsecure($Result[$f]['warn_comment']).'</td>'; $this->AppBody .= '<td class="'.$TdClass.'">'.date('d-m-Y H:i:s', $this->AppDBUnsecure($Result[$f]['warn_time'])).'</td>'; $this->AppBody .= '<td class="'.$TdClass.'"><a href="'.$this->AppUrl.'admin.php?app=application_pictures&action=accept&warn_id='.$Result[$f]['warn_id'].'">'.$Lang['ap_a3_comm_upd'].'</a></td>'; $this->AppBody .= '<td class="'.$TdClass.'"><a href="'.$this->AppUrl.'admin.php?app=application_pictures&action=accept_delete&warn_id='.$Result[$f]['warn_id'].'&warn_content_id='.$Result[$f]['warn_content_id'].'">'.$Lang['ap_a3_comm_upd_adm_del'].'</a></td>'; $this->AppBody .= '</tr>'; $this->AppBody .= '<tr>'; $this->AppBody .= '<td class="'.$TdClass.'"></td>'; $this->AppBody .= '<td class="'.$TdClass.'" colspan="5">';
Należy jeszcze wybrać obraz , który został zgłoszony , a następnie wyświetlić w celu oceny zasadności zaraportowania .
Kod PHP: $SqlConfig = 'SELECT * FROM '.$this->DBPrefix.'album_pictures WHERE pic_id = "'.$this->AppDBSecure($Result[$f]['warn_content_id']).'"'; if(!$this->AppDBQuery($SqlConfig)) { $this->AppBody .= $this->AppShowError('Query error',__FILE__,__LINE__,$SqlConfig); } $ResultImage = $this->AppDBResult(); $AboutFile = getimagesize('upload/'.$this->AppDBUnsecure($ResultImage[0]['pic_user_id']).'/big_'.$this->AppDBUnsecure($ResultImage[0]['pic_file'])); $this->AppBody .= '<table cellpadding="0" cellspacing="1" border="0" width="100%">'; $this->AppBody .= '<tr><td style="text-align: center; width: 25%; border: solid 1px #2C92FA;">'; if($AboutFile[0] > 500) { $SetWidth = 500; } else { $SetWidth = $AboutFile[0]; } $this->AppBody .= '<a href="'.$this->AppUrl.'upload/'.$this->AppDBUnsecure($ResultImage[0]['pic_user_id']).'/big_'.$this->AppDBUnsecure($ResultImage[0]['pic_file']).'" rel="lightbox[]" /><img src="'.$this->AppUrl.'upload/'.$this->AppDBUnsecure($ResultImage[0]['pic_user_id']).'/big_'.$this->AppDBUnsecure($ResultImage[0]['pic_file']).'" width="'.$SetWidth.'" style="padding: 5px;" /></a><br />'; $this->AppBody .= $this->AppDBUnsecure($Result2[0]['pic_status']).'</td></tr>'; $this->AppBody .= '</table>'; $this->AppBody .= '<br /><br /></td>'; $this->AppBody .= '</tr>'; } $this->AppBody .= '</table>'; } else {
Jeżeli użytkownik nie posiada odpowiednich uprawnień , przekierowujemy go do strony głównej panelu , aby się zalogował .
Kod PHP: header('location: '.$this->AppUrl.'admin.php'); } } } ?>
|