Pomoc w rozwijaniu systemu dla 4programmers.net

0

System obslugiwany przez serwis 4programmers.net jest juz mocno przestarzaly. Oraz zawiera wiele niepoprawionych bugow. Wiekszych zmian w serwisie nie bylo od 2 lat. Ja sam podejmowalem sie napisania nowej wersji juz 2 razy. Po raz pierwszy w zeszlym roku. Ostatnio kilka miesiecy temu. Niestety jest to spory projekt, ktory wymaga wiele czasu, a ja sam musze dodatkowo pracowac. Dlatego zamierzam udostepnic nowe kody na serwerze SVN i kontynuowac jego rozwijanie lecz w polaczeniu z osobami, ktore w wolnych chwilach sa w stanie pomc w rozwoju projektu :)

Gotowy jest framework do projektu oraz struktura baz danych, czesc szablonow. Zamierzam jednak nieco zmienic liste TODO i rozbudowac specyfikacje projektu o:

  • budowe modulowa
  • pluginy podlaczane od modulow

TODO do nowej wersji (w wielkim skrocie) jest tutaj: http://4programmers.net/Forum/viewtopic.php?id=118428

Wkrotce na serwerze dzialac bedzie w pelni SVN oraz trac, aby ulatwic prace w grupie. Pozostaje ustalic pewne procedury, zasady pracy w grupie, tak, aby ulatwic sobie prace. Wkrotce wiecej informacji :) pozostaje miec nadzieje, ze znajda sie pasjonaci, ktorzy beda chcieli uczestniczyc w projekcie, tak, aby ten powstal nieco szybciej, aby serwis 4programmers.net byl jeszcze lepszy :)

0

Adamie, z miłą chęcią pomogę przy rozwijaniu 4p. Aczkolwiek muszę zaznaczyć, że moje PHP nie jest perfect, nie mniej jednak nowy framework nie stanowi dla mnie większego problemu. Tak więc jeżeli coś to daj znać. 4P to naprawdę dobry kawałek strony i warto wspierać takie inicjatywy.

0

Dzieki za odzew, wlasnie trwaja proby instalowania traca :) Znaczy ten juz jest, ale zeby zintegrowac z logowaniem z 4programmers :)

Jak juz cos bedzie wiadomo, to na pewno sie odezwe :)

0

Również z chęcia pomoge, jednakże nie mam na tyle czasu wolnego aby siedzieć dużo, ale 8-10h tygodniowo z chęcią poświęce.

0

I jak stoimy? Bo widzę, że nic się nie dzieje. Ani tu na forum, ani na CVS.

0

Czekamy na SVN. Ale zastanawiamy sie rowniez nad zalozeniem projektu na assembla.com. Tam jest trac/SVN i pare innych ciekawych narzedzi.

A tymczasem pisze sobie dokumentacje, struktura table jest niemal gotowa, napisalem rowniez instalator projektu, ale poki co to wszystko jest na moim dysku.

Zastanawiam sie nad podzialem prac, werbowaniem ludzi i organizacja projektu. Na dzien dzisiejszy bardzo przydalby sie koder XHTML/CSS ze zmyslem "artystycznym", do projektowania ukladu podstron. Bo np. strona glowna jest gotowa, ale jedynie header + footer. Nie mam za bardzo pomyslu nad organizacja strony glownej, rozmieszczeniem elementow itp itd.

0

Hmm, XHTML/CSS, nie ma problemu, ale z racji, iż nie jestem artystą, było by to zbyt dużym wyzwaniem. Oczywiście jak coś wymyślę, to napiszę, nie mniej jednak w tej kwestii nie liczyłbym na swoje artystyczne umiejętności.

co do assembla.com, myślę, że było by to dobrym rozwiązaniem. ew. można by sie zainteresować jakimś gotowym OS systemem tego typu.

0

Sa problemy z instalacja traca, aktualnej wersji pythona i konfliktem pakietow. Stad prawdopodobnie gotowy OS odpada... no zobaczymy co sie wymysli.

0

hmm, to widzę, że nie zbyt ciekawie. Jeżeli to nie tajemnica to jaka dystrybucja to jest? Ostatnio zasiadłem na gentoo i powiem szczerze w porównaniu do innych jest po prostu idealny. Rzadko kiedy jest jakiś błąd podczas kompilacji pakietów.

0

svn ro:

