Перейти к контенту

pikachu

Пользователи
  • Число публикаций

    578
  • Регистрация

  • Последнее посещение

Личная информация

Дополнительные

  • Пол
    Мужчина
  • Город
    Интернет

Недавние посетители профиля

4 914 просмотров профиля

Достижения pikachu

  1. Мод не тестировался на семействе Joomla 1.5.x, т.к в то время не было оного для теста. Как я понял, авторизация по e-mail требуется только на форуме? Тип входа (e-mail, login) меняется в админпанели форума. Для доступа в админцентр форума нужно, чтобы id администратора IPB было таким же, как id администратора Joomla, желательно вообще id1. Больше помочь ничем не могу, т.к уже не занимаюсь ни ipb, ни joomla.
  2. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    Sannis: Жаль, что нам не удалось в асе пообщаться... Вообщем проблема в следующем: Были сделаны изменения в файлах для этой модификации с 0 (редактируемые файлы были взяты из дистрибутива). В браузерах Firefox, IE8, Opera (последних версиях), при нажатии кнопки Отправить появляется аяксовая надпись: "Подождите, идёт загрузка новых сообщений", потом убирается форма быстрого ответа и на этом всё висит. После рефреша страницы - сообщение появляется в теме. Окно джаваошибок молчит. Я прочитал, что мод для версии ипб 2.3.х, но все исправления были сделаны согласно инструкции и вроде должно было работать Причем если нажимать на кнопку "Загрузить новые сообщения", то процедура проходит корректно. Работает как нужно. Проблема только при отправке нового сообщения.
  3. pikachu

    Интеграция IPB 1.x.x/2.0.x с Mambo 4.5.x.x/Joomla 1.0.x

    Нет, человек должен логиниться и на сайте и на форуме. Интеграция просто создает 2 учетные записи в базе сайта и в базе форума.
  4. писал уже. нужно скачать мод для версии ипб 2.0.х и оттуда скрипт запустить для переноса пользователей из базы форума в базу сайта (сделав необходимые изменения)
  5. pikachu

    Ваш хостер

    1) хостинг-центр рбк, hc.ru, "большой" 2) уникальных в сутки 400-600, на форуме Зарегистрировано пользователей: 8,820 3) На форуме сообщений: 301,944 4) 16mb/ php 4.4.2/ mysql 4.1.22 5) отвечают часто - но проблемы решать не склонны. 6) на их хостинге вываливается internal server error при попытке открыть личное сообщение или сделать выборку по сообщениям пользователя. причем доказано, что это их проблема, так как форум заливал к себе локально и поднимал через appserv - и всё работало. Бывает, что сайт с форумом вываливается с ошибкой с max_allow_connections и он может быть недоступен полдня. У предыдущего хостера такого небыло, равно как и проблемы с internal server error. эх..если бы хостинг руцентра увеличили места на тарифах не неделю назад, а в конце ноября - я бы у них остался ps: вспомнил про пункт 0.. в остальном работой доволен - когда всё работает, то работает очень шустро.
  6. pikachu

    Кодировка и совместимость ???

    Отредактируйте файл настроек журнала .xml (название непомню), там в начале измените windows-1251 на utf-8 и заново залейте настройки. должно помочь.
  7. http://vh1-clips.ifolder.ru/4813931 перевел кое-как ланг файл. за перевод не пинайте. понятия не имел о чем он, да и вообще 2 часа ночи на улице =) соответственно закинуть сей файл в папку /tracker/language
  8. pikachu

    хостинг для Invision Power Board

    Сейчас свой проект держу на hc.ru (хостинг рбк), тариф на 5гб. Шустро летает и cms-сайт и форум ipb 2.2.2 с 400000 записями в мускуле (посетителей примерно 500-700 человек в сутки). Вообщем пока нареканий нет - саппорт адекватный, реагируют быстро.
  9. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    Это из инструкции, которую я качал буквально 2-3 дня назад. Сейчас поменяю на вчерашнюю. Флуд получается какой-то... Вообщем поставил то, что качал вчера: //----------------------------------------- // (SnS) AJAX Fast Reply //----------------------------------------- function fast_reply_post() { //----------------------------------------- // Convert unicode //----------------------------------------- $_POST['Post'] = $this->convert_unicode( $_POST['Post'] ); if( strtolower($this->ipsclass->vars['gb_char_set']) != 'iso-8859-1' && strtolower($this->ipsclass->vars['gb_char_set']) != 'utf-8' ) { if ( array_key_exists( strtolower($this->ipsclass->vars['gb_char_set']), $this->decode_charsets ) ) { $this->ipsclass->vars['gb_char_set'] = $this->decode_charsets[strtolower($this->ipsclass->vars['gb_char_set'])]; $_POST['Post'] = html_entity_decode( $_POST['Post'], ENT_NOQUOTES, $this->ipsclass->vars['gb_char_set'] ); } } //----------------------------------------- // Init input //----------------------------------------- $this->ipsclass->input['fast_reply_used'] = 1; $_POST['fast_reply_used'] = 1; $this->ipsclass->input['sns_fast_reply_used'] = 1; //----------------------------------------- // Load and run post class //----------------------------------------- require_once( ROOT_PATH.'sources/action_public/post.php' ); $post = new post(); $post->ipsclass =& $this->ipsclass; $post->auto_run(); $pid = $post->han_post->class_post->post['pid']; if( $this->ipsclass->vars['post_order_column'] != 'post_date' ) { $this->ipsclass->vars['post_order_column'] = 'pid'; } if( $this->ipsclass->vars['post_order_sort'] != 'desc' ) { $this->ipsclass->vars['post_order_sort'] = 'asc'; } if( $this->ipsclass->vars['post_order_sort'] == 'desc' ) { if( $this->ipsclass->input['st'] != 0 ) { $this->return_string('show_last'); } } else { if( $pid > 0 ) { $blah = $this->ipsclass->DB->simple_exec_query(array('select' => 'COUNT(*) as posts', 'from' => 'posts', 'where' => 'topic_id='.$post->han_post->class_post->topic['tid'].' AND pid <= '.$post->han_post->class_post->post['pid'])); $pcount = $blah['posts']; if( ($pcount % $this->ipsclass->vars['display_max_posts']) == 0 ) { $pages = ($pcount) / $this->ipsclass->vars['display_max_posts']; } else { $number = (($pcount) / $this->ipsclass->vars['display_max_posts']); $pages = ceil($number); } $st = ($pages - 1) * $this->ipsclass->vars['display_max_posts']; if( $st != $this->ipsclass->input['st'] ) { $this->return_string('show_last'); } } else { $this->return_string('error'); } } //----------------------------------------- // Load and init topics class //----------------------------------------- require_once( ROOT_PATH.'sources/action_public/topics.php' ); $topics = new topics(); $topics->ipsclass =& $this->ipsclass; $topics->post_count = intval($pcount); $topics->init(); $topics->topic_set_up(); //----------------------------------------- // Get post //----------------------------------------- if( $post->han_post->class_post->is_merging_posts ) { //----------------------------------------- // Prep for display //----------------------------------------- $html = $post->han_post->class_post->show_post_preview( $post->han_post->class_post->new_post ); //----------------------------------------- // Showing reason for edit? //----------------------------------------- if ( $this->ipsclass->member['g_is_supmod'] OR $post->han_post->class_post->moderator['edit_post'] ) { if ( $post->han_post->class_post->post_edit_reason ) { $html .= "\n<div class='post-edit-reason'> {$this->ipsclass->lang['reason_for_edit']}: {$post->han_post->class_post->post_edit_reason} </div>"; } } $html = $html . "\n" . '<!--IBF.ATTACHMENT_' . $pid . '-->'; //----------------------------------------- // Grab render attach class //----------------------------------------- if ( !is_object( $post->han_post->class_post->class_attach ) ) { require_once( ROOT_PATH . 'sources/classes/attach/class_attach.php' ); $post->han_post->class_post->class_attach = new class_attach(); $post->han_post->class_post->class_attach->ipsclass =& $this->ipsclass; } $this->ipsclass->load_template( 'skin_topic' ); $post->han_post->class_post->class_attach->type = 'post'; $post->han_post->class_post->class_attach->init(); $html = $post->han_post->class_post->class_attach->render_attachments( $html, array( $pid => $pid ) ); if ( $post->han_post->class_post->post['append_edit'] == 1 AND $post->han_post->class_post->post['edit_time'] AND $post->han_post->class_post->post['edit_name'] ) { $e_time = $this->ipsclass->get_date( $post->han_post->class_post->post['edit_time'] , 'LONG' ); $html .= "<br /><br /><span class='edit'>".sprintf($this->ipsclass->lang['edited_by'], $post->han_post->class_post->post['edit_name'], $e_time)."</span>"; } $match = array(); $js = ''; preg_match_all('/fix_linked_image_sizes_attach_thumb\(.*?\);/is', $html, $match); for ( $i=0; $i < count($match); $i++ ) { $js .= $match[$i][0]."\n"; } //$js .= 'fix_linked_image_sizes();'; } else { $raw_post = $post->han_post->class_post->post['post']; if ($this->ipsclass->vars['au_cutoff'] == '') { $this->ipsclass->vars['au_cutoff'] = 15; } if ($this->ipsclass->vars['custom_profile_topic'] == 1) { $query_type = 'topics_get_posts_with_join'; } else { $query_type = 'topics_get_posts'; } if (!in_array('skin_topic', $this->ipsclass->compiled_templates)) { $this->ipsclass->load_template('skin_topic'); } $this->ipsclass->DB->cache_add_query($query_type, array('pids' => array($post->han_post->class_post->post['pid']), 'scol' => $this->ipsclass->vars['post_order_column'], 'sord' => $this->ipsclass->vars['post_order_sort'])); $o = $this->ipsclass->DB->simple_exec(); if($row = $this->ipsclass->DB->fetch_row($o)) { $return = $topics->parse_row( $row ); $html = $this->ipsclass->compiled_templates['skin_topic']->RenderRow($return['row'], $return['poster']); $js = ''; if($this->ipsclass->member['id']) { $js = <<<EOF if ( ajax_loaded && use_enhanced_js ) { menu_build_menu( 'edit-but-{$return['row']['pid']}', new Array( img_item + " <a title='{$this->ipsclass->lang['edit_full_desc']}' href='{$this->ipsclass->base_url}act=post&do=edit_post&f={$return['row']['forum_id']}&t={$return['row']['topic_id']}&p={$return['row']['pid']}&st={$this->ipsclass->input['st']}'>{$this->ipsclass->lang['edit_full_title']}</a>", img_item + " <a href='#' title='{$this->ipsclass->lang['edit_quick_desc']}' onclick='return ajax_prep_for_edit({$return['row']['pid']}, event);'>{$this->ipsclass->lang['edit_quick_title']}</a>" ) ); } ipsmenu.register( 'edit-but-{$return['row']['pid']}' ); ipsmenu.register( 'post-member-{$return['row']['pid']}', '', 'popmenubutton-new', 'popmenubutton-new-out' ); EOF; } } else { $this->return_string('error'); } } foreach( $this->ipsclass->skin['_macros'] as $i => $row ) { if ( $row['macro_value'] != "" ) { $html = str_replace( "<{".$row['macro_value']."}>", $row['macro_replace'], $html ); } } $html = str_replace( "<#IMG_DIR#>", $this->ipsclass->skin['_imagedir'], $html ); $html = str_replace( "<#EMO_DIR#>", $this->ipsclass->skin['_emodir'] , $html ); if ( $this->ipsclass->vars['ipb_img_url'] ) { $html = preg_replace( "#img\s+?src=([\"'])style_(images|avatars|emoticons)(.+?)[\"'](.+?)?".">#is", "img src=\\1".$this->ipsclass->vars['ipb_img_url']."style_\\2\\3\\1\\4>", $html ); } $html = preg_replace( "#htmldocument\.prototype#is", "HTMLDocument_prototype", $html ); $ret = array( 'is_mp' => $post->han_post->class_post->is_merging_posts, 'pid' => $post->han_post->class_post->post['pid'], 'html' => $html, 'js' => $js, 'topicsread'=> serialize($topics->read_array) ); $this->return_string(serialize($ret)); } Собственно ничего не изменилось. Ошибка такая же всплывает.
  10. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    //----------------------------------------- // (SnS) AJAX Fast Reply //----------------------------------------- function fast_reply_post() { //----------------------------------------- // Convert unicode //----------------------------------------- $_POST['Post'] = $this->convert_unicode( $_POST['Post'] ); if( strtolower($this->ipsclass->vars['gb_char_set']) != 'iso-8859-1' && strtolower($this->ipsclass->vars['gb_char_set']) != 'utf-8' ) { if ( array_key_exists( strtolower($this->ipsclass->vars['gb_char_set']), $this->decode_charsets ) ) { $this->ipsclass->vars['gb_char_set'] = $this->decode_charsets[strtolower($this->ipsclass->vars['gb_char_set'])]; $_POST['Post'] = html_entity_decode( $_POST['Post'], ENT_NOQUOTES, $this->ipsclass->vars['gb_char_set'] ); } } //----------------------------------------- // Init input //----------------------------------------- $this->ipsclass->input['fast_reply_used'] = 1; $this->ipsclass->input['sns_fast_reply_used'] = 1; //----------------------------------------- // Load and run post class //----------------------------------------- require_once( ROOT_PATH.'sources/action_public/post.php' ); $post = new post(); $post->ipsclass =& $this->ipsclass; $post->auto_run(); $pid = $post->han_post->class_post->post['pid']; if( $this->ipsclass->vars['post_order_column'] != 'post_date' ) { $this->ipsclass->vars['post_order_column'] = 'pid'; } if( $this->ipsclass->vars['post_order_sort'] != 'desc' ) { $this->ipsclass->vars['post_order_sort'] = 'asc'; } if( $this->ipsclass->vars['post_order_sort'] == 'desc' ) { if( $this->ipsclass->input['st'] != 0 ) { $this->return_string('show_last'); } } else { if( $pid > 0 ) { $blah = $this->ipsclass->DB->simple_exec_query(array('select' => 'COUNT(*) as posts', 'from' => 'posts', 'where' => 'topic_id='.$post->han_post->class_post->topic['tid'].' AND pid <= '.$post->han_post->class_post->post['pid'])); $pcount = $blah['posts']; if( ($pcount % $this->ipsclass->vars['display_max_posts']) == 0 ) { $pages = ($pcount) / $this->ipsclass->vars['display_max_posts']; } else { $number = (($pcount) / $this->ipsclass->vars['display_max_posts']); $pages = ceil($number); } $st = ($pages - 1) * $this->ipsclass->vars['display_max_posts']; if( $st != $this->ipsclass->input['st'] ) { $this->return_string('show_last'); } } else { $this->return_string('error'); } } //----------------------------------------- // Load and init topics class //----------------------------------------- require_once( ROOT_PATH.'sources/action_public/topics.php' ); $topics = new topics(); $topics->ipsclass =& $this->ipsclass; $topics->post_count = intval($pcount); $topics->init(); $topics->topic_set_up(); //----------------------------------------- // Get post //----------------------------------------- if( $post->han_post->class_post->is_merging_posts ) { //----------------------------------------- // Prep for display //----------------------------------------- $html = $post->han_post->class_post->show_post_preview( $post->han_post->class_post->new_post ); //----------------------------------------- // Showing reason for edit? //----------------------------------------- if ( $this->ipsclass->member['g_is_supmod'] OR $post->han_post->class_post->moderator['edit_post'] ) { if ( $post->han_post->class_post->post_edit_reason ) { $html .= "\n<div class='post-edit-reason'> {$this->ipsclass->lang['reason_for_edit']}: {$post->han_post->class_post->post_edit_reason} </div>"; } } $html = $html . "\n" . '<!--IBF.ATTACHMENT_' . $pid . '-->'; //----------------------------------------- // Grab render attach class //----------------------------------------- if ( !is_object( $post->han_post->class_post->class_attach ) ) { require_once( ROOT_PATH . 'sources/classes/attach/class_attach.php' ); $post->han_post->class_post->class_attach = new class_attach(); $post->han_post->class_post->class_attach->ipsclass =& $this->ipsclass; } $this->ipsclass->load_template( 'skin_topic' ); $post->han_post->class_post->class_attach->type = 'post'; $post->han_post->class_post->class_attach->init(); $html = $post->han_post->class_post->class_attach->render_attachments( $html, array( $pid => $pid ) ); if ( $post->han_post->class_post->post['append_edit'] == 1 AND $post->han_post->class_post->post['edit_time'] AND $post->han_post->class_post->post['edit_name'] ) { $e_time = $this->ipsclass->get_date( $post->han_post->class_post->post['edit_time'] , 'LONG' ); $html .= "<br /><br /><span class='edit'>".sprintf($this->ipsclass->lang['edited_by'], $post->han_post->class_post->post['edit_name'], $e_time)."</span>"; } $match = array(); $js = ''; preg_match_all('/fix_linked_image_sizes_attach_thumb\(.*?\);/is', $html, $match); for ( $i=0; $i < count($match); $i++ ) { $js .= $match[$i][0]."\n"; } //$js .= 'fix_linked_image_sizes();'; } else { $raw_post = $post->han_post->class_post->post['post']; if ($this->ipsclass->vars['au_cutoff'] == '') { $this->ipsclass->vars['au_cutoff'] = 15; } if ($this->ipsclass->vars['custom_profile_topic'] == 1) { $query_type = 'topics_get_posts_with_join'; } else { $query_type = 'topics_get_posts'; } if (!in_array('skin_topic', $this->ipsclass->compiled_templates)) { $this->ipsclass->load_template('skin_topic'); } $this->ipsclass->DB->cache_add_query($query_type, array('pids' => array($post->han_post->class_post->post['pid']), 'scol' => $this->ipsclass->vars['post_order_column'], 'sord' => $this->ipsclass->vars['post_order_sort'])); $o = $this->ipsclass->DB->simple_exec(); if($row = $this->ipsclass->DB->fetch_row($o)) { $return = $topics->parse_row( $row ); $html = $this->ipsclass->compiled_templates['skin_topic']->RenderRow($return['row'], $return['poster']); $js = <<<EOF if ( ajax_loaded && use_enhanced_js ) { menu_build_menu( 'edit-but-{$return['row']['pid']}', new Array( img_item + " <a title='{$this->ipsclass->lang['edit_full_desc']}' href='{$this->ipsclass->base_url}act=post&do=edit_post&f={$return['row']['forum_id']}&t={$return['row']['topic_id']}&p={$return['row']['pid']}&st={$this->ipsclass->input['st']}'>{$this->ipsclass->lang['edit_full_title']}</a>", img_item + " <a href='#' title='{$this->ipsclass->lang['edit_quick_desc']}' onclick='return ajax_prep_for_edit({$return['row']['pid']}, event);'>{$this->ipsclass->lang['edit_quick_title']}</a>" ) ); } ipsmenu.register( 'edit-but-{$return['row']['pid']}' ); ipsmenu.register( 'post-member-{$return['row']['pid']}', '', 'popmenubutton-new', 'popmenubutton-new-out' ); EOF; } else { $this->return_string('error'); } } foreach( $this->ipsclass->skin['_macros'] as $i => $row ) { if ( $row['macro_value'] != "" ) { $html = str_replace( "<{".$row['macro_value']."}>", $row['macro_replace'], $html ); } } $html = str_replace( "<#IMG_DIR#>", $this->ipsclass->skin['_imagedir'], $html ); $html = str_replace( "<#EMO_DIR#>", $this->ipsclass->skin['_emodir'] , $html ); if ( $this->ipsclass->vars['ipb_img_url'] ) { $html = preg_replace( "#img\s+?src=([\"'])style_(images|avatars|emoticons)(.+?)[\"'](.+?)?".">#is", "img src=\\1".$this->ipsclass->vars['ipb_img_url']."style_\\2\\3\\1\\4>", $html ); } $html = preg_replace( "#htmldocument\.prototype#is", "HTMLDocument_prototype", $html ); $ret = array( 'is_mp' => $post->han_post->class_post->is_merging_posts, 'pid' => $post->han_post->class_post->post['pid'], 'html' => $html, 'js' => $js, 'topicsread'=> serialize($topics->read_array) ); $this->return_string(serialize($ret)); } Написал на английском - тоже самое O_o ошибка добавления сообщения.
  11. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    Arhar: Да тут дело не в самом форуме или в исходниках, а чисто в джаве. мод ведь пашет на других браузерах... Ведь только джава в разных браузерах - по разному работает. Почти все любительские моды страдают от того, что были заточены под ослика, и только потом уже смотрят работоспособность в других браузерах.
  12. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    Непонимаю, как может быть ошибка в пхп, если в осле и опере (в опере я тоже проверил) - всё работает как надо! Вообщем спасибо за попытку помочь, дальше попробую сам.
  13. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    2Arhar: Думаете? 2Sannis: XP, Firefox 2.0.0.11, IPB 2.2.2 В консоли ошибок нет ссылки на строку с ошибкой - просто поле с ошибкой указано: Это как? O_o
  14. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    Ошибка: uncaught exception: Permission denied to call method Location.toString вроде такая ps: ctrl+f5 не помогает - сообщение остается в форме - не добавляется на форум.
  15. pikachu

    [2.3.x](SnS) AJAX Быстрый ответ

    Sannis: Да, в ослике остальной аякс работает. В огнелисе не работает именно только этот мод
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.