|
Tytuł: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: andreoid Październik 26, 2006, 04:57:30 Mod - Prywatne wiadomości + BBcode2
oryginalny tytuł [MOD] PMv2 Tutorial Republished here Autor: V@no Aktualizacja: Mark Gunter Część 1 Bardzo pomocna modyfikacja dla galerii, które mają charakter portalowy. Modyfikacja ta, umożliwia nam wymiane korespondencji pomiędzy użytkownikami i informuje nas poprzez e-mail, o nowych wiadomościach w skrzynce pocztowej. Została również dołączona nowsza i bogadsza wercja edytora BBcode 2 oraz buziaki. W administracyjnym panelu kontrolnym możemy dokonać ustawień różnych opcji. Aby przetestować MOD zarejestruj się na stronie demo Demo (http://4images.fotoan.com/4images_03/index.php) Instalacja: średnio zaawansowana Czas: około 30 minut Zmienione zostaną następujące pliki:
Zmienione zostaną następujące pliki HTML w Twoim szablonie (templates)
Nowe pliki
Nowe pliki w Twoim szablonie
Nowy szablon e-mailowy
katalogi z nową grafiką
Pamiętaj o zabezpieczeniu kopi bazy danych mySQL. Modyfikacja rozszerza bazę danych Pobierz modyfikację tutaj (http://www.fotoan.com/component/option,com_docman/task,doc_details/gid,17/Itemid,8/) Rozpakuj paczkę i załaduj wszystkie pliki i foldery na serwer, pamiętając o zachowaniu ścieżek: /bbcode2.js /pm.php /pm_install.php /smiles.php /includes/paging.php stary plik zostanie przepisany /lang/polish/email/pm_notify.html /templates/<twoj_szablon>/bbcode2.html /templates/<twoj_szablon>/pm.html /templates/<twoj_szablon>/pm_delete.html /templates/<twoj_szablon>/pm_finduser.html /templates/<twoj_szablon>/pm_folder.html /templates/<twoj_szablon>/pm_new.html /templates/<twoj_szablon>/pm_perpage_dropdown_form.html /templates/<twoj_szablon>/pm_view.html /templates/<twoj_szablon>/images/ /templates/<twoj_szablon>/smiles/ Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: andreoid Listopad 08, 2006, 23:28:26 Część 2
Instalacja: Krok 1 Otwórz plik /includes/constants.php i na samym końcu przed znakiem Kod: ?> dodaj Kod: // Advanced BBCode can be only "bbcode" or "bbcode2" SETTING TO OTHER VALUES WILL CAUSE FATAL ERROR!!! define('BBCODE', "bbcode2"); //PM define('PM_TABLE', $table_prefix.'pm'); //do not modify next 6 lines! define('PM_RDLT', 0); //Recipient deleted message (message only in: Sender's Setbox) define('PM_SDLT', 1); //Sender deleted message (message only in: Recipient's Inbox) define('PM_SENT', 2); //Recipient read message (message in: Sender's Sentbox and Recipient's Inbox) define('PM_USDLT', 3); //Recipient has not read message (message only in: Recipient's Inbox) define('PM_UNREAD', 5); //Recipient has not read message (message in: Sender's Outbox and Recipient's Inbox - New Message) define('PM_UNLIMITED', -1); Krok 2 Otwórz plik /lang/polish/main.php i na samym końcu przed znakiem Kod: ?> dodaj Kod: //----------------------------------------------------- Większość tekstu, jest przetłumaczona słowo w słowo, może to wywoływać brak logiki w polskiej pisowni.//--- PM (Private Messenging) ------------------------- //----------------------------------------------------- $lang['pm'] = "Prywatne wiadomości"; $lang['pm_inbox'] = "Skrzynka"; $lang['pm_outbox'] = "Wysłane"; $lang['pm_sentbox'] = "Otrzymane"; $lang['pm_link'] = " masz<br />» <b>{msg_new_count}</b> nową(e) wiadomość(ci)<br /> tu jest Twoja <b>{inbox}</b>."; $lang['pm_short'] = "PW"; $lang['pm_error'] = "Błąd"; $lang['pm_error_to'] = "Musisz wybrać użytkownika."; $lang['pm_error_to_notfound'] = "U?ytkownik nie odnaleziony."; $lang['pm_error_subject'] = "Musisz wpisać temat."; $lang['pm_error_message'] = "Musisz wpisać teks wiadomości."; $lang['pm_error_folder'] = "Nie wybrano katalogu."; $lang['pm_error_id'] = "Nie pokazuj."; $lang['pm_error_delete'] = "Nie usunięto."; $lang['pm_compose'] = "Sporządź"; $lang['pm_delete'] = "Usuń"; $lang['pm_delete_selected'] = "Zaznaczone usuń"; $lang['pm_delete_all'] = "Usuń całość"; $lang['pm_delete_success'] = "Ta wiadomość została pomyślnie usunięta"; $lang['pm_delete_confirm'] = "Jesteś pewny, że chcesz usunąć wiadomość z katalogu <b>".$lang['pm_'.$mode]."</b>?"; $lang['pm_delete_confirm_select'] = "Jesteś pewny, że chcesz usunąć zaznaczone wiadomości z katalogu <b>".$lang['pm_'.$mode]."</b>?"; $lang['pm_delete_confirm_all'] = "Czy jesteś pewny, że chcesz usunąć wszystkie wiadomości <b>".$lang['pm_'.$mode]."</b>?"; $lang['pm_new'] = "Napisz nową PW"; $lang['pm_new_messages'] = "Nowe wiadomości"; $lang['pm_new_is_one'] = "Masz <b>{count}</b> nowe"; //You have xx new message(s) $lang['pm_message_single'] = "wiadomość"; $lang['pm_message_plural'] = "wiadomości"; $lang['pm_select_user'] = "Wybierz użytkownika"; $lang['pm_sent_success'] = "Ta wiadomość została wysłana poprawnie"; $lang['pm_save_success'] = "Ta wiadomość została poprawnie aktualizowana"; $lang['pm_redirect'] = "Proszę chwileczkę zaczekać"; $lang['pm_empty'] = "Nie ma wiadomości w tym katalogu"; $lang['pm_reply'] = "Odpowiedź"; $lang['pm_view'] = "Pokaż"; $lang['pm_mark'] = "Zaznacz"; $lang['pm_edit'] = "Edytuj"; $lang['pm_subject'] = "Temat"; $lang['pm_message'] = "Wiadomość"; $lang['pm_to'] = "Do (adresat):"; $lang['pm_date'] = "Data"; $lang['pm_send'] = "Wyślij"; $lang['pm_preview'] = "Podgląd"; $lang['pm_status'] = "Status"; $lang['pm_from'] = "od"; $lang['pm_html'] = "Wyłącz HTML w tej wiadomości"; $lang['pm_bbcode'] = "Wyłącz BBCode w tej wiadomości"; $lang['pm_smiles'] = "Wyłącz buziaczki (smiles) w tej wiadomości"; $lang['pm_perpage'] = "wiadomości na stronę"; $lang['pm_user_pm'] = "PW"; $lang['pm_user_pm_alt'] = "Wyślij prywatną wiadomość"; $lang['pm_total'] = "wszystkie wiadomości"; $lang['pm_received'] = "Otrzymałeś"; $lang['pm_quote'] = "Cytat"; $lang['pm_error_save'] = "Błąd/zakłucenia w zapisie wiadomości. (wiadomość mogła zostać zapisana)"; $lang['pm_error_notfound'] = "Nie można znaleźć wiadomości."; $lang['pm_paging_stats'] = "Masz {total_cat_images} wiadomość(i) {new} na {total_pages} stronie(ach) w opcji {box}.<br />Wyświetlone wiadomości: od {first_page} do {last_page}."; $lang['pm_email'] = "Powiadomienie przez email o nowej wiadomości"; $lang['pm_popup'] = "Pop up okno z powiadomieniem o nowej wiadomości"; $lang['pm_popup_confirm'] = "Masz nową prywatną wiadomość. Kliknij OK aby ją zobaczyć, lub na Anuluj, aby anulować przegląd."; $lang['pm_popup_newwindow'] = "Otworzyć w nowym oknie?\\n\\n(Jeżeli klikniesz Anuluj, katalog Skrzynka otworzy się w tym samym oknie.)"; $lang['pm_email_new'] = "Nowe PW"; $lang['pm_comment_quote'] = "Comment posted by"; $lang['pm_mark_read'] = "Zaznacz jako przeczytane"; $lang['pm_storage'] = "Twoja {box} jest {size}% pełna"; $lang['pm_storage_unlimited'] = "Twoja {box} jest nielimitowana"; $lang['pm_user_limit_reached'] = "Przepraszam, ale skrzynka użytkownika {user}, jest już pełna"; $lang['pm_inbox_limit'] = "Inbox messages limit"; $lang['pm_sentbox_limit'] = "Sentbox messages limit"; $lang['pm_finduser'] = "Znajdź użytkownika"; $lang['pm_finduser_notfound'] = "Nie znaleziono użytkownika"; $lang['pm_finduser_wildcards'] = "Use * as a wildcard for partial matches"; $lang['pm_select'] = "Select"; $lang['pm_finduser_many'] = "Znaleziono więcej użytkowników z takimi inicjałami. Proszę wybierz jednego z nich."; $lang['pm_user_id_priority'] = "User name <b>selection</b> has higher priority then user name <b>field</b>."; $lang['pm_user_inbox'] = "Inbox limit<span class=\"smalltext\"><br />set to <font color=red><b>0</b></font> to use global settings<br>or <font color=red><b>-1</b></font> for unlimited</span>"; $lang['pm_user_sentbox'] = "Sentbox limit<span class=\"smalltext\"><br />set to <font color=red><b>0</b></font> to use global settings<br>or <font color=red><b>-1</b></font> for unlimited</span>"; $lang['pm_toosoon'] = "Sorry, you can not send messages so frequently"; $lang['pm_toosoon_user'] = "Przepraszam, ale raz za razem, nie możesz wysyłać wiadomości do tego samego użytkownika."; $lang['pm_next'] = "Następna »"; $lang['pm_prev'] = "« Poprzednia"; //----------------------------------------------------- //--- BBCode2 ----------------------------------------- //----------------------------------------------------- $lang['code'] = "Kod"; $lang['quote'] = "Cytat"; $lang['wrote'] = "napisa"; $lang['close_tags'] = "Zamknij wszystkie tegi"; $lang['close_window'] = "Zamknij okno"; $lang['all_emoticons'] = "Wszystkie buziaki"; $lang['all'] = "Wszystkie"; $lang['bbc_help_default'] = "Tip: Styles can be applied quickly to selected text."; $lang['bbc_help'] = array( "b" => "Tekst pogrubiony: [b]tekst[/b] (alt+b)", "i" => "Tekst pochylony: [i]tekst[/i] (alt+i)", "u" => "Tekst podkreślony: [u]tekst[/u] (alt+u)", "q" => "Cytowany tekst: [quote]tekst[/quote] or [quote=name]tekst[/quote] (alt+q)", "l" => "Tworzenie list: [list]tekst[/list] (alt+l)", "o" => "Ordered list: [list=]tekst[/list] (alt+o)", "p" => "Wstawianie obrazków: [img]http://image_url[/img] (alt+p)", "w" => "Tworzenie linków: [url]http://url[/url] or [url=http://url]URL tekst[/url] (alt+w)", "a" => "Zamknij wszystkie otwarte BBCODE tegi", "s" => "Kolorowy tekst: [color=red]tekst[/color] Tip: you can also use color=#FF0000", "f" => "Wysokość tekstu: [size=x-small]small tekst[/size]", "sh" => "Cień: [shadow=red,left,1]tekst[/shadow]", "g" => "Blask: [glow=red,2,1]tekst[/glow]", "al" => "Pozycjonowanie: [align=center]tekst[/align]", "t" => "Tekst dalekopisu: [tt]tekst[/tt]", "ff" => "Rodzaj tekstu: [font=verdana]tekst[/font]", "h" => "Linia pozioma: [hr]", "m" => "Przesuwanie: [move]tekst[/move]", "fl" => "Flash: [flash=200,200]URL[/flash]", "sb" => "Dolny tekst: [sub]tekst[/sub]", "sp" => "Górny tekst: [sup]tekst[/sup]", "st" => "Tekst przekreślony: [s]tekst[/s] (alt+s)", "e" => "Link emailowy: [email]name@domain[/email] or [email=name@domain]email text[/email] (alt+e)", "sm" => "Buziaczki / Uśmieszki / Smiles" ); Dlatego proszę o zgłaszanie ewentualnych zmian w tekście, gdzie nieścisłości wynikną w trakcie używania modyfikacji. Krok 3 Otwórz plik /admin/settings.php W pliku settings.php, musimy ustalić najpierw ostatnio zainstalowaną grupę opcji. Jeżeli nie instalowaliśmy do tej pory żadnej modyfikacji, której opcje ustawiane są w administracyjnym panelu kontrolnym, to w standartowej instalacji 4images ostatnią grupą opcji jest grupa 7, odszukaj tą grupę używając fragmentu kodu Kod: show_table_separator($setting_group Bardzo ważną sprawą jest to, abyśmy byli pewni numeru, ostaniej zainstalowanej grupy.Np.: jeżeli ostatnią zainstalowaną grupą , jest grupa 7, to nasza nowa grupa będzie miała numer 8 odszukaj Kod: show_form_footer($lang['save_changes'], "", 2); i przed tym kodem dodaj Kod: show_table_separator($setting_group[XX], 2, "#setting_group_XX"); show_setting_row("pm", "radio"); show_setting_row("pm_html", "radio"); show_setting_row("pm_bbcode", "radio"); show_setting_row("pm_img", "radio"); show_setting_row("pm_inbox"); show_setting_row("pm_sentbox"); w miejsce XX wstaw numer nowej grupy wynikający z jej kolejności. Krok 4 Otwórz /lang/polish/admin.php i przed znakiem Kod: ?> dodaj Kod: /*-- Setting-Group XX --*/ w miejsce XX wstaw numer nowej grupy wynikający z kroku 3$setting_group[XX]="Prywatne wiadomości"; $setting['pm'] = "Zezwól na wysyłanie prywatnych wiadomości"; $setting['pm_html'] = "Zezwól na HTML w prywatnych wiadomościach"; $setting['pm_bbcode'] = "Zezwól na BBCODE w prywatnych wiadomościach"; $setting['pm_img'] = "Zezwól na [img] tag w prywatnych wiadomościach"; $setting['pm_inbox'] = "Maksymalna ilość wiadomości w skrzynce<span class=\"smalltext\"><br />[Limit] wpisz <b>0</b> jeżeli wysyłanie wiadomości ma być nieograniczone </span>"; $setting['pm_sentbox'] = "Maksymalna ilość wiadomości wysyłanych<span class=\"smalltext\"><br />[Limit] wpisz <b>0</b> jeżeli wysyłanie wiadomości ma być nieograniczone </span>"; Krok 5 Otwórz plik /includes/functions.php i odszukaj Kod: function format_text i przed tym kodem dodaj Kod: /* jest to znak używany do komentowania w kodach PHP (w ten sposób możemy wyłączyć fragmenty skryptu, nie usuwając go z pliku)odszukaj Kod: return $text; } i za tym kodem dodaj ten Kod: */ Nie zamykaj pliku functions.php Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: andreoid Listopad 08, 2006, 23:39:02 Część 3
Krok 6 w tym samym pliku, na końcu przed znakiem Kod: ?> dodaj Kod: //---Code added for PM MOD------ function strip_brackets($text){ global $lang; $code_entities_match = array('#<#', '#>#', '#"#', '#:#', '#\[#', '#\]#', '#\(#', '#\)#', '#\{#', '#\}#'); $code_entities_replace = array('<', '>', '"', ':', '[', ']', '(', ')', '{', '}'); return preg_replace($code_entities_match, $code_entities_replace, $text); } function thumb($id, $dim = 50, $align = "bottom") { global $site_db, $user_info, $site_sess; if (empty($dim)) $dim = 50; if (empty($align)) $align = "bottom"; $text = ""; $sql = "SELECT image_name, image_id, image_media_file, image_thumb_file, cat_id FROM ".IMAGES_TABLE." WHERE image_id = ".$id; if ($row = $site_db->query_firstrow($sql)) { if (!get_file_path($row['image_thumb_file'], "thumb", $row['cat_id'], 0, 0)) { $file_src = ICON_PATH."/".get_file_extension($row['image_media_file']).".gif"; }else{ $file_src = get_file_path($row['image_thumb_file'], "thumb", $row['cat_id'], 0, 1); } $image_info = @get_imagesize($file_src, $info); $width = $image_info[0]; $height = $image_info[1]; $wh = get_resize($image_info[0], $image_info[1], $dim, $dim); $text = "<a href=\"".$site_sess->url(ROOT_PATH."details.php?".URL_IMAGE_ID."=".$row['image_id'])."\"><img width = \"".$wh[0]."\" height=\"".$wh[1]."\" src=\"".$file_src."\" alt=\"".str_replace("\"", """, $row['image_name'])."\" align=\"".$align."\" border=\"1\" /></a>"; } return $text; } function bb_code($text){ global $lang; $text = strip_brackets($text); $text = str_replace(" ", " ", $text); // now Replace 2 spaces with " " to catch odd #s of spaces. $text = str_replace(" ", " ", $text); // Replace tabs with " " so tabbed code indents sorta right without making huge long lines. $text = str_replace("\t", " ", $text); $text = "<div class=\"codehead\"><b>".$lang['code'].":</b><div class=\"codeblock\">".stripslashes($text)."</div></div>"; return $text; } function format_text($text, $html = 0, $word_wrap = 0, $bbcode = 0, $bbcode_img = 0, $smiles = 0, $brackets = 1) { global $lang; $text = trim($text); $text = str_replace("\\", "\\\\", $text); if ($html == 0) { $text = str_replace("<", "&lt;", $text); $text = str_replace(">", "&gt;", $text); $text = str_replace("<", "<", $text); $text = str_replace(">", ">", $text); } // $text = preg_replace("/(\[)(php)(])(\r\n)*(.*)(\[\/php\])/esiU", "phphighlite('\\5')", $text); $text = ($smiles) ? smiles($text) : $text; if ($bbcode == 1) { $text = preg_replace("/\[php\](.*?)\[\/php\]/esi", "phphighlite('\\1')", $text); $text = preg_replace("/\[code\](.*?)\[\/code\]/esi", "bb_code('\\1')", $text); } if ($brackets) { $entities_match = array('{', '}'); $entities_replace = array('{', '}'); $text = str_replace($entities_match, $entities_replace, $text); } if ($bbcode == 1) { $text = preg_replace("/\[thumb=([0-9]+)(,([0-9]+)?)?(,([a-zA-Z]+))?\]/esi","thumb('\\1','\\3','\\5')",$text); $search_array = array( "/\[b\](.*?)\[\/b\]/si", "/\[i\](.*?)\[\/i\]/si", "/\[u\](.*?)\[\/u\]/si", "/\[email\](.*?)\[\/email\]/si", "/\[email=(.*?)\](.*?)\[\/email\]/si", "/\[quote=(.*?)\](.*?)/si", "/\[quote\](.*?)/si", "/\[\/quote\]/si", "/\[url=(.*?)\](.*?)\[\/url\]/si", "/\[url\](.*?)\[\/url\]/si", "/\[urlb=(.*?)\](.*?)\[\/urlb\]/si", "/\[urlb\](.*?)\[\/urlb\]/si", "/\[sub\](.*?)\[\/sub\]/si", "/\[sup\](.*?)\[\/sup\]/si", "/\[color=(.*?)\](.*?)\[\/color\]/si", "/\[size=(.*?)\](.*?)\[\/size\]/si", "/\[tt\](.*?)\[\/tt\]/si", "/\[s\](.*?)\[\/s\]/si", "/\[move\](.*?)\[\/move\]/si", // "/\[align=(.*?)\](.*?)\[\/align\]/si", "/\[align=(.*?)\](.*?)\[\/align\](.<br \/>)?/si", "/\[font=(.*?)\](.*?)\[\/font\]/si", "/\[shadow=(.*?)\,(.*?)\,(.*?)\](.*?)\[\/shadow\]/si", "/\[glow=(.*?)\,(.*?)\,(.*?)\](.*?)\[\/glow\]/si", "/\[quote2=(.*?)\,(.*?)(\(.*?\))?\](.*?)/si", "/\[\/quote2\]/si", "/(\[)(list)(=)(['\"]?)([^\"']*)(\\4])(.*)(\[\/list)(((=)(\\4)([^\"']*)(\\4]))|(\]))/siU", "/(\[)(list)(])(.*)(\[\/list\])/siU", "/(\[\*\])/siU", "/javascript:/si", "/about:/si" ); $replace_array = array( "<b>\\1</b>", "<i>\\1</i>", "<u>\\1</u>", "<a href=mailto:\\1>\\1</a>", "<a href=mailto:\\1>\\2</a>", "<div class=\"quotehead\"><b>\\1</b> ".$lang['wrote'].":<div class=\"quoteblock\">\\2", "<div class=\"quotehead\"><b>".$lang['quote'].":</b><div class=\"quoteblock\">\\1", "</div></div>", "<a href=\"\\1\" target=_blank>\\2</a>", "<a href=\\1 target=_blank>\\1</a>", "<b><a href=\"\\1\" target=_blank>\\2</a></b>", "<b><a href=\\1 target=_blank>\\1</a></b>", "<sub>\\1</sub>", "<sup>\\1</sup>", "<font color=\"\\1\">\\2</font>", "<font style=\"font-size: \\1px\">\\2</font>", "<tt>\\1</tt>", "<s>\\1</s>", "<marquee>\\1</marquee>", "<div align=\"\\1\">\\2</div>", "<font face=\"\\1\">\\2</font>", "<font style=\"Filter: Shadow(color=\\1, Direction=\\2); Width=\\3px;\">\\4</font>", "<font style=\"Filter: Glow(color=\\1, Strength=\\2); Width=\\3px;\">\\4</font>", "<div class=\"quotehead\">\\1<b>\\2</b>\\3:<div class=\"quoteblock\">\\4", "</div></div>", "<ol type=\"\\5\">\\7</ol>", "<ul>\\4</ul>", "<li>", "java script", "about :" ); preg_match_all("/(\[quote=(.+?)\])|(\[quote\])/", $text, $regs); $quoteopen = count($regs[0]); preg_match_all("/(\[\/quote\])/", $text, $regs); $quoteclose = count($regs[0]); if($quoteopen > $quoteclose) { $toclose = $quoteopen - $quoteclose; for($i = 0 ; $i < $toclose ; $i++) { $text .= "[/quote]"; } } elseif($quoteclose > $quoteopen) { $toopen = $quoteclose - $quoteopen; for($i = 0 ; $i < $toopen ; $i++) { $text = "[quote]$text"; } } $text = preg_replace($search_array, $replace_array, $text); if (!$bbcode_img) { $text = preg_replace("/\[img\](.*?)\[\/img\]/si", "<a href=\"\\1\" target=\"_blank\">\\1</a>", $text); $text = preg_replace("/\[img=(.*?)\,(.*?)\](.*?)\[\/img\]/si","<a href=\"\\3\" target=\"_blank\">\\3</a>",$text); $text = preg_replace("/\[img height=(.*?)\ width=(.*?)\](.*?)\[\/img\]/si","<a href=\"\\3\" target=\"_blank\">\\3</a>",$text); $text = preg_replace("/\[img width=(.*?)\ height=(.*?)\](.*?)\[\/img\]/si","<a href=\"\\3\" target=\"_blank\">\\3</a>",$text); $text = preg_replace("/\[flash=(.*?)\,(.*?)\](.*?)\[\/flash\]/si","<a href=\"\\3\" target=\"_blank\">\\3</a>",$text); }else{ $text = preg_replace("/\[img\](.*?)\[\/img\]/si", "<img src=\"\\1\" border=\"0\">", $text); $text = preg_replace("/\[img=(.*?)\,(.*?)\](.*?)\[\/img\]/si","<img src=\"\\3\" height=\"\\2\" width=\"\\1\">",$text); $text = preg_replace("/\[img height=(.*?)\ width=(.*?)\](.*?)\[\/img\]/si","<img src=\"\\3\" height=\"\\1\" width=\"\\2\">",$text); $text = preg_replace("/\[img width=(.*?)\ height=(.*?)\](.*?)\[\/img\]/si","<img src=\"\\3\" width=\"\\1\" height=\"\\2\">",$text); $text = preg_replace("/\[flash=(.*?)\,(.*?)\](.*?)\[\/flash\]/si","<object classid=\"clsid: D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\\1 height=\\2><param name=movie value=\\3><param name=play value=true><param name=loop value=true><param name=quality value=high><embed src=\\3 width=\\1 height=\\2 play=true loop=true quality=high></embed></object>",$text); } $text = str_replace("[hr]", "<hr>", $text); } $text = replace_url($text); if ($word_wrap && $text != "") { $text = preg_replace("/([^\n\r ?&\.\/<>\"\\-]{".$word_wrap."})/i", " \\1\n", $text); } $text = str_replace("\n", "<br />", $text); $text = str_replace("\\'", "'", $text); $text = str_replace("\\\"", """, $text); return replace_badwords(stripslashes($text)); } function phphighlite($code) { //PHP 4 only if (floor(phpversion())<4) { $buffer=$code; } else { // $code = str_replace("<br>", "", $code); // $code = str_replace("<br />", "", $code); $code = str_replace(">", ">", $code); $code = str_replace("<", "<", $code); $code = str_replace("&", "&", $code); $code = str_replace('$', '\$', $code); $code = str_replace('\n', '\\\\n', $code); $code = str_replace('\r', '\\\\r', $code); $code = str_replace('\t', '\\\\t', $code); $code = stripslashes($code); if (!strpos($code,"<?") and substr($code,0,2)!="<?") { $code="<?\n".trim($code)."\n?>"; $addedtags=1; } ob_start(); $oldlevel=error_reporting(0); highlight_string($code); error_reporting($oldlevel); $buffer = ob_get_contents(); ob_end_clean(); if ($addedtags) { $openingpos = strpos($buffer,'<?'); $closingpos = strrpos($buffer, '?'); $buffer=substr($buffer, 0, $openingpos).substr($buffer, $openingpos+5, $closingpos-($openingpos+5)).substr($buffer, $closingpos+5); } // $buffer = str_replace(""", "\"", $buffer); } return "<div class=\"codehead\"><b>PHP:</b><div class=\"codeblock\">".preg_replace("/<code><font color=\"#000000\">\n<font color=\"(.*)\">\n/si", "<code><font color=\"#000000\"><font color=\"\\1\">", str_replace("\n</font>\n</code>", "</font></code>", $buffer))."</div></div>"; } //-------------------------- //--------Smiles------------ //-------------------------- function smiles($text,$enablesmilies = 1) { global $smileyfromcache, $smileytocache; $imagesdir = TEMPLATE_PATH."/smiles"; if(gettype($smileyfromcache) != "array") { $smilesfrom = get_smiles(); foreach ($smilesfrom as $key => $val) { $smileyfromcache[] ='/(((>[^<]*)|(^[^<]*))([\s\n\r]|^|<br( \/)?[>]))('.str_replace('|','\|', quotemeta(str_replace("<", "<", str_replace(">", ">", str_replace("\/", "\\\/", $key))))).')/s'; $smileytocache[] = "\\1<img src=\"$imagesdir/$val.gif\" alt=\"\" border=\"0\">"; } } if ($enablesmilies) { $text = parsesmilies($text); } return $text; } function parsesmilies($text) { global $smileyfromcache, $smileytocache; $oldtext = ""; while($oldtext != $text) { $oldtext = $text; $text = preg_replace($smileyfromcache, $smileytocache, $text); } return $text; } function get_smiles(){ $smilesfrom = array( ":)" => "happy", "(:" => "happy", ":-))" => "very_happy", ":lol:" => "very_happy", ":D" => "big_smile", ":O" => "surprised", ":o" => "surprised", ";)" => "wink", ":wink:" => "wink", ":(" => "sad", ":*(" => "very_sad", ":cry:" => "very_sad", ":confused:" => "confused", ":shy:" => "embarrassed", ":vicious:" => "vicious", ":|" => "undecided", ":pig:" => "pig", ":P" => "tongue", ":p" => "tongue", "B)" => "cool", ":B" => "nerd", "X(" => "angry", ":X" => "in_love", "|)" => "asleep", "=;" => "talk_to_hand", "@};-" => "rose", "):)" => "cowboy", "8X" => "skull", "=:)" => "alien", "0:)" => "angel", ":devil:" => "devil", ":clown:" => "clown", "3:O" => "cow", "3:o" => "cow", ":monkey:" => "monkey", "(~~)" => "pumpkin", "[-(" => "huff", "*:)" => "bulb", ":$" => "shhh", ":chicken:" => "chicken", "~o)" => "cup", "%%-" => "clover", "b(" => "beat_up", ":E:" => "peace", ":&" => "sick", "=*" => "kiss", ";;)" => "flirt", ":?)" => "what", "(%)" => "ying", "o-+" => "april", ":billy:" => "billy", ":hiro:" => "hiro", ":mad:" => "mad", ":R:" => "praying", "[-x" => "nono", "[:D]" => "hugging", ":dance:" => "dancing", "=D" => "applause", "(?)" => "thinking", ":^o" => "liar", "@)" => "hypnotized", "8|" => "rolleyes", "8}" => "crazy", "?|" => "tired", "=p~" => "drooling", "$)" => "money", ":whistle:" => "whistling", "#o" => "doh", ":alien:" => "alien2", ":S" => "scared" ); return $smilesfrom; } function get_smiles_text() { global $lang; $smilesfrom = get_smiles(); $val_old = ""; $i = 0; $val_old = array(); foreach ($smilesfrom as $key => $val) { if (!in_array($val, $val_old)) { $smiles_text .= "<a href=\"javascript:emoticon('$key')\"><img src=\"".TEMPLATE_PATH."/smiles/$val.gif\" alt=\"$key\" border=\"0\"></a> "; } $val_old[] = $val; $i++; if ($i > 18) { // $smiles_text .= "<a href=\"smiles.php\" onclick=\"window.open('smiles.php', '_4imagessmilies', 'HEIGHT=310,resizable=yes,scrollbars=yes,WIDTH=225');return false;\" target=\"_4imagessmilies\"> ".$lang['all']."</a>"; return $smiles_text; } } return $smiles_text; } //------End Smiles------- function get_resize($file = "", $dim, $width = 0, $height = 0, $scale = 0){ if ($file) { if ($file = @getimagesize($file)) { $width = $file[0]; $height = $file[1]; } } if ($width && $height) { if ($width > $dim || $height > $dim || $scale) { @$ratio = $width / $height; if ($ratio > 1) { $new_width = $dim; $new_height = round(($dim/$width) * $height); }else { $new_width = round(($dim/$height) * $width); $new_height = $dim; } } else { $new_width = $width; $new_height = $height; } }else{ $new_width = $dim; $new_height = $dim; } return array($new_width, $new_height, $file); } //----End of code added for PM mod----- Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: andreoid Listopad 09, 2006, 23:21:06 Część 4
Krok 7 Otw?rz plik /includes/page_header.php i odszukaj Kod: $site_template->register_vars(array( "media_url" => MEDIA_PATH, i zmień go na Kod: //----------------------------------------------------- //--- pm --------------------------------------------- //----------------------------------------------------- $inbox = ""; $outbox = ""; $sentbox = ""; $newpm = ""; $pm_popup_script = ""; $pm_popup_head = ""; $pm = ""; if ($config['pm'] && $user_info['user_level'] >= USER) { $sql = "SELECT COUNT(pm_id) AS total FROM ".PM_TABLE." WHERE pm_to = ".$user_info['user_id']." AND (pm_type = ".PM_SENT." OR pm_type = ".PM_SDLT." OR pm_type = ".PM_UNREAD." OR pm_type = ".PM_USDLT.")"; $result = $site_db->query_firstrow($sql); $pm_inbox = $result['total']; $sql = "SELECT COUNT(pm_id) AS total FROM ".PM_TABLE." WHERE pm_from = ".$user_info['user_id']." AND (pm_type = ".PM_UNREAD." OR pm_type = ".PM_USDLT.")"; $result = $site_db->query_firstrow($sql); $pm_outbox = $result['total']; $sql = "SELECT COUNT(pm_id) AS total FROM ".PM_TABLE." WHERE pm_from = ".$user_info['user_id']." AND (pm_type = ".PM_SENT." OR pm_type = ".PM_RDLT.")"; $result = $site_db->query_firstrow($sql); $pm_sentbox = $result['total']; $sql = "SELECT COUNT(pm_id) AS new FROM ".PM_TABLE." WHERE pm_to = ".$user_info['user_id']." AND (pm_type = ".PM_UNREAD." OR pm_type = ".PM_USDLT.") ORDER BY pm_date DESC"; $result = $site_db->query_firstrow($sql); $pm_new_count = $result['new']; $sql = "SELECT pm_date FROM ".PM_TABLE." WHERE pm_to = ".$user_info['user_id']." AND (pm_type = ".PM_UNREAD." OR pm_type = ".PM_USDLT.") ORDER BY pm_date DESC"; $result = $site_db->query_firstrow($sql); $pm_new = "<a href=\"".$site_sess->url(ROOT_PATH."pm.php")."\">".(($pm_new_count) ? "<blink>".$pm_new_count."</blink>" : 0)."</a>"; $pm = preg_replace("/".$site_template->start."msg_new_count".$site_template->end."/siU", $pm_new, $lang['pm_link']); $pm = preg_replace("/".$site_template->start."inbox".$site_template->end."/siU", "<a href=\"".$site_sess->url(ROOT_PATH."pm.php")."\">".$lang['pm_inbox']."</a>", $pm); $blink = "<script language=\"JavaScript\">\n<!--\nvar flg=0;\nfunction blink(){\nvar myElement=document.getElementById('blnk');\nflg^=1;\nif(flg==1){\nmyElement.style.visibility='hidden';\n}\nelse{\nmyElement.style.visibility='visible';\n}\ntimerID = setTimeout( 'blink()' , 500 );\n}\n//-->\n</script>\n"; $show_inbox = ($pm_new_count) ? $blink."<span id=\"blnk\">".$lang['pm_inbox']."</span><script language=\"JavaScript\">blink();</script>" : $lang['pm_inbox']; $inbox = "<a href=\"".$site_sess->url(ROOT_PATH."pm.php?action=inbox")."\" title=\"".(($pm_new_count) ? $lang['pm_new_messages'].": ".$pm_new_count."\n" : "").$lang['pm_total'].": ".$pm_inbox."\">".$show_inbox."</a>"; $sentbox = "<a href=\"".$site_sess->url(ROOT_PATH."pm.php?action=sentbox")."\" title=\"".$lang['pm_total'].": ".$pm_sentbox."\">".$lang['pm_sentbox']."</a>"; $outbox = "<a href=\"".$site_sess->url(ROOT_PATH."pm.php?action=outbox")."\" title=\"".$lang['pm_total'].": ".$pm_outbox."\">".$lang['pm_outbox']."</a>"; $newpm = "<a href=\"".$site_sess->url(ROOT_PATH."pm.php?action=new")."\">".$lang['pm_new']."</a>"; if ($result && $user_info['user_pm_popup']) { $cookie_name = (defined("COOKIE_NAME")) ? COOKIE_NAME : "4images_"; $cookie_pmnewpopup = isset($HTTP_COOKIE_VARS[$cookie_name.'pmnewpopup']) ? unserialize(stripslashes($HTTP_COOKIE_VARS[$cookie_name.'pmnewpopup'])) : 0; if ($cookie_pmnewpopup < $result['pm_date']) { if (ereg("pm.php", $self_url) && $action == "inbox") { $cookie_expire = time() + 60 * 60 * 24 * 90; setcookie($cookie_name.'pmnewpopup', serialize($result['pm_date']), $cookie_expire, COOKIE_PATH, COOKIE_DOMAIN, COOKIE_SECURE); }elseif (!ereg("pm.php", $self_url) || (ereg("pm.php", $self_url) && ($action == "sentbox" || $action == "outbox"))){ $cookie_expire = gmdate('D, d M Y H:i:s \G\M\T', time() + 60 * 60 * 24 * 90); $pm_popup_script = " <script language=\"JavaScript\"> <!-- function SetCookie (name, value, expire, path, domain, secure) { document.cookie = name + '=' + escape(value) + ((expire)?(';expires=' + expire):'') + ((path)?';path=' + path:'') + ((domain)?';domain=' + domain:'') + ((secure && (secure == true))?'; secure':''); } function confirm_newpm() { input_box=confirm('".$lang['pm_popup_confirm']."'); if (input_box==true) { // Output when OK is clicked second_box=confirm('".$lang['pm_popup_newwindow']."'); if (second_box==true) { SetCookie('".$cookie_name."pmnewpopup','".serialize($result['pm_date'])."','".$cookie_expire."','".COOKIE_PATH."','".COOKIE_DOMAIN."','".COOKIE_SECURE."'); window.open('".$site_sess->url(ROOT_PATH."pm.php")."','pmnew','width=600,height=500,menubar=yes,scrollbars=yes,toolbar=yes,location=yes,directories=yes,resizable=yes,top=50,left=50'); } else { SetCookie('".$cookie_name."pmnewpopup','".serialize($result['pm_date'])."','".$cookie_expire."','".COOKIE_PATH."','".COOKIE_DOMAIN."','".COOKIE_SECURE."'); window.location='".$site_sess->url(ROOT_PATH."pm.php")."'; } } else { SetCookie('".$cookie_name."pmnewpopup','".serialize($result['pm_date'])."','".$cookie_expire."','".COOKIE_PATH."','".COOKIE_DOMAIN."','".COOKIE_SECURE."'); } } // --> </script>"; $pm_popup_header = " onload=\"Javascript:confirm_newpm()\""; } } } } $site_template->register_vars(array( "pm" => $pm, "pm_boxes" => ($inbox) ? $inbox." | ".$sentbox." | ".$outbox." | ".$newpm : "", "pm_inbox" => $inbox, "pm_sentbox" => $sentbox, "pm_outbox" => $outbox, "pm_newpm" => $newpm, "pm_popup_script" => $pm_popup_script, "pm_popup_header" => $pm_popup_header, "bbcode2" => (BBCODE == "bbcode") ? 0 : 1, "pm_inbox_total" => ($pm_inbox) ? $pm_inbox : 0, "pm_outbox_total" => ($pm_outbox) ? $pm_outbox : 0, "pm_sentbox_total" => ($pm_sentbox) ? $pm_sentbox : 0, "pm_new_total" => ($pm_new_count) ? $pm_new_count : 0, "media_url" => MEDIA_PATH, Krok 8 Otwórz plik /includes/db_field_definitions.php i na końcu przed znakiem Kod: ?> dodaj Kod: $additional_user_fields['user_pm_inbox'] = array($lang['pm_user_inbox'], "text", 0); $additional_user_fields['user_pm_sentbox'] = array($lang['pm_user_sentbox'], "text", 0); $additional_user_fields['user_pm_email'] = array($lang['pm_email'], "radio", 0); $additional_user_fields['user_pm_popup'] = array($lang['pm_popup'], "radio", 0); Krok 9 Otwórz przeglądarkę internetową i wykonaj instalacje rozszerzającą bazę danych: pm_install.php Np. http://www.domena.pl/4images/pm_install.php Po zakończonej instalacji, usuń plik pm_install.php Krok 10 Dodaj do stron HTML, Twojego szablonu , według uznania, następujące tegi Opis tegów: Tegi dla użytkowników. {pm_boxes} - blok nawigacyjny: "Skrzynka | Otrzymane | Wysłane | Napisz nową PW" {pm} - blok informacyjny: " masz XX nową(e) wiadomość(i) Tu jest Twoja Skrzynka" Dodatkowe. {pm_inbox} - link do Skrzynki {pm_sentbox} - link do Wysłane {pm_outbox} - link do Otrzymane {pm_newpm} - link do Napisz nową PW {pm_inbox_total} - # wyświetla ogólną ilość wiadomości w Skrzynce {pm_outbox_total} - # wyświetla ogólną ilość wiadomości w Otrzymane {pm_sentbox_total} - # wyświetla ogólną ilość wiadomości w Wysłane {pm_new_total} - # wyświetla ogólną ilość nowych wiadomości Krok 11 Otwórz plik /member.php i odszukaj Kod: $site_template->register_vars(array( "user_id" => $user_row['user_id'], "user_name" => (isset($user_row['user_name'])) ? htmlspecialchars($user_row['user_name']) : REPLACE_EMPTY, i za nim dodaj Kod: "lang_pm" => ($user_info['user_id'] != $user_row['user_id']) ? "<a href=\"".$site_sess->url(ROOT_PATH."pm.php?action=new&user_id=".$user_row['user_id'])."\">".$lang['pm_user_pm_alt']."</a>" : "", Krok 12 Otwórz plik /details.php i odszukaj Kod: $sql = "SELECT c.comment_id, c.image_id, c.user_id, c.user_name AS comment_user_name, c.comment_headline, c.comment_text, c.comment_ip, c.comment_date".get_user_table_field(", u.", "user_level").get_user_table_field(", u.", "user_name").get_user_table_field(", u.", "user_email").get_user_table_field(", u.", "user_showemail").get_user_table_field(", u.", "user_invisible").get_user_table_field(", u.", "user_joindate").get_user_table_field(", u.", "user_lastaction").get_user_table_field(", u.", "user_comments").get_user_table_field(", u.", "user_homepage").get_user_table_field(", u.", "user_icq")." i zmień go na Kod: $additional_sql = ""; if (!empty($additional_user_fields)) { $table_fields = $site_db->get_table_fields(USERS_TABLE); foreach ($additional_user_fields as $key => $val) { if (isset($table_fields[$key])) { $additional_sql .= ", u.$key"; } } } $sql = "SELECT c.comment_id, c.image_id, c.user_id, c.user_name AS comment_user_name, c.comment_headline, c.comment_text, c.comment_ip, c.comment_date".get_user_table_field(", u.", "user_level").get_user_table_field(", u.", "user_name").get_user_table_field(", u.", "user_email").get_user_table_field(", u.", "user_showemail").get_user_table_field(", u.", "user_invisible").get_user_table_field(", u.", "user_joindate").get_user_table_field(", u.", "user_lastaction").get_user_table_field(", u.", "user_comments").get_user_table_field(", u.", "user_homepage").get_user_table_field(", u.", "user_icq").get_user_table_field(", u.", "user_id").$additional_sql." odszukaj Kod: "comment_id" => $comment_row[$i]['comment_id'], i za nim dodaj Kod: "comment_user_pm" => ($config['pm'] && $comment_row[$i]['user_id'] != GUEST && $user_info['user_level'] > GUEST && $user_info['user_id'] != $comment_row[$i]['user_id']) ? "<a href=\"".$site_sess->url(ROOT_PATH."pm.php?action=quote&mode=comment&id=".$comment_row[$i]['comment_id']."&user_id=".$comment_row[$i]['user_id'])."\" /><img src=\"".get_gallery_image("pm.gif")."\" border=\"0\" alt=\"".$lang['pm_user_pm_alt']."\" /></a>" : "", Krok 13 1. Otwórz plik /templates/<twoj_szablon>/member_profile.html i dodaj w dogodnym miejscu teg {lang_pm} 2. Otwórz plik /templates/<twoj_szablon>/comment_bit.html i dodaj w dogodnym miejscu teg {comment_user_pm} Krok 14 Otwórz plik /templates/<twoj_szablon>/member_editprofile.html i do istniejącej tabeli wklej fragment tej tabeli Kod: <tr> <td class="row2"><b>{lang_user_pm_email}</b></td> <td class="row2"> <input type="radio" name="user_pm_email" value="1"{user_pm_email_yes} /> {lang_yes} <input type="radio" name="user_pm_email" value="0"{user_pm_email_no} /> {lang_no} </td> </tr> <tr> <td class="row1"><b>{lang_user_pm_popup}</b></td> <td class="row1"> <input type="radio" name="user_pm_popup" value="1"{user_pm_popup_yes} /> {lang_yes} <input type="radio" name="user_pm_popup" value="0"{user_pm_popup_no} /> {lang_no} </td> </tr> Krok 15 Otwórz plik /templates/<twoj_szablon>/header.html 1. Między znacznikami <head> i </head>, dodaj teg {pm_popup_script} 2. W znaczniku <body> dodaj teg {pm_popup_header} (np. <body {pm_popup_header} ... >) Krok 16 W pliku /templates/<twoj_szablon>/style.css na samym końcu dodaj Kod: .msg0 { background-color: #FFCECE; color: #2F6B9D; } .msg1 { background-color: #CEFFDD; color: #2F6B9D; } .msg_good { background-color: #CEFFDD; font-weight: bold; border: 1px solid #5E6C80; padding: 3px 3px 3px 3px ; margin: 3px 0px 3px 0px ; } .msg_error { background-color: #FFCECE; font-weight: bold; border: 1px solid #5E6C80; padding: 3px 3px 3px 3px ; margin: 3px 0px 3px 0px ; } .msg_plain { background-color: transparent; font-weight: bold; border: 1px solid #5E6C80; padding: 3px 3px 3px 3px ; margin: 3px 0px 3px 0px ; } /*--BBCode--------------------------------------------------*/ input.bbcbutton { background-color : #EFEFEF; color : #000000; font-size: 11px; font-family: Verdana, Arial, Helvetica, sans-serif; } .helpline { width: 300px; height: 30px; overflow: hidden; background-color: transparent; border-style: none; font-family: Verdana,Tahoma,Arial,Helvetica,sans-serif; font-size : 10px; color: #666666; } div.quotehead { font-size: 11px; color: black; padding: 0px 24px 0px 24px ; } div.quoteblock { border: 1px solid #5E6C80; font-size: 10px; padding: 8px 8px 8px 8px ; } div.codehead { font-size: 11px; color: black; padding: 0px 24px 0px 24px ; } div.codeblock { border: 1px solid #5E6C80; font-family: Courier, 'Courier New', sans-serif; font-size: 10px; padding: 8px 8px 8px 8px ; background-color: #F5F5F5; white-space: pre; } Krok 17 Otwórz plik details.php i odszukaj Kod: "comment_headline" => format_text($comment_row[$i]['comment_headline'], 0, $config['wordwrap_comments'], 0, 0), "comment_text" => format_text($comment_row[$i]['comment_text'], $config['html_comments'], $config['wordwrap_comments'], $config['bb_comments'], $config['bb_img_comments']), i zmień go na Kod: "comment_headline" => format_text($comment_row[$i]['comment_headline'], 0, $config['wordwrap_comments'], 0, 0, 1, 1), "comment_text" => format_text($comment_row[$i]['comment_text'], $config['html_comments'], $config['wordwrap_comments'], $config['bb_comments'], $config['bb_img_comments'], 1 , 1), Krok 18 Otwórz plik logout.php i odszukaj Kod: if (!ereg("index.php", $url) && !ereg("lightbox.php", $url) && !ereg("login.php", $url) && !ereg("register.php", $url) && !ereg("member.php", $url)) { zmień go na Kod: if (!ereg("index.php", $url) && !ereg("lightbox.php", $url) && !ereg("login.php", $url) && !ereg("register.php", $url) && !ereg("member.php", $url) && !ereg("pm.php", $url)) { Gotowe Jak już wcześniej wspomniałem instalacja nie jest prosta, daltego proszę o dokładne prześledzenie instrukcji instalacji. MOD z pewnością będzie przydatny w galeriach gdzie jest dużo użytkowników. Życze udanej instalacji Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: Giovanni Listopad 14, 2006, 22:44:10 Wielki ukłon dla Andreoida za wspaniale funkcjonujący mod :)
Z takim szczegółowym opisem nie można raczej niczego pomylić :) Mam jedno pytanko Stronki które zostały dodane albo przykładowo tekst: masz » 0 now?(e) wiadomo�?(i) tu jest Twoja Skrzynka. Nie wyświetla polskich czcionek gdzie to można zmienić ?? Pozdrawiam :) Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: andreoid Listopad 14, 2006, 23:08:12 Dzięki za miłe słowo.
Wszelkie zmiany w opisach możesz dokonać w pliku main.php ścieżka /lang/polish/main.php Opis dotyczący Prywatnych wiadomości zaczyna się od: Kod: //----------------------------------------------------- //--- PM (Private Messenging) ------------------------- //----------------------------------------------------- a dokładnie chodzi o ten kod Kod: $lang['pm_link'] = " masz<br />» <b>{msg_new_count}</b> nową(e) wiadomość(i)<br /> tu jest Twoja <b>{inbox}</b>."; Ale ten problem nie jest chyba związany z tym kodem. Zresztą ciężko mi się odnieść do tego, bo nieznam kodu źródłowego strony, na której znajduje się ten kod. Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: Giovanni Listopad 15, 2006, 09:03:03 Dziękuje za pomoc :)
Faktycznie problem nie był związany z tą linijką tekstu tylko z kodowaniem mojej strony zmienilem na "charset=windows-1250" i jest wszystko ok :) Bynajmniej mam taką nadzieję :) Pozdr :) Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: Giovanni Listopad 15, 2006, 11:22:04 Dzi?kuje za pomoc :) Faktycznie problem nie był związany z tą linijka tekstu tylko z kodowaniem mojej strony zmienilem na "charset=windows-1250" i jest wszystko ok :) Bynajmniej mam taką nadzieję :) Pozdr :) Hmmmm Pochwaliłem dzień przed zachodem słońca teraz to dopiero mam namieszane i wiem że bez pomocy Wielkiego Andreoida sam sobie nie poradzę !! :( HELP !! Mod działa świetnie i jest ok wszystko ale wchodząc do panelu kontrolnego (http://lan.tcz.pl/pic/screen.gif) Wyskakują jakieś informacje które po zmianie i tak nie przynoszą efektu :( Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: andreoid Listopad 15, 2006, 11:38:02 Faktycznie występuje taki błąd i związane jest to z zabezpieczeniem spamowym.
Aktualizacja dotyczy wersji 1.7.2 / 1.7.3 / 1.7.4 Dokonaj następującej zmiany: Otwórz plik includes/functions.php, odszukaj Kod: } $text = str_replace("[hr]", "<hr>", $text); } $text = replace_url($text); if ($word_wrap && $text != "") { $text = preg_replace("/([^\n\r ?&\.\/<>\"\\-]{".$word_wrap."})/i", " \\1\n", $text); } $text = str_replace("\n", "<br />", $text); $text = str_replace("\\'", "'", $text); $text = str_replace("\\\"", """, $text); return replace_badwords(stripslashes($text)); } i zmień go na Kod: } $text = str_replace("[hr]", "<hr>", $text); } if ($html !== 2) { $text = nl2br(trim($text)); $text = replace_url($text); } if ($word_wrap && $text != "") { $text = preg_replace("/([^\n\r ?&\.\/<>\"\\-]{".$word_wrap."})/i", " \\1\n", $text); $text = replace_badwords($text); } $text = str_replace("\n", "<br />", $text); $text = str_replace("\\'", "'", $text); $text = str_replace("\\\"", """, $text); return $text; } Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: Giovanni Listopad 15, 2006, 11:52:42 Działa perfekcyjnie !! :)
Wiedziałem że sam na pewno sobie z tym nie poradzę. Wielkie PODZIĘKOWANIA dla Andreoida za pomoc. I ukłon dla jego ogromnej wiedzy !! Pozdr :) Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: ones Listopad 16, 2007, 09:49:40 Gdy wybierzemy aby otwierało się okienko pop-up na górze strony widnieje mały napis:
Kod: onload="Javascript:confirm_newpm()" A okienko nie otwiera się... Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: andreoid Listopad 26, 2007, 08:17:57 Witam
Nic mi nie mówi opis tego problemu, proszę podać link do galerii. pozdrawiam Tytuł: Odp: MOD - Prywatne wiadomości + BBcode2 Wiadomość wysłana przez: muody_ Marzec 13, 2008, 18:00:17 Witam.
Zrobilem wszystko krok po kroku tak jak podal Pan Andreoid :) i wyskakują mi blędy na gorze strony: Notice: Undefined variable: pm_popup_header in /includes/page_header.php on line 176 Notice: Undefined variable: pm_inbox in /includes/page_header.php on line 178 Notice: Undefined variable: pm_outbox in /includes/page_header.php on line 179 Notice: Undefined variable: pm_sentbox in /includes/page_header.php on line 180 Notice: Undefined variable: pm_new_count in /includes/page_header.php on line 181 Wyskakują one tylko na stronie search.php. Z góry powiem, że nie interesuje mnie wyskakujące okienko mowiące o nowej wiadomości. Korzystam z szablonu 7dana. Link do strony z błędami: http://nasza-lawka.pl/search.php (http://nasza-lawka.pl/search.php) Dziękuję z góry za pomoc i szybką odpowiedź. |