Ze względu na inny format haseł niezbędne jest ponowne ich ustawienie dla SVN

0

Poki co strona glowna serwisu wyglada tak: http://img367.imageshack.us/img367/2963/4p10devce7.jpg

Na razie nie mam pomyslu, co powinno znalezc sie na glownej stronie.
Co do SVN: wstawie kody, jak tylko bedzie takas podstawowa dzialajaca struktura.

Qyon: a z tracem nie da sie ruszyc? Wiem, ze dziala, ale chyba nie ta wersja, ktora ma dzialac, tak? Czy juz mozna korzystac normalnie?

0

Hmm, może coś w ten design? http://www.programmersheaven.com/
Wydaje mi się, że jest to jeden z lepszych portali dla programistów.

0

Ja tylko chciałbym dodać, by wszystkie AJAXy i inne JS były dodatkiem - by wchodząc z przeglądarek na urządzeniach mobilnych również dało się w pełni korzystać z serwisu.

0
Qyon napisał(a)

svn ro:

Ze względu na inny format haseł niezbędne jest ponowne ich ustawienie dla SVN

Error * Expected version '3' of repository; found version '5'

Przy probie checkoutu.
// już działa - Q musze poprawic dostęp via www jeszcze
IMO i tak mozna wyrzucic to co jest na SVN i wysle od nowa. I tak nowa wersja ma calkowicie zmieniona strukture katalogow - nie potrzeba starej wersji na SVN (imo).

0

To może przenieść starą wersję jako branch - dla potomnych? I trunk zostawić czysty dla Coyote Forever?

0

@Marooned: dobry pomysl :)
@Qyon: a gdzie mozna ustawic hasla dla SVN? Bo nie widze na serwerze, a nie chcialbym czegos popsuc :)

BTW: daloby sie jakos doinstalowac do PHP modul XSL?

0

Hmm, a ja mam skromne pytanie. Gdzie na svn jest obecny framework, o ile jest?

0

No wlasnie jeszcze nie umiescilem. Male problemy z SVN i tracem. Ale Qyon obiecal sie dzisiaj temu przyjrzec.

@Qyon: gdzie na serwerze moge sobie ustalic haslo do SVN? Bo nie znalazlem. A nie chce czegos popsuc.

0

obadaj /var/svn/coyote/conf

0
Dominium napisał(a)

Hmm, a ja mam skromne pytanie. Gdzie na svn jest obecny framework, o ile jest?

Poki co, wstawilem same pliki frameworka:

http://4programmers.net/trac/coyote/browser/trunk/framework

Wieczorem wstawie aktualne kody dla 4programmers.net.

http://boduch.net/coyote/

0

Ok, bez pośpiechu.

Generalnie jak znajdę trochę czasu to postaram się podesłać ten skrypt dla bazy sql.

0

//Edit: sprawa nieaktualna... zły zrzut bazy był.. :P

//Edit2:
Po zainstalowaniu 4programmers + framework, widać rozbieżności względem http://dev.4programmers.net/. Łatwo da się je ominąć nie mniej jednak dość bardzo zdziwił mnie problem z /lib/displaymenu.class.php. (plik nie istnieje). poza tym... Niby nic, ale okazało się, że podczas dodawania na pusto nowych triggerów zostały stworzone duplikaty. Wiem Adamie, że nie chciałeś aby podawać błędy, więc potraktujmy to jako pomysł. Panel administracyjny mógłby sprawdzać czy nie występuje już dany trigger (chodzi o nazwę).

0

Dominium: nie chcialem, aby zglaszac, bo buglista na trac nie funkcjonuje jeszcze tak jak bysmy chcieli :)

Powiedz mi, jakie to rozbieznosci? Z tym displaymenu, to nie powinno tego pliku szukac. powiedz mi, w ktorym momencie to sie stalo? W momencie instalacji modulu menu? Czy sam dodawales triggera i cos zle wpisales?

0

przekopiowałem wszystkie triggery, menu, ustawienia, etc.. z dev.4p.net. Po wyjściu z panelu pokazał się taki komunikat, że nie ma tego pliku. Szukałem przyczyny i okazało się, ze mam duplikaty wszystkich triggerów.

dokładnie takie same, z tą sama nazwą. Po usunięciu wszystkich i dodaniu od nowa, przestał się wyświetlać błąd.

co do różnic.

