Git Product home page Git Product logo

Comments (12)

zmilonas avatar zmilonas commented on August 16, 2024 3

@pmatlak1 spróbowałem dokładnie tak jak napisałeś i wygląda u mnie bardzo obiecująco.

Zrzut ekranu 2022-01-16 o 02 37 33

from btsearch.

shpyo avatar shpyo commented on August 16, 2024 2

A może openstreetmap.org zamiast google?

from btsearch.

adlorenz avatar adlorenz commented on August 16, 2024 2

Ping, coś się w tym temacie dzieje?

I tak i nie.

Nie, bo ten projekt efektywnie jest martwy i takim pozostanie, z uwagi na przestarzałe i nie wspierane zależności (stare wersje Django, Python itp.). Generalnie nie ma sensu pudrować trupa, tylko trzeba to napisać od nowa. Nawet jak niedawno wprowadzałem do mapki filtr nowego pasma 5G3500, to robiłem live hack bezpośrednio na serwerze produkcyjnym, bo bałem się robić deploy z gita. :)

Tak, bowiem niedawno zacząłem stopniową eksplorację Dockera (tak, wiem, brzmi "wtf?!", ale jestem boomerem - dosłownie - i nie znałem go wcześniej) oraz koncepcji napisania oraz zdockeryzowania prostej aplikacji btsearch-core, która w założeniu ma odpowiadać wyłącznie za zarządzanie danymi i eksponowanie ich przez API, co w kolejnym założeniu ma otworzyć drogę do pisania 3rd party aplikacji, które te dane by renderowały w dowolny sposób, np. na mapie OSM.

Jak będę miał cokolwiek, co będzie warte pokazania i puszczenia w świat - na pewno tutaj o tym napiszę.

from btsearch.

pmatlak1 avatar pmatlak1 commented on August 16, 2024 1

Niezupełnie, myślę że wcale nie trzeba zmieniać programu i może wystarczyć sama zmiana dostawcy mapy. Zrobiłem szybkie próbi z open street maps (darmowe) i całkiem dobrze wyszło. Nie będę commitował bo nie mam danych testowych i moja apka nie jest w pełni funkcjonalna przez co nie mogę tego kodu dobrze przetestować, ale podążając za tą instrukcją https://wiki.openstreetmap.org/wiki/Google_Maps_Example
można wykonać następujące kroki w pliku btsearch.map.js

  1. Zmienić mapTypeId na "OSM" - mapTypeId: "OSM",
  2. Pod linią 40 dodać coś takiego
    this.map.mapTypes.set("OSM", new google.maps.ImageMapType({ getTileUrl: function(coord, zoom) { var tilesPerGlobe = 1 << zoom; var x = coord.x % tilesPerGlobe; if (x < 0) { x = tilesPerGlobe+x; } return "https://tile.openstreetmap.org/" + zoom + "/" + x + "/" + coord.y + ".png"; }, tileSize: new google.maps.Size(256, 256), name: "OpenStreetMap", maxZoom: 18 }));
    I dostaniemy apkę z mapą zaciąganą z OSM. Czy ktoś kto ma działającą wersję APKI mógłby to lepiej przetestować? @adlorenz

from btsearch.

olekstomek avatar olekstomek commented on August 16, 2024

Komunikat
W serwisie beta.btsearch.pl nieregularnie wyświetla się komunikat o błędzie, a mapa jest zaciemniona z informacją "For development purposes only". Dlaczego?

Sytuacja wynika z wprowadzenia przez Google nowego, znacznie niższego niż dotychczas bezpłatnego limitu wykorzystania usługi Google Maps JavaScript API, z której mapa korzysta do wyświetlania danych o lokalizacjach stacji bazowych oraz pozwoleń UKE. Pomimo komunikatu o błędzie oraz zaciemnienia mapy, jej funkcjonalność pozostaje bez zmian.

Biorąc pod uwagę aktualną popularność serwisu, zapewnienie ciągłości funkcjonowania mapy bez zmiany jej providera wymaga poniesienia regularnego kosztu rzędu kilkuset złotych miesięcznie na rzecz Google. Zważywszy, że serwis BTSearch jest projektem typu non-profit, tworzonym w prywatnym czasie przez entuzjastów telekomunikacji i telefonii komórkowej, jest to kwota, której nie jesteśmy w stanie pokryć.

