Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 

2 Stron V  < 1 2  
Reply to this topicStart new topic
> [framework] Mohebo Framework
SHiP
post 13.09.2008, 12:58:40
Post #21





Grupa: Zarejestrowani
Postów: 657
Pomógł: 38
Dołączył: 19.12.2003
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


Cytat(Exek @ 13.09.2008, 10:56:47 ) *
Odnośnie http://framework.mohebo.pl/docs-8, zrób tak żeby w jedym pliku można było trzymać kilka tłumaczeń, bo tworzenie 4 plików w których tworzysz tyle samo <message> z takim samym <orginal>jest dobijające. Nie mówiąc jak później chce się dodać 10 nowych zdań do 4 różnych języków.


Aktualną składnię wybrałem ze względu na prędkość.
Powiązania między kilkoma plikami tłumaczeń będzie załatwiał graficzny edytor winksmiley.jpg. Temat: Edytor_tlumaczen


--------------------
Pozdrawiam Michał Środek

Warsztat: openSUSE, PHP, NetBeans, GIMP
Mój Blog

http://mohebo.com - Mój framework(download tutaj - http://srodek.info/files/ )
Go to the top of the page
+Quote Post
Exek
post 13.09.2008, 16:06:42
Post #22





Grupa: Zarejestrowani
Postów: 120
Pomógł: 10
Dołączył: 16.08.2007

Ostrzeżenie: (0%)
-----


Prędkość czego? Bo pewnie jakieś keszowanie zrobiłeś do tych xmli? A o edytorze zaraz się wypowiem w odpowiednim topicu.
Go to the top of the page
+Quote Post
SHiP
post 16.07.2010, 18:03:20
Post #23





Grupa: Zarejestrowani
Postów: 657
Pomógł: 38
Dołączył: 19.12.2003
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


W temacie dotyczącym Spawnm Frameworka Spawnm napisał:
Cytat("Spawnm")
@SHiP -> masz lepszy? Pokaż.

Zajęło mi to kilka dni ale przygotowałem paczkę winksmiley.jpg.

Mohebo Framework 0.2

Huh, minęły prawie 2 lata. Sporo programowałem w tym czasie, często w oparciu o mój własny framework. Ten czas spowodował, że kilka rzeczy usprawniłem tak aby pracowało mi się szybciej i wygodniej. Pełnej listy zmian nie jestem w stanie podać ponieważ nie robiłem jej na bieżąco i nie wiem dokładnie co się zmieniło ;]. SVN zaktualizuję jutro, wtedy dowiem się więcej.


Krótki Changelog
Cytat
- zmiana licencji z LGPL na MIT
- parametry w routerze tj. /lang:pl/
- automatyczne logowanie widokow oraz modeli
- zmiana nazwy klasy z MoheboApplication na MoheboController
- wiele plikow routera(dla kazdej domeny inny)
- kilka nowych filtrów
- tworzenie nowych walidatorów jest również dostępne po przez stworzenie odpowiedniej klasy i umieszczenie jej w /system/core/validators/ (znajduje się tam już plik file.php). Aby walidator zadziałał wystarczy w wymaganiach określić typ na "file" (tj. nazwę pliku walidatora).


Framework można pobrać z mojego katalogu z projektami:
http://srodek.info/files/MoheboFramework-0.2.tar.gz

Dokumentacja jest dostępna pod adresem http://mohebo.com oraz wewnątrz paczki

Nowością jest katalog generator/ - jest w nim crud.php(nad tym to ja się dłuugo męczyłem) - plik generujący moduły administracyjne na podstawie plików konfiguracyjnych ( domyślnie 3 dostępne - in_news.php, in_galleries.php oraz in_photos.php) W środku katalogu TODO tłumaczące kilka rzeczy
Jestem leniwy i pisanie tych plików konfiguracyjnych ręcznie mnie nudzi więc tworzę powoli edytor graficzny - generator/configCreator.php Niestety nie działa on do końca poprawnie więc nie zalecam jego stosowania. Wrzuciłem jako ciekawostka winksmiley.jpg

Czekam na wasze komentarze i opinie.