adm/Module/Submit/5 <-- u mnie | adm/Module/Submit/2 <-- na dev.4p.net
u mnie wyświetla Catchable fatal error: (...) na białej stronie, na dev.4p.net jest to w jakiś sposób zintegrowane z layoutem.

Po za takimi drobiazgami, wszystko jest ok. Skrypt zainstalował sie bardzo dobrze (przy instalacji jeden błąd informujący o braku możliwości zapisu w /config po mimo 777). Plik bazy natomiast zmuszony byłem przerobić (błąd powodowało "DEFINER=root@localhost", którego działania nie za bardzo rozumiem).

0
Dominium napisał(a)

przekopiowałem wszystkie triggery, menu, ustawienia, etc.. z dev.4p.net. Po wyjściu z panelu pokazał się taki komunikat, że nie ma tego pliku. Szukałem przyczyny i okazało się, ze mam duplikaty wszystkich triggerów.

Hmm, gdzies literowke popelniles pewnie, bo nazwa klasy odpowiedzialnej za menu, to Menu, a metoda display(). Pewnie wpisales menudisplay w nazwie klasy i system nie mogl znalezc odpowiedniego pliku. Instalator powinien utworzyc te podstawowe triggery, w pliku 4programmers.sql sa odpowiednie do tego zapytania.

adm/Module/Submit/5 <-- u mnie | adm/Module/Submit/2 <-- na dev.4p.net
u mnie wyświetla Catchable fatal error: (...) na białej stronie, na dev.4p.net jest to w jakiś sposób zintegrowane z layoutem.

To nieistotne - roznica w ID z bazy danych. Nie ma znaczenia. A co do tego bledu - w ktorym momencie sie pojawia, jaki plik, linia?

Po za takimi drobiazgami, wszystko jest ok. Skrypt zainstalował sie bardzo dobrze (przy instalacji jeden błąd informujący o braku możliwości zapisu w /config po mimo 777). Plik bazy natomiast zmuszony byłem przerobić (błąd powodowało "DEFINER=root@localhost", którego działania nie za bardzo rozumiem).

No wlasnie - mi tez wyswietlilo, ze brak mozliwosci zapisu. Ale chyba juz odnalazlem przyczyne tego bledu.

Co do DEFINER to instrukcja uzywana przy tworzeniu TRIGGERA. Z konsoli mySQL nie dalo sie importowac pliku SQL?

mysql -u -p baza_danych < /4programmers.sql

Ja zrzucam mysqldump'em, totez mysql powinien sobie poradzic z importem tabel :) Ale nie wiem czmu przy zrzucie mysqldump dodal te instrukcje DEFINER.

0

Literówki nie było, w tym sęk. Dokładnie kopiowałem (ctrl+c, ctrl+v). Ale działa, więc chyba mało istotne.

Co do błędu:
Catchable fatal error: Argument 1 passed to XSLTProcessor::transformToXml() must be an instance of DOMDocument, instance of SimpleXMLElement given, called in /public_html/lib/module.class.php on line 50 and defined in /public_html/lib/module.class.php on line 43

mysql -u -p baza_danych < /4programmers.sql
Niestety masę błędów wyrzuciło, dlatego ręcznie musiałem dodawać, teraz mam już zrzut z pma i działa. Niestety mój skrypt nie był tego pliku w stanie wrzucić do bazy, więc albo coś wymyślę, albo trzeba będzie w inny sposób zrobić zrzut. Bo ten co jest nie jest dobrze interpretowany przez pma w związku z DEFINER.

adm/Module/Submit/5 <-- u mnie | adm/Module/Submit/2 <-- na dev.4p.net
u mnie wyświetla Catchable fatal error: (...) na białej stronie, na dev.4p.net jest to w jakiś sposób zintegrowane z layoutem.

To nieistotne - roznica w ID z bazy danych. Nie ma znaczenia. A co do tego bledu - w ktorym momencie sie pojawia, jaki plik, linia?

Nie chodziło mi o różnicę w ID, ale o błąd, bo to te same moduły. na dev.4p.net jest "Brak biblioteki XSL! ".
Acha, dodam tylko, że mój serwer obsługuje XSL

XSL 	enabled
libxslt Version 	1.1.23
libxslt compiled against libxml Version 	2.6.32
EXSLT 	enabled
libexslt Version 	1.1.23 

