Tytuł: PostPrefix - pogrubienie lub kolorowanie prefixu Wiadomość wysłana przez: Draco 08.06.2009 21:55:12 No więc mod PostPrefix. Fajna sprawa jednak nie do końca rozwiązana. Ponieważ prefix przyjmuje kolor danego thema i "zlewa" się z kolorem tematu, jak widać na poniższym screenie:
(http://poligon.ricoroco.com/fora/foto/uploads/5360b9fb93.jpg) Bardzo przydałoby się możliwość kolorowania prefixu lub przynajmniej pogrubienia go, gdyż nie wygląda to ładnie a tak by było czysto i przy większej ilości prefixów w tematach będzie to przejrzyście. Dla mnie idealnym rozwiązaniem byłoby kolorowanie prefixu - osobny kolor dla osobnego prefixu. Nie chce iść na łatwiznę i prosić o gotowe rozwiazanie ;) Ale przydałaby się wskazówka co i gdzie pozmieniać :crazy: Wrzucam tutaj kod instalki pobranej stąd tłumaczenia K@milo: GeSHi -› Code: [select] <modification xmlns="http://www.simplemachines.org/xml/modification" xmlns:smf="http://www.simplemachines.org/"> <id>jaybachatero:post-prefix</id> <version>1.1</version> <file name="$sourcedir/Post.php"> <operation> <search position="before"><![CDATA[ // At about this point, we're posting and that's that. ignore_user_abort(true); @set_time_limit(300); ]]></search> <add><![CDATA[ //This is for the prefix. if (!empty($_POST['post_prefix'])) $_POST['subject'] = $_POST['post_prefix'] . ': ' . $_POST['subject']; ]]></add> </operation> </file> <file name="$sourcedir/ManagePosts.php"> <operation> <search position="after"><![CDATA[ // Update the actual settings. updateSettings(array( 'removeNestedQuotes' => empty($_POST['removeNestedQuotes']) ? '0' : '1', ]]></search> <add><![CDATA[ //Â The boards for post_prefix if (in_array(0, $_POST['post_prefix_boards'])) $_POST['post_prefix_boards'] = 0; else $_POST['post_prefix_boards'] = implode(',', $_POST['post_prefix_boards']); // Fix UTF-8 stuff. $_POST['post_prefix'] = preg_replace('~&#(\d{4,5}|[2-9]\d{2,4}|1[2-9]\d);~', '&#$1;', $_POST['post_prefix']); $_POST['post_prefix'] = preg_replace('~&(#\d*)?$~', '', $_POST['post_prefix']); ]]></add> </operation> <operation> <search position="before"><![CDATA[ 'edit_disable_time' => empty($_POST['edit_disable_time']) ? '0' : (int) $_POST['edit_disable_time'], ]]></search> <add><![CDATA[ 'post_prefix' => htmlspecialchars($_POST['post_prefix'], ENT_QUOTES), 'post_prefix_boards' => $_POST['post_prefix_boards'], ]]></add> </operation> <operation> <search position="before"><![CDATA[ $context['page_title'] = $txt['manageposts_settings']; ]]></search> <add><![CDATA[ //Load the jump to data. loadJumpTo(); ]]></add> </operation> <operation> <search position="after"><![CDATA[ // Check if your PHP is able to use spell checking. ]]></search> <add><![CDATA[ // Explode post_prefix boards if (!empty($modSettings['post_prefix_boards']) && $modSettings['post_prefix_boards'] != '0') $modSettings['post_prefix_boards'] = explode(',', $modSettings['post_prefix_boards']); ]]></add> </operation> </file> <file name="$sourcedir/ManagePermissions.php"> <operation> <search position="before"><![CDATA[ 'karma_edit' => false, ]]></search> <add><![CDATA[ 'post_prefix' => false, ]]></add> </operation> </file> <file name="$themedir/Admin.template.php"> <operation> <search position="replace"><![CDATA[ <td valign="top"> <input type="text" name="edit_disable_time" id="edit_disable_time_input" value="', empty($modSettings['edit_disable_time']) ? '0' : $modSettings['edit_disable_time'], '" size="5" /> ', $txt['manageposts_minutes'], ' </td> </tr><tr class="windowbg2"> <td align="right" colspan="2"> <input type="submit" name="save_settings" value="', $txt['manageposts_settings_submit'], '" /> </td> </tr> ]]></search> <add><![CDATA[ <td valign="top"> <input type="text" name="edit_disable_time" id="edit_disable_time_input" value="', empty($modSettings['edit_disable_time']) ? '0' : $modSettings['edit_disable_time'], '" size="5" /> ', $txt['manageposts_minutes'], ' </td> </tr><tr class="windowbg2"> <td colspan="2"><hr /></td> </tr><tr class="windowbg2"> <th width="50%" align="right"> <label for="poast_prefix">', $txt['post_prefix'], '</label>: <div class="smalltext" style="font-weight: normal;">', $txt['post_prefix_note'], '</div> </th> <td valign="top"> <input type="text" name="post_prefix" id="post_prefix" value="', empty($modSettings['post_prefix']) ? '' : $modSettings['post_prefix'], '" size="30" /> </td> </tr><tr class="windowbg2"> <th width="50%" align="right" valign="top"> <label for="post_prefix_boards">' ,$txt['post_prefix_boards'], ':<br /></label> <span class="smalltext" style="font-weight: normal;">' ,$txt['post_prefix_boards_desc'], '</span> </th> <td> <select name="post_prefix_boards[]" id="post_prefix_boards" size="10" multiple="multiple">; <option value="0" ' .(isset($modSettings['post_prefix_boards']) && $modSettings['post_prefix_boards'] == 0 ? 'selected="selected"' : ''). '>' .$txt['post_prefix_boards_all']. '</option>'; foreach ($context['jump_to'] as $category) { echo ' <option disabled="disabled">----------------------------------------------------</option> <option disabled="disabled">', $category['name'], '</option> <option disabled="disabled">----------------------------------------------------</option>'; foreach ($category['boards'] as $board) echo ' <option value="' .$board['id']. '" ' .(isset($modSettings['post_prefix_boards']) && is_array($modSettings['post_prefix_boards']) ? in_array($board['id'], $modSettings['post_prefix_boards']) ? 'selected="selected"' : '' : ''). '> ' . str_repeat(' ', $board['child_level']) . '|--- ' . $board['name'] . '</option>'; } echo ' </select> </td> </tr><tr class="windowbg2"> <td align="right" colspan="2"> <input type="submit" name="save_settings" value="', $txt['manageposts_settings_submit'], '" /> </td> </tr> ]]></add> </operation> </file> <file name="$themedir/Post.template.php"> <operation> <search position="replace"><![CDATA[ echo ' <tr> <td align="right" style="font-weight: bold;', isset($context['post_error']['no_subject']) ? 'color: red;' : '', '" id="caption_subject"> ', $txt[70], ': </td> <td> <input type="text" name="subject"', $context['subject'] == '' ? '' : ' value="' . $context['subject'] . '"', ' tabindex="', $context['tabindex']++, '" size="80" maxlength="80" /> </td> </tr> ]]></search> <add><![CDATA[ if (allowedTo('post_prefix')) { echo ' <tr> <td align="right" style="font-weight: bold;" id="post_prefix"> ', $txt['post_prefix'], ': </td> <td> <select name="post_prefix" id="post_prefix"> <option value="" />'; $post_prefix = explode(',', $modSettings['post_prefix']); foreach ($post_prefix as $prefix) echo ' <option value="', ltrim($prefix), '" >', ltrim($prefix), '</option>'; echo ' </select> </td> </tr>'; } echo ' <tr> <td align="right" style="font-weight: bold;', isset($context['post_error']['no_subject']) ? 'color: red;' : '', '" id="caption_subject"> ', $txt[70], ': </td> <td> <input type="text" name="subject"', $context['subject'] == '' ? '' : ' value="' . $context['subject'] . '"', ' tabindex="', $context['tabindex']++, '" size="80" maxlength="80" /> </td> </tr> ]]></add> </operation> </file> <file name="$languagedir/Admin.polish.php"> <operation> <search position="before"><![CDATA[ $txt['edit_disable_time_zero'] = '0 wyłączone'; ]]></search> <add><![CDATA[ $txt['post_prefix'] = 'Lista prefixow przed dodaniem postu.'; $txt['post_prefix_note'] = 'Oddziel każdy prefix przecinkiem (<b>,</b>)'; $txt['post_prefix_boards'] = 'Działy gdzie ma widnieć prefix'; $txt['post_prefix_boards_desc'] = 'Zaznacz działy aby pokazać prefix.'; $txt['post_prefix_boards_all'] = 'Wszystkie działy'; ]]></add> </operation> </file> <file name="$languagedir/Post.polish.php"> <operation> <search position="end" /> <add><![CDATA[ $txt['post_prefix'] = 'Prefix'; ]]></add> </operation> </file> <file name="$languagedir/ManagePermissions.polish.php"> <operation> <search position="end" /> <add><![CDATA[ //PostPrefix permissions. $txt['permissionname_post_prefix'] = 'Dodaj prefix'; $txt['permissionhelp_post_prefix'] = 'Jesli właczysz pozwolenie dla tej grup/y, bedzie/a mogli wybrac/zaznaczyc prefix dla swojego tematu.'; ]]></add> </operation> </file> </modification> Za wszelkie wskazówki THX z góry :drinks: Tytuł: Odp: PostPrefix - pogrubienie lub kolorowanie prefixu Wiadomość wysłana przez: roco 10.06.2009 22:51:45 Cześć Draco! :)
Sorka balowałem 2 dni hehe OK. widzę ten kod.. no i co widzę? Oczywiście wiesz, że to mod do wersji smf 1.xx? Co nie znaczy, że to jakaś trudność, żeby go zintegrować z smf 2.0 Widzę, że ten mod robi tzw. "bźźź" i nie wiele więcej.. to nie jest to co myślisz, lub to co może się naprawdę przydać.. Widzisz ten fragment: GeSHi -› Code: [select] <file name="$sourcedir/Post.php"> <operation> <search position="before"><![CDATA[ // At about this point, we're posting and that's that. ignore_user_abort(true); @set_time_limit(300); ]]></search> <add><![CDATA[ //This is for the prefix. if (!empty($_POST['post_prefix'])) $_POST['subject'] = $_POST['post_prefix'] . ': ' . $_POST['subject']; ]]></add> </operation> </file> to ten kawałek: GeSHi -› Code: [select] - po prostu zlewa "w locie" - wcześniej utworzony "prefix" z linkiem, który jest nazwą posta, (subiect), dodając dwukropek i spację.. i to wszystko.. ot bźźź Tj. to dodaje do postu, czyli nazwy topiku, (kiedy go otworzysz, będzie w nazwie i również jako < title >), i w pliku MessageIndex.template.php. Muszę się niestety poddać.. łatwiej byłoby napisać nowego moda.. sorka! - nawet jakby dodał to zobaczysz kod zamiast np. koloru.. czyli np. < span style = " color: red; " >Prefix1: < / span >Nazwa topa.. zamiast: Prefix1: Nazwa topa - co oczywiście wynika z mechanizmów samoobrony smf.. Ten mod dokleja kawałek czystego textu do linka, którym jest Nazwa Topa i widać to w dwóch miejscach.. Jednak, kiedy wyedytujesz posta i np. wybierzesz inny prefix to doda do już istniejącego.. czyli np. zobaczysz - Prefix2: Prefix1: Nazwa topa. ...bzdura nie? ale to wynika z kodu tego moda.. Nie można go pokolorować, ani nic z nim zrobić.. no może można spróbować przez htmlspecialchars, ale to też bullshit, lepiej byłoby zainstalować moda do kolorowania postów czy działów, bo takie są i są bardziej przydatne niż to gówienko.. Tak, więc, Draco przykro mi, ale nie mogę tego zrobic i wynika to wyłącznie z konstrukcji kodu. Napisałeś: Quote: [select] Fajna sprawa jednak nie do końca rozwiązana. Ponieważ prefix przyjmuje kolor danego thema i "zlewa" się z kolorem tematu, jak widać na poniższym screenie: To nieprawda! - ten cały prefix, to słowo doklejone z przodu linka, którym jest Nazwa Topa i musi wyglądać jak reszta linka i jeśli taki top przykleisz to będzie link topa pogrubiony i tym samym prefix, bo razem daje ten link.. Gościu nie przemyślał sprawy do końca.. może to turek? nieważne.. jest sporo modów które są po prostu mało-potrzebne i to jeden z takich "okazów"... Wskazówka? Nie ma sensu instalować tego moda już lepiej samemu to robić "z palca" np. tworzysz topik, gdzie dajesz jakieś tipsy, to np. piszesz: [Tip] Port Forwarding pod BitTornado I masz swój prefix, lub inny w zależności od potrzeb.. - to tylko kwestia dogadania się z ludźmi, jak sądzę.. Taki tips.. No nic, jak widać nie mogłem w tej kwestii pomóc, a pisze to po gruntownej analizie powyższego kodu instalki moda, przykro mi. :bezradny: Może znajdą się osoby, które stwierdzą coś innego, jednak jestem pewien tego co piszę.. Pozdrawiam ;) roco Tytuł: Odp: PostPrefix - pogrubienie lub kolorowanie prefixu Wiadomość wysłana przez: Draco 10.06.2009 22:59:41 No cóż szkoda.... wiem, że to jest pod 1.1.x ale właśnie zainstalowałem sobie takie testowe forum właśnie z 1.1.9 ... i powiem, że niejako więcej tych modów pod 1.1.9 nawet starszych, które po kosmetycznych zmianach nadają się pod 1.1.9 i śmigają sobie pięknie. Widziałem taki mod właśnie z prefixem pod IPB czy vB ... fajne sprawa bo prefixy takie można dawać pod różne działy, w różnych kolorach...ale na IPB się nie przerzuce wole smf :D Nic pozostaje czekać być może pojawi się podobny mod... na razie sprawa się nie pali więc nie ma tak duże problemu...zresztą nie jest to rzeczy wymagana a jedynie fajny dodatek z tego by był dla większego porządku na forum...
Pozdro serdeczne :drinks: Tytuł: Odp: PostPrefix - pogrubienie lub kolorowanie prefixu Wiadomość wysłana przez: roco 10.06.2009 23:13:49 Zainteresuj się modami do kolorowania działów i postów, ponieważ one działają podobnie, tylko lepiej.. na stewkę je znajdziesz na smf.org. Poszukaj również modów typu SEO, ale nie kombinuj z żadnymi które stosują ModRewrite, bo spieprzysz sobie forum.. Ale są różne mody i czasami warto pomyszkować w tamtych rejonach, zresztą nie tylko..
Możesz też utworzyć takie działy i kategorie, że porządek będzie automatyczny, i wiele tu zależy od Twojej inwencji i Twoich ludzi. Chyba był też mod który dodawał przed topem (linkiem) jakąś grafę, której można nazwać anchory, co poprawia widzialność dla robotów np. z google itp.. SMF, choć nie jest tak rozbudowany jak np. płatny IPB, (co kosztuje tyle co system operacyjny..), to i tak jest lepszy, ponieważ jest wręcz jak plastelinka i można go formować dowolnie, nawet można oprzeć stronki na silniku z smf'a. Chyba też widziałem do skryptu smf dodawanie gwiazdek do topów, ale nie ocenianie, to też widziałem.. Trzeba pomyśleć, ponieważ modów nie dość, że codziennie przybywa, to jest ich zatrzęsienie.. Pozdrówka :plane: roco Tytuł: Odp: PostPrefix - pogrubienie lub kolorowanie prefixu Wiadomość wysłana przez: Draco 10.06.2009 23:18:00 No właśnie i za to kocham SMF. Fajna rzecz zrobić sobie taki poligon doświadczalny w formie testowego forum i trenować... tak ja robie. I ciągle człowiek uczy się czegoś nowego...nie offtopując ... lece poszperać na smf.org za tym prefixem bo teraz smaka sobie narobiłem ;) Pozdro
Tytuł: Odp: PostPrefix - pogrubienie lub kolorowanie prefixu Wiadomość wysłana przez: roco 10.06.2009 23:32:53 Ja po za własnym Poligonem, polecam poligon na localhoście, (czyli własny serverek), dobry edytor, kilka klientów ftp, porównywarkę plików i co najmniej 3 przeglądarki w systemie...
Ok. ja też spadam, a top niech zostanie, może znajdą się inne tipsy w kwestiach prefixów lub podobnie.. Narka :) |