Co w najbliższej przyszłości? Zmiana architektury na prawidłowe MVC - tj. przerzucenie pobierania danych z kontrolera na widoki(starą konwencję również pozostawię) tak aby one same potrafiły dobrać się do odpowiedniego modelu. Możliwość tworzenia własnych filtrów oraz kilka innych usprawnień(to jeszcze zależy co mi zaproponujecie).

Dlaczego warto używać?
- lekki
- prosty
- chętnie pomogę na forum w przypadku wszelkich problemów oraz napiszę(o ile będą sensowne) dodatkowe moduły o jakie mnie poprosicie tak aby rozwijać ten framework w odpowiednim kierunku.

Pozdrawiam winksmiley.jpg.

PS: piszę tutaj ponieważ jeden projekt = jeden temat. Jeżeli moderatorzy sądzą, że 2 lata to za długo to proszę wydzielić posty do oddzielnego tematu.


--------------------
Pozdrawiam Michał Środek

Warsztat: openSUSE, PHP, NetBeans, GIMP
Mój Blog

http://mohebo.com - Mój framework(download tutaj - http://srodek.info/files/ )
Go to the top of the page
+Quote Post
Spawnm
post 16.07.2010, 18:32:17
Post #24





Grupa: Moderatorzy
Postów: 2 965
Pomógł: 360
Dołączył: 11.05.2007
Skąd: Radom




Z klas które mnie zainteresowały będzie chyba translator , przyjrzę się jemu potem z bliska snitch.gif

Ale sieczka z wcięciami , kodem w komentarzach i brakiem komentarzy przy wielu metodach xp
Nazwy plików też ciekawe imageCreator.php , rainbow.class.php , rainbow_compiler.class.php ...

Kwiatki:
  1. class MoheboApplication extends MoheboController{}
  2. /...
  3. class MoheboView
  4. {
  5. protected $core = null;
  6. }


Spodziewałem się więcej po klasie mysqli ...
A pisałeś że masz lepszy winksmiley.jpg


--------------------
Open-Source PHP5 framework:
SpawnFramework.com
Go to the top of the page
+Quote Post
SHiP
post 16.07.2010, 18:40:09
Post #25





Grupa: Zarejestrowani
Postów: 657
Pomógł: 38
Dołączył: 19.12.2003
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


Cytat
Ale sieczka z wcięciami

tzn?

Cytat
kodem w komentarzach i brakiem komentarzy przy wielu metodach xp

Sporo tego jest powoli wszystko aktualizuję. Szczególnie wstawki phpdoc

Cytat
Nazwy plików też ciekawe imageCreator.php , rainbow.class.php , rainbow_compiler.class.php

To jest katalog z bibliotekami gdzie nie obowiązuje żadna konwencja co do nazwenictwa

Co do kwiatków w kodzie:
kwiatek 1: jest to spowodowane zmianą nazwy klasy z MoheboApplication na MoheboController. Zostawiłem do kompatybilności
kwiatek 2: Ok, brakuje słowa kluczowego abstract. Ta klasa jest bardziej pisana "na przyszłość"


mysqli wygląda jak wygląda ponieważ wbudowany w php moduł MySQLi jest całkiem dobry. Myślę jedynie nad dodaniem sterownika PDO lub własnego ORM-a



--------------------
Pozdrawiam Michał Środek

Warsztat: openSUSE, PHP, NetBeans, GIMP
Mój Blog

http://mohebo.com - Mój framework(download tutaj - http://srodek.info/files/ )
Go to the top of the page
+Quote Post
Spawnm
post 16.07.2010, 18:48:35
Post #26





Grupa: Moderatorzy
Postów: 2 965
Pomógł: 360
Dołączył: 11.05.2007
Skąd: Radom




Cytat
'Ale sieczka z wcięciami'
tzn?

Zobacz sobie np. taki lib/mail.php

dalej:
  1. /**
  2.   * Zwraca wartość opcji o określonej nazwie
  3.   * @param string $name
  4.   * @return string
  5.   */
  6. public function getOption($name)
  7. {
  8. if(isset($this -> options[$name]))
  9. return $this -> options[$name];
  10. else return null;
  11. }
  12.  
  13. /**
  14.   * Ustala wartość opcji o określonej nazwie
  15.   * @param string $name
  16.   * @param mixed $value
  17.   */
  18. public function setOption($name, $value)
  19. {
  20. $this -> options[$name] = $value;
  21. }