Co dalej?
W związku ze wspomnianym wyżej kontekstem "tworzenia BTSearch w prywatnym czasie", wdrożenie rozwiązania dla zaistniałej sytuacji niestety nie będzie szybkim procesem. :( Zastosowanie alternatywnego providera mapy wymaga relatywnie poważnych zmian w kodzie źródłowym serwisu. Ponadto, ze wstępnego researchu wynika, że większość sensownych providerów jest płatnych, więc prawdopodobnie niezbędne będzie dodatkowe finansowanie serwisu (reklamy na mapie, sponsoring itp.). W każdym razie aktualnie rozważamy kilka ścieżek prowadzących do przywrócenia poprawnego funkcjonowania mapy BTSearch.

UWAGA! Zapraszamy do współpracy chętnych web-developerów open-source. Kod źródłowy BTSearch jest dostępny w otwartym repozytorium na GitHub'ie. Więcej szczegółów w README: https://github.com/adlorenz/btsearch

Dawid Lorenz & Krzysztof Niemczyk

http://beta.btsearch.pl/komunikat/

from btsearch.

olekstomek avatar olekstomek commented on August 16, 2024

A może openstreetmap.org zamiast google?

Zapewne jest to rozwiązanie, ale największym problemem zakładam że jest:

Zastosowanie alternatywnego providera mapy wymaga relatywnie poważnych zmian w kodzie źródłowym serwisu.

jak w komunikacie który załączyłem.

Powiązane: #1

from btsearch.

shpyo avatar shpyo commented on August 16, 2024

Wiadomo, że zmiana providera (mapy) będzie się wiązała z większym refaktorem...

from btsearch.

rmikke avatar rmikke commented on August 16, 2024

@pmatlak1 spróbowałem dokładnie tak jak napisałeś i wygląda u mnie bardzo obiecująco.

Zrzut ekranu 2022-01-16 o 02 37 33

Wygląda pięknie, tylko jeszcze trzeba zamienić napis "Google" na atrybucję OpenStreetMap :)

from btsearch.

Behoston avatar Behoston commented on August 16, 2024

Ping, coś się w tym temacie dzieje?

from btsearch.

zmilonas avatar zmilonas commented on August 16, 2024

Tak jak pisałem też w #11 to ja chętnie pomogę jakoś, i w zarysie myślę, że rewrite jest dobrym kierunkiem.

Może jednak jako "hotfix" możemy spróbować z tym jednym commitem żeby dać mapkę OSM @adlorenz?
Mi to dobrze działało jak się w końcu udało wszystko odpalić na dockerze na chwilę ten jeden raz 2 lata temu :)

fa53ec9

diff --git a/src/static/js/btsearch.map.js b/src/static/js/btsearch.map.js
index 61e5fe8..dad60be 100644
--- a/src/static/js/btsearch.map.js
+++ b/src/static/js/btsearch.map.js
@@ -15,7 +15,7 @@ var core = {
         center: new google.maps.LatLng(52.069245, 19.480193),
         streetViewControl: false,
         scaleControl: true,
-        mapTypeId: google.maps.MapTypeId.ROADMAP,
+        mapTypeId: 'OSM',
         mapTypeControlOptions: {
             style: google.maps.MapTypeControlStyle.DROPDOWN_MENU,
             position: google.maps.ControlPosition.TOP_RIGHT
@@ -38,6 +38,7 @@ var core = {
 
     init: function(mapCanvas, initParams) {
         this.map = new google.maps.Map(mapCanvas, this.mapParams);
+	this.map.mapTypes.set("OSM", new google.maps.ImageMapType({ getTileUrl: function(coord, zoom) { var tilesPerGlobe = 1 << zoom; var x = coord.x % tilesPerGlobe; if (x < 0) { x = tilesPerGlobe+x; } return "https://tile.openstreetmap.org/" + zoom + "/" + x + "/" + coord.y + ".png"; }, tileSize: new google.maps.Size(256, 256), name: "OpenStreetMap", maxZoom: 18 }))
         this.geocoder = new google.maps.Geocoder();
         this.markers = [];
         this.initParams = initParams;
diff --git a/src/templates/site/layout.html b/src/templates/site/layout.html
index 590b9bc..90d8b26 100644
--- a/src/templates/site/layout.html
+++ b/src/templates/site/layout.html
@@ -37,7 +37,6 @@
         <ul class="nav navbar-nav">
           <li><a href="{% url 'home' %}">Mapa</a></li>
           <li><a href="{% url 'bts:listing' %}">Baza danych</a></li>
-          <li><a href="/komunikat/" id="news-ticker-trigger"><span class="text-danger">Dlaczego mapa nie wyświetla się poprawnie?</span></a></li>
         </ul>
 
         <ul class="nav navbar-nav navbar-right">

from btsearch.

Behoston avatar Behoston commented on August 16, 2024

Też się chętnie dołożę do projektu ale najwcześniej czas będę miał gdzieś w Q3. Może warto postawić po prostu drugą instancje obok, przenieść dane i jak się uda potwierdzić że działa z osm to przepiąć dnsy.

Przy okazja ssl by się przydał, można to ograć cloudflare, wtedy ruch od przeglądarki do nich leci po ssl, od nich do serwisu może lecieć bez i nic od strony serwera nie trzeba robić, a google i przeglądarki przychylniejszym okiem patrzą na strony z ssl ;)

from btsearch.

zmilonas avatar zmilonas commented on August 16, 2024

Ok to ja zmieniłem mój istniejący pr #12 tak żeby dodawał tylko tę zmianę która zasugerował @pmatlak1.
"U mnie działa" a przynajmniej działało, 2 lata temu jak to zrobiłem kiedy wreszcie udało mi się odpalić lokalnie projekt na krótką chwilę, potem znowu mi wyciągneli zależności spod nóg i już jest trudno odpalić to z Pythonem 2 i na ARM (Apple Silicon) :/

from btsearch.

Related Issues (9)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.