//Edit
Powyższy błąd to brak pliku xsl w katalogu modułów, przynajmniej tak mi się wydaje. Niestety nie znam budowy tego typu plików. Nie mniej jednak mam wrażenie, że nie zostało to jeszcze utworzone, dlatego się nie czepiam. Przecież to dopiero początek.

//Edit2
co do błędu instalacji to znalazłem rozwiązanie.
Ta linię:

foreach (array('store/', 'store/_a', 'store/_p', 'cache/', 'log/', '/config') as $dir)

trzeba zamienić na tą:

foreach (array('store/', 'store/_a', 'store/_p', 'cache/', 'log/', 'config/') as $dir)

plik install.php linia78.

0
Dominium napisał(a)

Catchable fatal error: Argument 1 passed to XSLTProcessor::transformToXml() must be an instance of DOMDocument, instance of SimpleXMLElement given, called in /public_html/lib/module.class.php on line 50 and defined in /public_html/lib/module.class.php on line 43

Hmm, a jakiej wersji PHP uzywasz? Bo mi dzialalo. W kazdym razie na SVN juz lezy poprawka. Powinno dzialac.

mysql -u -p baza_danych < /4programmers.sql
Niestety masę błędów wyrzuciło, dlatego ręcznie musiałem dodawać, teraz mam już zrzut z pma i działa. Niestety mój skrypt nie był tego pliku w stanie wrzucić do bazy, więc albo coś wymyślę, albo trzeba będzie w inny sposób zrobić zrzut. Bo ten co jest nie jest dobrze interpretowany przez pma w związku z DEFINER.

Kurcze, postaram sie jakos inaczej dumpa zrobic i zobaczymy. I tez - jakiej wersji bazy danych uzywasz, ze bledy wyrzucilo? Masz pelne prawa na koncie mysql?

Powyższy błąd to brak pliku xsl w katalogu modułów, przynajmniej tak mi się wydaje. Niestety nie znam budowy tego typu plików. Nie mniej jednak mam wrażenie, że nie zostało to jeszcze utworzone, dlatego się nie czepiam. Przecież to dopiero początek.

Brak biblioteki XSL w PHP niestety, poki co.

co do błędu instalacji to znalazłem rozwiązanie. Ta linię:

Tak jest. Na SVN lezy poprawka:

http://4programmers.net/trac/coyote/changeset?new=2168%40trunk%2F4programmers%2Fmodule%2Finstall%2Fcontroller%2Finstall.php&old=2165%40trunk%2F4programmers%2Fmodule%2Finstall%2Fcontroller%2Finstall.php

Index: trunk/4programmers/module/install/controller/install.php

--- trunk/4programmers/module/install/controller/install.php (revision 2165)
+++ trunk/4programmers/module/install/controller/install.php (revision 2168)
@@ -76,5 +76,5 @@
);

  •   foreach (array('store/', 'store/_a', 'store/_p', 'cache/', 'log/', '/config') as $dir)
    
  •   foreach (array('store/', 'store/_a', 'store/_p', 'cache/', 'log/', 'config/') as $dir)
      {
      	$result = true;
    
0

Więc tak PHP to 5.2.6,
Mysql 5.1.29-rc-log - nie posiadam praw root, ale o ile mi wiadomo do tworzenia triggerów w tej wersji jest to zbędne. Ponadto jak już sobie przerobiłem plik sql to działa, wiec nie stanowi problemu.

Za chwilę będę testował skrypt do bazy, jak zadziała to podeślę.

//Edit:

Nie wiem czy mi sie udało, ale wysłałem plik na svn.
W pliku mysqlimport.php jest cały silnik importowy. Wybaczcie za niechlujny kod, chciałem aby działało, a itak wiem, że Adam to przerobi.
W drugim mysqlimport.sql znajduje się zrzut bazy, dla której to działa.
Jeżeli będzie jakiś problem to będę kombinował dalej.

W razie gdyby jednak mi sie nie udało wrzucić na svn, podaje link. http://weblog.cityblend.pl/4programmers.tgz

0

Nie wyslales. Nie masz konta na SVN. Ale Ci zaloze i podesle haslo.
Tutaj masz SVN via http://4programmers.net/trac/coyote/browser/trunk://4programmers.net/trac/coyote/browser/trunk

Dzieki za kod - sciagne i sprawdze.

1 użytkowników online, w tym zalogowanych: 0, gości: 1