nie wiem jak to tutaj wyświetli ale wcięcia to jak polecą tak będą z tego co widzę...

Dalej idąc - po co html ładowałeś do pagera ?


--------------------
Open-Source PHP5 framework:
SpawnFramework.com
Go to the top of the page
+Quote Post
SHiP
post 16.07.2010, 18:56:12
Post #27





Grupa: Zarejestrowani
Postów: 657
Pomógł: 38
Dołączył: 19.12.2003
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


Ok dzięki. Reczywiście w email.php połowa wcięć jest robiona spacjami połowa tabulacją(przy ustawieniu tabulator = 4 spacje wygląda to normalnie). W pliku router.php komentarze dopisywałem później jak widzę z włączoną konwersją tabulatora na spacje. Zmienię to i sprawdzę czy inne pliki nie maj podobnych. Unormuję też kwestię pozostawiania lub nie nawiasów przy instrukcjach warunkowych bo jak widzę w starych plikach różnie to bywa.

2. A jak to inaczej rozwiązać? Pager powinien zwracać tablicę z elementami a nie kod html?

EDIT: poprawiłem te wcięcia, wyrzuciłem zakomentowane metody i zrobiłem reupload paczki

Ten post edytował SHiP 16.07.2010, 19:09:09


--------------------
Pozdrawiam Michał Środek

Warsztat: openSUSE, PHP, NetBeans, GIMP
Mój Blog

http://mohebo.com - Mój framework(download tutaj - http://srodek.info/files/ )
Go to the top of the page
+Quote Post
Spawnm
post 16.07.2010, 19:06:09
Post #28





Grupa: Moderatorzy
Postów: 2 965
Pomógł: 360
Dołączył: 11.05.2007
Skąd: Radom




Zobacz jak to rozwiązałem ja smile.gif
pager jako model robi obliczenia ile jest stron na jakiej jesteśmy itd. wynik przekazuje do widoku przez np. render po czym zwraca html z widoku. (do głównego pliku/kontenera widoku)
Czyli oddzielamy widok od modelu , u ciebie to jedność w pagerze.

  1. public function rotate($angle)
  2. {
  3.  
  4. }

Dalej
  1. resize_photo($img,$max_width,$max_height, $saveTransparency)

Czemu tutaj już nie dałeś $this -> readyImage ?

//edit
widzę że mieszasz w nazwach metod, raz dajesz z garbem getOption a raz z '_' resize_photo
Powód edycji: [Spawnm]: [Spawnm]:


--------------------
Open-Source PHP5 framework:
SpawnFramework.com
Go to the top of the page
+Quote Post
Neo
post 17.07.2010, 11:03:59
Post #29





Grupa: Zarejestrowani
Postów: 46
Pomógł: 9
Dołączył: 8.08.2009
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Chroń wszystkie plik przed bezpośrednim dostępem via WWW
/theme/framework/footer.php
/theme/framework/header.php
/theme/framework/index.php
(te pliki sypią błędami)

Utwórz pusty plik index / .htaccess bo możliwe jest listowanie katalogu
/application/cache/view/xhtml/

Nie privigles tylko privilege / privileges
Go to the top of the page
+Quote Post
SHiP
post 17.07.2010, 11:08:22
Post #30





Grupa: Zarejestrowani
Postów: 657
Pomógł: 38
Dołączył: 19.12.2003
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


Cytat(Neo @ 17.07.2010, 11:03:59 ) *
Chroń wszystkie plik przed bezpośrednim dostępem via WWW
/theme/framework/footer.php
/theme/framework/header.php
/theme/framework/index.php
(te pliki sypią błędami)

Utwórz pusty plik index / .htaccess bo możliwe jest listowanie katalogu
/application/cache/view/xhtml/

Stworzę stosowny plik htaccess

Cytat(Neo @ 17.07.2010, 11:03:59 ) *
Nie privigles tylko privilege / privileges


Ups. Straszna literówka. No nic pozmieniam wszystko i wrzucę paczkę za kilka minut...
EDIT: literówka poprawiona, uprawnieniami do katalogów zajmę się później...

