-
Postów
21 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Pliki
Galeria
Blogi
Sklep
Wydarzenia
Odpowiedzi opublikowane przez eider
-
-
Informacja dla przyszłych: 1.4.0 ma zepsute to ustawienie i w ogóle nie wyświetla tego formatowania.
-
Na FTP edytujesz plik conf_global.php i dodajesz:
$INFO['sql_charset'] = 'utf8';
-
Wersja 1.3.12 ma to po prostu zwalone. Sam to przerabiałem. Pobierz nową darmową wersję: http://community.invisionpower.com/index.php?app=downloads&module=display§ion=file&id=5955
-
Nie wygląda za dobrze. Musisz sam się pobawić w stylu. Jesteś pewien, że ten styl jest kompatybilny z IPB 3.3.4? Ewentualnie zawsze możesz przywrócić lub porównać zmiany. To co będzie Cie najpierw interesować to na pewno boardIndexTemplate w Strona główna
- 1
-
Problem pojawia się tylko gdy AdTaily dodaje nietypowe znaki. Przed chwilą otrzymałem od nich odpowiedź z której wynika jednoznacznie, że leją na ten problem ciepłym moczem. Podobnie zresztą jak IPS które odsyła mnie do AdTaily
-
Witam, chciałbym się dowiedzieć jak domyślnie wyłączyć wszystkim rozbudowany edytor tekstu?Uwagi: Szybka edycja nie działa po tym zabiegu
Ale chyba tu chodzi o wyłączenie edytora a nie szybkiej odpowiedzi...
Brak szybkiej edycji to efekt uboczny usunięcia CKEditora. Zamiast niego wszędzie będzie się pojawiać czyste pole tekstowe ;-)
Jeżeli zaś chodzi o Twój problem wychowany to na pewno już gdzieś go opisywałem, ale dam jeszcze raz:
Lecimy szybko do Wygląd->Twój styl->Edytor i szukamy editorSettings. Szukamy:
<input type='checkbox' class='input_check' id='pastePlain' <if test="$this->memberData['bw_paste_plain']">checked="checked"</if> name="pastePlain" value="1" /> <label for='pastePlain'>{$this->lang->words['editor_paste']}</label>
Zamieniamy na:
<input type='checkbox' class='input_check' id='pastePlain' checked="checked" name="pastePlain" value="1" disabled="disabled" /> <label for='pastePlain'>{$this->lang->words['editor_paste']}</label>
Teraz wybieramy editorLoadJs i szukamy:
CKEDITOR.config.CmdVAsPlainText = <if test="hasPastePlain:|:$this->memberData['bw_paste_plain']">true<else />false</if>;
Zamieniamy na:
CKEDITOR.config.CmdVAsPlainText = true;
Po tym zabiegu formatowanie już nie powinno się walić na naszym forum a wklejany tekst będzie zawsze bez formatowania :-)
-
Support IPS zamknął zgłoszenie jako "Not a bug" i twardo twierdzi, że to wina AdTaily. AdTaily natomiast ma to głęboko w tyle i nie odpisuje na kolejne wiadomości, więc mamy błędne koło i raczej nie ma co liczyć na szybkie rozwiązanie.
-
Style->Edytor i szukasz editor
Zamieniasz:
bypassCKEditor: {parse expression="intval( $options['bypassCKEditor'] )"},
na:
bypassCKEditor: {parse expression="intval( 1 )"},
Uwagi: Szybka edycja nie działa po tym zabiegu
-
Sprawdź podany plik ;-) Najpewniej jakieś gówno siedzi na samym początku kodu, może nawet Twój "wirus" opisany w innym temacie. Sam błąd oznacza, że nagłówki zostały już wysłane do klienta, ale skrypt próbuje je zmodyfikować (np. nowa sesja, ciasteczko etc). W razie dalszych problemów pisz tutaj lub na PW jak będziesz mieć jakieś głębsze pytania (lub trywialne), chętnie pomogę Ci pozbyć się tego gówna.
Przykład:
<?php echo 'test'; session_start(); ?>
Ale wiele zależy od konfiguracji PHP, bo można tak je skonfigurować, aby nagłówki wysłane były dopiero po całkowitym przerobieniu skryptu.
-
Odpowiedź od AdTaily:
Witam serdecznie!W cookie widget AdTaily zapisuje tylko dozwolone znaki (zgodne z RFC). Znak "%" jest dozwolonym znakiem. Zresztą już po wejściu na losowy temat http://fullserver.eu/topic/2037-typowanie-wynik%C3%B3w/ w document.cookie znajdziemy zapisane dane:
"tapatalk_redirect4=false; modtids=%2C"Jak widać nie tylko skrypt AdTaily zapisuje znak %.
Pozdrawiam,maciej.wiszowaty
Community Manager
AdTailyObawiam się, że nie liczą się z tym problemem, ale zobaczymy jak dalej się to pociągnie. %F3 to znak 'ó' dlatego też freamwork IP.Board się wywala. Zamiana Krak%F3w na Krak%2Cw pomaga.
-
Odesłali mnie do AdTaily. Napisałem im tam. Jak coś się ruszy to napiszę.
-
Z tego co patrzyłem to ten tekst 'Editor Options' jest obecnie nie do przetłumaczenia w normalny sposób.
-
Tak. Sprawdzałem dobrze. Funkcja którą podajesz nie jest wykonywana, a przynajmniej nie w moim IPB 3.4.1 ;-) Do teraz nie wiem co błąd powodowało bo nie bawiłem się w debugowanie. Natomiast podam rozwiązanie na wypadek gdyby ktoś miał kiedyś podobny problem.
Idziemy do /admin/sources/classes/member i otwieramy plik memberFunctions.php. Szukamy w nim funkcji updateName, to ona odpowiada za zmianę nazwy. Szukamy tam:
if ( $this->checkNameExists( $name, $member, $field ) === TRUE ) { throw new Exception( "USER_NAME_EXISTS" ); }
i zamieniamy na:
$this->DB->build( array( 'select' => "{$field}, member_id", 'from' => 'members', 'where' => $field . "='". $this->DB->addSlashes( strtolower($name) )."' AND member_id != ".$member_id, 'limit' => array( 0,1 ) ) ); $this->DB->execute(); if ( $this->DB->getTotalRows() ) { throw new Exception( "USER_NAME_EXISTS" ); }
To tyle ;-) Teraz troszkę rozważań: funkcja checkNameExists z memberFunctions.php wydaje się nieprawidłowo wywoływać sprawdzanie nazwy (a może autorzy w nowej wersji pomylili nazwy? Wszak te w różnych plikach różnią się jedynie kolejnością "name"). W każdym razie funkcja którą podałeś DawPi pochodzi z auth.php i nigdy nie jest wywoływana przez skrypt zmiany nazwy wyświetlanej w profilu. Zamiast niej wywoływana jest dosyć spora funkcja
/** * Check for an existing display or user name * * @access public * @param string Name to check * @param array [ Optional Member Array ] * @param string name or members_display_name * @param bool Ignore display name changes check (e.g. for registration) * @param bool Do not clean name again (e.g. coming from cleanAndCheckName) * @return mixed Either an exception or ( true if name exists. False if name DOES NOT exist ) * Error Codes: * NO_PERMISSION This user cannot change their display name at all * NO_MORE_CHANGES The user cannot change their display name again in this time period * NO_NAME No display name (or shorter than 3 chars was given) * ILLEGAL_CHARS The display name contains illegal characters */ public function checkNameExists( $name, $member=array(), $field='members_display_name', $ignore=false, $cleaned=false )
Nie doszedłem i nie mam zamiaru dochodzić (brak czasu) gdzie funkcja się wywala, ale dodanie "return FALSE;" w środku nie daje efektu, a na początku daje, więc zapewne gdzieś na samym początku się wykrzacza. W każdym razie na pewno nie dochodzi do tej części kodu:
//----------------------------------------- // Check for existing name. //----------------------------------------- /* Load the handler if it's not present */ if( ! $this->han_login ) { $classToLoad = IPSLib::loadLibrary( IPS_ROOT_PATH . 'sources/handlers/han_login.php', 'han_login' ); $this->han_login = new $classToLoad( $this->registry ); $this->han_login->init(); } $this->han_login->nameExistsCheck( $name, $member, $checkField ); if( $this->han_login->return_code AND $this->han_login->return_code != 'METHOD_NOT_DEFINED' AND $this->han_login->return_code != 'NAME_NOT_IN_USE' ) { return TRUE; } $this->DB->build( array( 'select' => "{$field}, member_id", 'from' => 'members', 'where' => $checkField . "='" . $this->DB->addSlashes( strtolower($name) ) . "'" . ( $member['member_id'] ? " AND member_id != " . $member['member_id'] : '' ), 'limit' => array( 0,1 ) ) ); $this->DB->execute();
Zaznaczam, że pliki IPB mam oryginalne, nawet wgrywałem je drugi raz specjalnie dla pewności ;-)
- 1
-
Aktywna jest tylko IPB Internal. Converter jest wyłączona, ale jej włączenie nic nie zmienia. Zaznaczę, że konwersje wykonywałem na wersji 3.1 i później aktualizowałem forum do 3.4. Konwersje wykonywałem na 3.1 ponieważ konwerter pod 3.4 gubił strukturę działów z niewiadomych przyczyn. Podczas aktualizacji forum usunąłem aplikację konwertera, a więc jego dane zostały usunięte (m.in stare hasła zapisane w formacie SMF czy też dane potrzebne do przekierowania linków), ale raczej nie powinno mieć to wpływu na nazwy wyświetlane. Integracje z Facebookiem jest aktywna, ale jej wyłączenie nie zmienia nic.
-
Jedyne co widzę w panelu użytkownika to: http://i.imgur.com/Wd7h2.png
Logi administracyjne milczą :-) Jak pisałem w pierwszym poście, bawiłem się już tym pliczkiem PHP i wygląda na to, że wywala się gdzie indziej. Gdzie? Nie mam pojęcia, ale catch() które normalnie łapie błędy nie wykonuje się
-
Zapytanie o nazwę wyświetlaną na jaką chciałem zmienić zwraca zero wyników :-) " SELECT * FROM `fs_members` WHERE name='nie_ma_tego' OR members_display_name='nie_ma_tego' ". Jestem pewien, że nie ma takich nazw, bo wpisałem nawet "njdsjehffhoki" ;-) Zresztą jak pisałem, po włączeniu trybu debugowania w ustawieniach nie widzę zapytania do bazy o tą nazwę
-
Czy ktoś kiedykolwiek spotkał się na swoim forum z takowym problemem, że gdy użytkownik w swoich ciasteczkach ma jakieś od AdTaily to zwijanie działów i edytor tekstu nie działa. Przeglądając internet natrafiłem na parę podobnych problemów na jakiś sieciach CS. Problem powoduje dokładnie cookies o nazwie '__adtaily_loc_city'. Jego treść ustawiana jest w moim wypadku na 'Krak%F3w' co powoduje nieznane dalej problemy w skryptach JS od IPS. Po zmianie na 'Krakow' problem znika ;-) Czy ktoś wie może gdzie szukać problemu w plikach forum?
- 1
-
Na przyszłość polecam znaleźć odpowiednie "bity" (kto to tak nazwał?) w szablonie i porównać różnicę ;-) Gwarantuję, że już nie będziesz musiał pisać tutaj na forum
-
Typowe. Błąd pojawia się przy kopiowaniu tekstu który jest w [ code ]. Formatowanie wtedy zostaje i wszystko się wali. Niestety jak na razie nie widzę, żeby ktoś miał zamiar się tym zająć :/ W międzyczasie polecam prostą modyfikację która zablokuje wklejanie tekstu wraz z formatowaniem do edytora (chyba, że zostanie użyta opcja Wklej z programu Word):
Wygląd > Zarządzaj stylami i szablonami i wybierz swój styl. Następnie znajdź Edytor i w editorSettings zamień:
<input type='checkbox' class='input_check' id='pastePlain' <if test="$this->memberData['bw_paste_plain']">checked="checked"</if> name="pastePlain" value="1" /> <label for='pastePlain'>{$this->lang->words['editor_paste']}</label>
na:
<input type='checkbox' class='input_check' id='pastePlain' checked="checked" name="pastePlain" value="1" disabled="disabled" /> <label for='pastePlain'>{$this->lang->words['editor_paste']}</label>
Teraz znajdź editorLoadJs i zamień:
CKEDITOR.config.CmdVAsPlainText = <if test="hasPastePlain:|:$this->memberData['bw_paste_plain']">true<else />false</if>;
na:
CKEDITOR.config.CmdVAsPlainText = true;
W akcie desperacji możesz też całkowicie wyłączyć ten nowy edytor, ale wówczasz opcja szybkiej edycji nie będzie działać :-) Aby to zrobić znajdź editor i zamień:
bypassCKEditor: {parse expression="intval( $options['bypassCKEditor'] )"},
na:
bypassCKEditor: {parse expression="intval( 1 )"},
- 1
-
Mam forum na IPB 3.4.1. Po wykonaniu konwersji z SMF wszystko działa pięknie. Polskie znaki ogarnięte, etc etc. Problem jest jeden: forum na złość nie pozwala zmienić nazwy wyświetlanej użytkownika. Cokolwiek bym tam wpisał zawsze powie, że jest to używane. Problem jest o tyle dziwny, że po włączeniu debugowania nie widzę zapytań do bazy o tą nazwę użytkownika! Jedyne ślady tego, że coś się dzieje widać w: makeSeoTitle (nie-ma-tego) called i SELECT COUNT(*) as count, MIN(dname_date) as min_date FROM fs_dnames_change WHERE dname_member_id=11934 AND dname_date > 1355788071 AND dname_discount=0. Po tym zapytaniu nie ma już żadnego. Jako, że nie jestem byle użytkownikiem temat obadałem bardzo dokładnie przed napisaniem tutaj. Sprawdzałem i próbowałem debugować różne rzeczy w plikach, ale bez skutku. Plik którym się najwięcej bawiłem to usercpForms.php w core. Dokładnie chodzi o public function saveFormDisplayname() która wykonuje większość roboty. Czyli sprawdza czy formularz nie jest pusty, czy hasło jest poprawne itp. Tutaj wszystko przechodzi ładnie. Problem zaczyna się od try() i przechodzi dalej do catch().
if ( IPSMember::getFunction()->updateName( $this->memberData['member_id'], $members_display_name, 'members_display_name' ) === TRUE ) { $this->cache->rebuildCache( 'stats', 'global' ); return $this->showFormDisplayname( '', $this->lang->words['dname_change_ok'] ); } else { # We should absolutely never get here. So this is a fail-safe, really to # prevent a "false" positive outcome for the end-user return array( 0 => $this->lang->words['name_taken_change'] ); }
Poprzez prostą zabawę "return array( 0 => $this->lang->words['name_taken_change'] );" i podmienianiem tego tekstu na inny doszedłem do wniosku, że nasz fail-safe nie wykonuje się. Tak więc przechodzimy dalej do catch(). Po przejściu przez masę innych błędów, które na pewno się nie wykonują dochodzimy do USER_NAME_EXISTS. Zamiana words['name_change_taken'] na words['current_pw_bad'] nie dała oczekiwanego efektu, a więc mamy pierwszy znak zapytania. Dalej mamy jeszcze default jak przystało na każdy switch. Tam jest funkcja getMessage(), ale jej podmiana na return array( 0 => $this->lang->words['current_pw_bad'] ); nie dała niestety także żadnego efektu. Tutaj mamy drugi znak zapytania. Skoro nie wykonał się fail-safe, nie wykonał się updateName() i catch ze switchem nie zwraca żadnych błędów to gdzie mam szukać błędu?
Oczywiście mógłbym pomyśleć, że to wina konwersji i coś jest nie tak, ale pola się zgadzają, po za tym nie widzę zapytania które odpytywało by bazę o nową nazwę (a powinienem, patrząc na funkcję updateName()
Zmiana nazwy wyświetlanej... (pierwszy błąd w 3.4.2)
w Błędy spolszczeń
Opublikowano · Edytowane przez eider
core/public_usercp/dname_string:
Zmiana nazwy wyświetlanej <strong>nie</strong> wpływa na dane logowania. duplikuje się z core/public_usercp/dname_string2
Dodatkowo nie potrzebnie umieszczone jest słowo "jeszcze". Poprawiony tekst: