Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano (edytowane)

Cześć,

 

Jestem na etapie tworzenia swojej pierwszej aplikacji do IPS - w skrócie ujmując wyświetla ona dane z bazy w formie widgetu.

W jednej z kolejnych wersji na localhoscie postanowiłem dodać odświeżanie nowych danych za pomocą jquery.

 

Zrobiłem co następuje:

1. Utworzyłem plik applications\apka\dev\js\front\check.js

2. W funkcji render widgetu dopisane jest:

\IPS\Output::i()->jsFiles = array_merge( \IPS\Output::i()->jsFiles, \IPS\Output::i()->js( 'check.js', 'apka', 'front' ) );

3. Na localhoscie wszystko działa pięknie - js się zgłasza po jsona i ładnie sobie parsuje:

<script type='text/javascript' src='http://localhost/applications/apka/dev/js/front/check.js?v=c8d1df3613' data-ips></script>

4. Skompilowałem js w ACP, wygenerowałem nową wersję aplikacji - zadowolony zrobiłem update na innym forum i tutaj okazała się kupa. Instalacja przebiegła bez żadnych problemów, plik data/javascript.xml zawiera poprawnego jsa:

<file javascript_app="apka" javascript_location="front" javascript_path="" javascript_name="check.js" javascript_type="framework" javascript_version="10100" javascript_position="1000050">

Jednakże na owym forum po aktualizacji IPS nie ładuje tego js. Nie ma kompletnie po nim śladu w kodzie strony. Próbowałem reset cache, szukać swojego kodu i wygląda jakby tego pliku nigdzie nie utworzył i miał go w poważaniu.

Próba zrobienia var_dump na \IPS\Output::i()->jsFiles zaraz po dodaniu check.js do owego arraya też sprawia, że go tam nie ma.

 

Bardzo bym prosił o jakąś pomoc jak to ugryźć ponieważ stanąłem w miejscu.

 

//edit Wiem, zły dział. Zaraportowana prośba o przeniesienie. Biję się w pierś.

Edytowane przez lukasin
Opublikowano

Minęło już kilkanaście godzin od wykonania tego - raczej problemem nie jest cache widgetu ponieważ trochę zmieniła się też budowa tabeli i ona jest wyświetlana poprawnie.

Jednakże po moim pliku .js ani śladu po instalacji aplikacji. Wymuszenie wyczyszczenia cache niestety nie pomaga.

  • Manager
Opublikowano

Patrzę w Output.php i... powinno to działać, a jednak nie działa. Hm.

Czy eksportujesz apkę w jakiejś wersji, a potem dołożyłeś js i następną wersję? Co masz w applications/apka/data/javascript.xml?

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Zacząłem pracę nad następną wersją i nadałem jej nowy numer (z 1.0.0.0 na 1.1.0.0).

Co do javascript.xml - część tego już w pierwszym poście dałem, tutaj całość:

<?xml version="1.0" encoding="UTF-8"?>
<javascript app="apka">
 <file javascript_app="apka" javascript_location="check" javascript_path="" javascript_name="check.js" javascript_type="framework" javascript_version="10100" javascript_position="1000050"><![CDATA[        jQuery(document).ready(function($) {
            var iloscSekund = 10;
            var $table = $('#reports');

            setInterval(function() {
				var id = $table.find('tr').eq(1).attr('data-id');
                $.get("/index.php?app=apka&module=autocheck&controller=check&do=records&lastid="+id, function(data) {
					if(data[0]){
                    var html = '<td>'+data[1]+'</td><td>'+data[2]+'</td><td>'+data[3]+'</td><td>'+data[4]+'</td><td>'+data[5]+'</td>';
                    $table.find('tr:first').after('<tr data-id="'+data[0]+'">'+html+'</tr>');
                    $table.find('tr:last').remove();
					}
                });
            }, iloscSekund * 1000)
        });]]></file>
</javascript>

Póki co zrobiłem obejście problemu używając resources i działa jak natura chciała - choć nie ukrywam zastanawia mnie nadal dlaczego wcześniejsze rozwiązanie (teoretycznie zgodne z tym co piszą na stronie IPS) nie chce działać poza wersją dev.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.