Serwis ogłoszeniowy
https://harwester.pl
na sprzedaż.
Bazy danych wykorzystujące silnik MySQL
Oprogramowanie serwisu, server side: PHP, od strony klienta: (X)HTML/(D)HTML + CSS + JAVASCRIPT
Interfejs użytkownika oparty na rozwiązaniach AJAX (tzw: zapytania w tle)
Certyfikat bezpieczeństwa SSL ważny do 2016 roku.
Serwis jest bardzo intuicyjny i prosty w obsłudze zarówno od strony użytkownika jak i administratora. Posiada kampanię w Google adwords graficzną + 4 banery (reklama), jak i konto Google analitics (statystyki).
Raport Unikalnych odsłon (źródło Google analitics):
wrzesień 2013 - 4 600
październik 2013 - 4 009
listopad 2013 - 4 903
Łączna liczba odsłon stron w tej witrynie: 206 831 (stan na 02.12.13)
Unikalne odsłony: 127 633 (stan na 02.12.13)
Sprzedaż dotyczy:
-strony www
-loga
-grafiki
-domeny
-bazy danych
-banerów graficznych pod kampanię Google adwords:
*120 x 600 Pixeli
*200 x 200 Pixeli
*468 x 60 Pixeli
*728 x 90 Pixeli
Serwis jest elastyczny pod kątem dodawania, bądź rezygnowania z dotychczasowych funkcjonalności:
*kategorie
*rejestracja (konto prywatne / firma) lub brak rejestracji użytkowników
*czas ważności ogłoszeń zwyklych, jak i wyróżnionych
*kwoty pobierane za publikację ogłoszeń
*autoakceptacja ofert lub jej brak
*ustawienia automatycznej korespondencji
Specyfikacja:
Podstawowa funkcjonalność:
- System ogłoszeń z podziałem na kategorie i kategorie zagnieżdżone (podkategorie, pod-podkategorie itd.)
- Treści serwisu (strony informacyjne) zarządzane z poziomu panelu administracyjnego na podstawie prostego systemu CMS.
- Menu kategorii generowane w sposób dynamiczny.
- Użytkowik systemu może zarejestrować się jako firma lub osoba prywatna
- System dopuszcza publikowanie i przeglądanie ofert przez użytkowników niezarejestrowanych.
- Duże możliwości personalizacji ustawień z poziomu panelu administracyjnego.
- System oparty na rozwiązaniach darmowych – baza danych MySQL, interpreter PHP.
- System może być uruchomiony (hostowany) na serwerze LINUX lub WINDOWS.
- Wymagany PHP w wersji 5 lub nowszy.
- Baza danych MySQL w wersji 5 (zalecana).
- Możliwość dodawania do 3 zdjęć do publikowanych ofert.
- Zdjęcia do oferty mogą mieć rozmiar do 2.5MB każde (możliwe zwiększenie limitu).
- Wczytywanie zdjęć oparte na technologii AJAX.
- Prosty i czytelny interfejs użytkownika (zarówno strona główna jak również zaplecze – tzw. Panelu administracyjnego).
- Znak wodny na zdjęciach zamieszczanych przez użytkowników
- Zdjęcia przesyłane przez użytkowników na serwer są optymalizowane – pomniejszana jest rodzielczość, tworzona jest miniaturka „w locie”.
- Brak narzuconych ograniczeń dla ilości ogłoszeń w serwisie,
- Brak narzuconych ograniczeń dla ilości kategorii i podkategorii,
- Jedyne limity to ograniczenia narzucone przez bazę danych i limit QUOTA na serwerze hostującym (pliki uploadowane przez użytkowików).
- Nowoczesny modernistyczny design.
Funkcjonalność panelu administracyjnego:
- Konfiguracja parametrów globalnych dla nagłówka – tag TITLE, meta tagi: DESCRIPTION oraz KEYWORDS.
- Konfiguracja podstawowych parametrów systemu:
- koszt ogłoszenia
- koszt ogłoszenia PREMIUM (oferty wyróżnione)
- koszt ogłoszenia rocznego
- koszt ogłoszenia rocznego PREMIUM
- czas ważności ogłoszenia zwykłego (domyślnie jest to 30 dni – można ustawić dowolnie)
- saldo początkowe – kwota zasilenia konta dla nowych użytkowników – np. 30zł na start lub podobne akcje marketingowe.
- czy system wymaga aktywacji konta poprzez link wysyłany na email – włącz/wyłącz
- auto akceptacja ofert – włącz/wyłącz – funkcja umożliwia włączenie funkcji moderatora, publikowane są tylko oferty które zaakceptował administrator.
- automatyczne tworzenie linków – włącz/wyłącz – włącza funkcję która wykrywa hotlinki w treści wpisanej przez użytkownika w ogłoszeniu, następnie generuje automatycznie tagi A dla nich. Adresy WWW w treści stają się aktywne.
- ilość newsów na stronie głównej – określa liczbę linków do aktualności widocznych na stronie głównej serwisu
- ilość dni dla ofert w archiwum – określa jak długo ogłoszenia mają być trzymane w archiwum po tym jak wygasną
- pokaż email niezalogowanym – określa czy adres email ogłoszeniodawcy ma być widoczny dla osób niezalogowanych w serwisie
- pokaż telefon niezalogowanym – analogicznie jak wyżej
- pokaż WWW niezalogowanym – analogicznie jak wyżej
- pokaż licznik wyświetleń oferty – czy ma być widoczna ilość odsłon każdej z ofert,
- pokaż ilośc ofert w kategorii – określa czy ma być widoczny licznik ofert jakie znajdują się w danej kategorii (dotyczy menu kategorii)
- pokaż statystyki użytkownika – czy mają być widoczne statystyki użytkownika (ilość ofert w serwisie itd)
- pokaż kwoty dla ofert – czy mają być widoczne kwoty
- Konfiguracja parametrów związanych z powiadamianiem email
- możliwość ustawienia adresu email nadawcy, nazwy nadawcy dla wiadomości automatycznie wysyłanych przez system
- możliwość ustalenia na ile dni przed końcem ważności ogłoszenia ma zostać powiadomiony ogłoszeniodawca – aby mógł np. przedłużyć ofertę. Funkcję powiadamiania można całkiem wyłączyć.
- możliwość włączenia/wyłączenia powiadomień w przypadku zmiany treści ogłoszenia przez administratora, akceptacji ogłoszenia przez administratora, usunięcia ogłoszenia przez administratora.
- Ustawienia płatności
- Definiowanie odbiorcy, numeru rachunku itp.
- Edycja stron statycznych z poziomu panelu administracyjnego
- Prosty CMS (system zarządzania treścią) z wbudowanym edytorem wizualnym – praca podobna do edycji tekstu w programie Microsoft WORD lub innym pakiecie biurowym.
- Możliwość edycji wszystkich stron statycznych z poziomu panelu admin.
- Moduł do przeglądania i zarządzania ogłoszeniami aktywnymi, archiwalnymi lub czekającymi na publikację w kolejce:
- możliwość edycji treści,
- możliwość edycji/kasowania galerii zdjęć,
- możliwość edycji parametrów ogłoszenia (cena, region, wyróżnienie, ważność)
- możliwość usunięcia oferty,
- możliwość przesunięcia do kolejki ofert które są opublikowane,
- możliwość opublikowania ofert oczekujących lub archiwalnych,
- możliwość przedłużenia ofert/y
- Moduł do zarządzania użytkownikami
- Rozbudowany moduł do budowy drzewa kategorii – zapewnia dostęp do wszystkich niezbędnych funkcji związanych z budową i optymalizacją drzewa kategorii. Funkcja „Uporządkuj strukturę” służy do optymalizacji budowy i numeracji wewnętrzej rekordów opisujących kategorie w serwisie. Funkcji należy użyć przy znaczących zmianach w drzewie kategorii.
- Zakładka statystyki docelowo ma służyć jako moduł prezentujący wybrane parametry statystyczne związane z pracą systemu. Obecnie jest to tylko licznik odsłon.
Funkcjonalność oferty „szkice”
Dodając ofertę użytkownik określa w pierwszej kolejności kategorię, następnie wpisuje tytuł i treść oraz określa opcjonalne parametry typu cena, region, stan itd. W kolejnym kroku oferta jest zapisywana w systemie jako „szkic”. Jeśli na tym etapie użytkownik wyłączy komputer, zamknie przeglądarkę lub w inny sposób przerwie pracę – po powrocie do serwisu za dowolny okres czasu, zalogowaniu się i próbie dodania oferty, wczytana zostanie oferta „szkic” dokładnie w takiej postaci w jakiej ostatnio użytkownik ją widział. Dotyczy to zarówno treści, parametrów oferty jak również zdjęć. Dopiero akceptacja przyciskiem „Zakończ proces dodawania” zapisuje ogłoszenie na stałe – jeśli nie włączono funkcji kontroli przez moderatora – takie ogłoszenie zostaje opublikowane natychmiast.
Oferty „szkice” nie są widoczne dla innych użytkowników serwisu. Ofertę „szkic” może edytować i zapisać tylko autor. Oferty „szkice” nie są dostępne dla użytkowników niezarejestrowanych w pełnej funkcjonalności. Administrator może zobaczyć i zarządzać wszystkimi ofertami typu „szkic” – służy do tego moduł „SZKICE OGŁOSZEŃ” w panelu administracyjnym.
Funkcjonalność dla użytkownika:
Oferty mogą dodawać użytkownicy zarejestrowani lub jeśli administrator zezwolił – niezarejestrowani,
Dla ofert niezarejestrowanych użytkowników są ograniczenia – np. brak możliwości wyróżnień ofert oraz brak możliwości edycji i zarządzania wcześniej dodanymi ogłoszeniami.
Baner animowany – efekt przejścia (ang. FADE), lista banerów przechowywana w pliku HTML, animacja realizowana przez JavaScript
AJAX używany dla funkcji uploadu zdjęć, procesu logowania, wylogowywania, rejestracji użytkownika.
Wyszukiwarka ogłoszeń zoptymalizowana dokłądnie pod kątem pracy serwisu Harwester.pl – parametry wyszukiwania „wszyte” w kod wyszukiwarki
Wyszukiwanie po cenie, kategorii, typie ogłoszenia, zawartości galerii zdjęć,
Możliwość dodawania zdjęć do ogłoszeń – zarówno zarejestrowani jak i niezarejestrowani użytkownicy mogą dodać do 3 zdjęc do ogłoszenia,
Ogłoszenia są wyświetlane jako strona „dedykowana” – każde ogłoszenie posiada unikalny adres URL.
Zdjęcia / galeria – na stronie przeglądu ogłoszenia wyświetlane są w postaci podglądu AJAX – w oparciu o bibliotekę Graybox/Lightbox.
Bezpieczeństwo:
Cała transmisja między użytkownikiem a serwerem realizowana jest w oparciu o szyfrowany protokół HTTPS – SSL klucz o długości 256 bit – wszystkie dane (w tym dane osobowe) przesyłane są w formie zaszyfrowanej.
Możliwość pracy na dwóch odizolowanych i niezależnych bazach danych – bazie użytkowników (przechowuje dane zarejestrowanych w systemie użytkowników – służącą do autoryzacji i autentykacji) oraz bazy głównej przechowującej dane ogłoszeń, kategorii i treści zamieszczone w serwisie.
System nie przechowuje haseł użytkowników – autoryzacja oparta jest na metodzie haszowania haseł
Haszowanie hasła po stronie użytkownika realizowane jest za pomocą przeglądarki internetowej – kod JavaScript. Przeglądarka internetowa po stronie użytkownika systemu wysyła zapytanie logujące do systemu zawierające wyłączenie nazwę użytkownika oraz wynik funkcji haszującej hasło. Hasło w postaci jawnej nie jest przesyłane.
Funkcje zabezpieczające uploadowanie zdjęć do galerii w ogłoszeniu również oparte są na haszowaniu.
Każde zdjęcie przesłane do systemu ma postać unikalną – dodatkowo dla zarejestrowanych użytkowników, w nazwie pliku zawarty jest ID użytkownika dokonującego uploadu.
Funkcja typu CRON (zaplanowane zadania) wykonywana jest raz dziennie – domyślnie podczas odwiedzenia strony przez jakiegokolwiek użytkownika (lub maszynę). Zalecane jest utworzenie na serwerze hostującym zadania typu CRON – automatycznie, wg harmonogramu wykonujące skrypt „crone.php”
Kluczowe elementy kodu zostały zakodowane.
Precyzyjna konfiguracja bardziej zaawansowanych funkcji i parametrów możliwa za pomocą edycji plików konfiguracyjnych PHP.