Ten post edytował SHiP 17.07.2010, 11:15:17


--------------------
Pozdrawiam Michał Środek

Warsztat: openSUSE, PHP, NetBeans, GIMP
Mój Blog

http://mohebo.com - Mój framework(download tutaj - http://srodek.info/files/ )
Go to the top of the page
+Quote Post
Cysiaczek
post 17.07.2010, 11:08:43
Post #31


Szef Moderatorów


Grupa: Administratorzy
Postów: 4 240
Pomógł: 127
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Nie zagłębiałem się rozwiązania, kiedyś jakiś kwiatek w FW Spawna znalazłem, ale nie chciało mi się pisać.
Teraz jednak zapytam.

  1. class MoheboApplication extends MoheboController{}
  2. class mysqliModel extends MoheboApplication {}

Czyli co w końcu? biggrin.gif


--------------------
When my fist clenches, crack it open
Before I use it and lose my cool
When I smile, tell me some bad news
Before I laugh and act like a fool
Go to the top of the page
+Quote Post
SHiP
post 17.07.2010, 12:40:40
Post #32





Grupa: Zarejestrowani
Postów: 657
Pomógł: 38
Dołączył: 19.12.2003
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


@Cysiaczek: trafna uwaga. Po prostu model i controller współdzielą sporo rzeczy. Zmieniłem Appliacation na Controller, a nie sprawdziłem zależności ;]. Widzę, że będę musiał zrobić MoheboXX(nad nazwą pomyślę), a z niego bedzie dziedziczyc MoheboController oraz MoheboModel. MoheboApplication wywalę w ogóle.

Dzieki jeszcze raz za komentarze i wyłapywanie głupot winksmiley.jpg.


--------------------
Pozdrawiam Michał Środek

Warsztat: openSUSE, PHP, NetBeans, GIMP
Mój Blog

http://mohebo.com - Mój framework(download tutaj - http://srodek.info/files/ )
Go to the top of the page
+Quote Post
-=Peter=-
post 17.07.2010, 15:01:04
Post #33





Grupa: Zarejestrowani
Postów: 253
Pomógł: 42
Dołączył: 4.02.2005
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Cytat
Widzę, że będę musiał zrobić MoheboXX(nad nazwą pomyślę), a z niego bedzie dziedziczyc MoheboController oraz MoheboModel. MoheboApplication wywalę w ogóle.

A nie lepiej utworzyć klasę "MoheboXX", której obiekt będziesz przekazywał do obiektów MoheboController oraz MoheboModel? Co wspólnego ma model i kontroler? To nie jest ta sama gałąź dziedziczenia, mają całkowicie inną budowę, inne zadania, jest to inna warstwa aplikacji. Poza tym w niektórych sytuacjach dziedziczenie lepiej zastąpić kompozycją, tak jak np. w tym przypadku. Nadużywanie dziedziczenia nie jest dobrym nawykiem (tak w ogóle to nie ma dobrych nawyków, ale to temat na inną dyskusję winksmiley.jpg).

Jestem przyzwyczajony do tego, że jedna klasa lub nawet interfejs z jedną jedyną metodą jest w osobnym pliku, no chyba że jest to klasa, która jest wykorzystywana tylko przez główną klasę w pliku i żadna inna klasa nie wie o jej istnieniu. Ale to już kwestia standardów jakich się trzyma winksmiley.jpg


--------------------
Go to the top of the page
+Quote Post
SHiP
post 17.07.2010, 15:20:43
Post #34





Grupa: Zarejestrowani
Postów: 657
Pomógł: 38
Dołączył: 19.12.2003
Skąd: Janów Lubelski

Ostrzeżenie: (0%)
-----


@-=Peter=-: ok, dzieki za uwagi. Dostosuję sie winksmiley.jpg


--------------------
Pozdrawiam Michał Środek

Warsztat: openSUSE, PHP, NetBeans, GIMP
Mój Blog

http://mohebo.com - Mój framework(download tutaj - http://srodek.info/files/ )
Go to the top of the page
+Quote Post

2 Stron V  < 1 2
Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 2.09.2010 - 22:29