1.12.7 i starsze - AJAX Ocena mod
NineX - 25-08-2010, 17:15 Temat postu: AJAX Ocena mod
AJAX Ocena mod
Cytat: | ##########################################################################
## MOD Title: AJAX Ocena mod
## MOD Author: NineX
## MOD Description: Ajaxowe ocenianie linków.
## MOD Version: 1.0.0
##
## Installation Level: Easy
## Installation Time: ~7 minut
## License: GPL2
##
## Files To Edit: 9
## includes/constants.php
## admin/modules_data.php
## viewtopic.php
## language/lang_polish/lang_main.php
## includes/usercp_viewprofile.php
## templates/*/profile_view_body.tpl
## templates/*/viewtopic_body.tpl
## templates/*/*.cfg
## templates/*/*.css
##
########################################################################## |
Wersja finalna obejmuje:
- ustawienia w PA
- optymalizacja kodu
- flood
- limit dzienny
- blokada oceny swoich tematów
- blokada zmiany oceny
Podziękowania należą się dla:
Boltex
Polaczek
lui754
Przed instalacją modyfikacji, wykonaj backup plików.
Testować i pisać czy działa.
Budyn00 - 25-08-2010, 18:13
NineX, Przewidujesz (jak już będzie PA) możliwość ustawienia w których działach ma działać mod ?
A ogólnie duży + za tego moda
NineX - 25-08-2010, 18:24
Budyn00, tak. Jak na razie w tej wersji, widoczność w określonych działach, określasz w kodzie. Więcej info w instrukcji.
kooza - 25-08-2010, 18:41
nie pomysalełes ze inni tez maja jakies inne modyfikacje zainstlowane. np. w tym kodzie.
Kod: | #-----[ OPEN ]------------------------------------------
#
viewtopic.php
#
#-----[ FIND ]------------------------------------------
#
$sql = "SELECT p.post_id, p.post_time, p.enable_sig, p.enable_html, p.enable_smilies, p.post_edit_count, p.post_edit_time, p.post_username, p.post_approve, p.poster_delete, p.post_edit_by, p.post_parent" . $sgv . "u.user_id, u.username, u.user_level, u.user_jr, u.user_allowhtml, u.user_posts, u.user_allowsig, u.user_sig, u.user_sig_bbcode_uid, u.user_allowsmile, u.user_avatar_type, u.user_allowavatar, u.user_avatar, u.user_rank, u.user_viewemail, u.user_website, u.user_email, u.can_custom_ranks, u.user_custom_rank, u.user_session_time, u.user_allow_viewonline, pt.post_text, pt.bbcode_uid, pt.post_subject $ph_field
FROM " . POSTS_TABLE . " p
$ph_table
LEFT JOIN " . POSTS_TEXT_TABLE . " pt ON (pt.post_id = p.post_id)
LEFT JOIN " . USERS_TABLE . " u ON (u.user_id = p.poster_id)
WHERE p.topic_id = $topic_id
$limit_posts_time
GROUP by p.post_id
ORDER BY p.post_order, p.post_time $post_time_order
LIMIT $start, $user_posts_per_page";
#
#-----[ REPLACE WITH ]------------------------------------------
#
$sql = "SELECT p.post_id, p.post_time, p.enable_sig, p.enable_html, p.enable_smilies, p.post_edit_count, p.post_edit_time, p.post_username, p.post_approve, p.poster_delete, p.post_edit_by, p.post_parent" . $sgv . "u.user_id, u.username, u.user_level, u.user_jr, u.user_allowhtml, u.user_posts, u.user_allowsig, u.user_sig, u.user_sig_bbcode_uid, u.user_allowsmile, u.user_avatar_type, u.user_allowavatar, u.user_avatar, u.user_rank, u.user_viewemail, u.user_website, u.user_email, u.can_custom_ranks, u.user_custom_rank, u.user_session_time, u.user_allow_viewonline, pt.post_text, pt.bbcode_uid, pt.post_subject, count(l.post_id) as total, l.post_id as idpostu, l.type_id, (SELECT count(*) FROM " . OCENA_MOD_TABLE . " WHERE type_id>1 AND post_id=p.post_id ) as total1 $ph_field
FROM " . POSTS_TABLE . " p
$ph_table
LEFT JOIN " . POSTS_TEXT_TABLE . " pt ON (pt.post_id = p.post_id)
LEFT JOIN " . USERS_TABLE . " u ON (u.user_id = p.poster_id)
LEFT JOIN " . OCENA_MOD_TABLE . " l ON (l.post_id = p.post_id AND l.type_id=1)
WHERE p.topic_id = $topic_id
$limit_posts_time
GROUP by p.post_id, l.post_id
ORDER BY p.post_order, p.post_time $post_time_order
LIMIT $start, $user_posts_per_page"; |
juz nie znajde takiego kodu i go nie zamienie ;/
NineX - 25-08-2010, 18:44
kooza
Kod: | Znajdź: pt.post_subject
Zmień na: pt.post_subject, count(l.post_id) as total, l.post_id as idpostu, l.type_id, (SELECT count(*) FROM " . OCENA_MOD_TABLE . " WHERE type_id>1 AND post_id=p.post_id ) as total1
Znajdź:
LEFT JOIN " . USERS_TABLE . " u ON (u.user_id = p.poster_id)
Dodaj po:
LEFT JOIN " . OCENA_MOD_TABLE . " l ON (l.post_id = p.post_id AND l.type_id=1)
Znajdź:
GROUP by p.post_id
Zmień na:
GROUP by p.post_id, l.post_id
|
Nie testowałem, ale powinno działać.
Jeśli ktoś wie jak wykonać to w 1 zapytaniu, to zapraszam na PW.
NineX - 31-08-2010, 19:19
Aktualizacja do wersji 1.0.0 obejmuje:
- ustawienia w PA
- optymalizacja kodu
- flood
- limit dzienny
- blokada oceny swoich tematów
- blokada zmiany oceny
Wszelkie błędy/zmiany zgłaszać.
dream552 - 31-08-2010, 20:34
Po teście mod śmiga wyśmienicie..
Boltex - 20-09-2010, 10:50
NineX, u mnie na forum się gryzie ze spider friendly
kogutkov - 20-09-2010, 11:42
Nie bardzo czaje na czym ten mod polega. Czy pole do oceny pojawia się tylko w poście , który ma w treści link? Czy jak?
Mario14125 - 20-09-2010, 21:55
Mam takie pytanie... Chcę odinstalować tą modyfikację bo mi coś nie działa i moje pytanie jest takie: jak usunąć wpisy z modyfikacji z bazy danych (SQL)
Czyli jak usunąć to:
Kod: | CREATE TABLE `phpbb_ocena_mod` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`post_id` INT NOT NULL ,
`user_id` INT NOT NULL ,
`type_id` INT NOT NULL ,
`date` INT NOT NULL
);
INSERT INTO phpbb_config SET config_name='ocena_on_off', config_value='1';
INSERT INTO phpbb_config SET config_name='ocena_linki_on_off', config_value='1';
INSERT INTO phpbb_config SET config_name='ocena_linki', config_value='5';
INSERT INTO phpbb_config SET config_name='ocena_limit', config_value='4';
INSERT INTO phpbb_config SET config_name='ocena_flood', config_value='2';
INSERT INTO phpbb_config SET config_name='ocena_forums', config_value='1,2,3';
INSERT INTO phpbb_config SET config_name='ocena_linki_color', config_value='fef6ae';
INSERT INTO phpbb_config SET config_name='ocena_comment_height', config_value='60';
INSERT INTO phpbb_config SET config_name='ocena_comment_width', config_value='700'; |
Z bazy danych
HardROoZi - 20-09-2010, 21:59
Mario14125, skasuj tabele phpbb_ocena_mod
Mario14125 - 20-09-2010, 22:01
HardROoZi, to wiem... Ale mi chodzi bardziej o to:
Kod: | INSERT INTO phpbb_config SET config_name='ocena_on_off', config_value='1';
INSERT INTO phpbb_config SET config_name='ocena_linki_on_off', config_value='1';
INSERT INTO phpbb_config SET config_name='ocena_linki', config_value='5';
INSERT INTO phpbb_config SET config_name='ocena_limit', config_value='4';
INSERT INTO phpbb_config SET config_name='ocena_flood', config_value='2';
INSERT INTO phpbb_config SET config_name='ocena_forums', config_value='1,2,3';
INSERT INTO phpbb_config SET config_name='ocena_linki_color', config_value='fef6ae';
INSERT INTO phpbb_config SET config_name='ocena_comment_height', config_value='60';
INSERT INTO phpbb_config SET config_name='ocena_comment_width', config_value='700'; |
Żeby mi po prostu nie robiło nie potrzebnych zapytań...
Boltex - 20-09-2010, 22:03
HardROoZi, to też, ale wchodzisz w tabele phpbb_config wybierasz przeglądaj u góry i szukasz wpisów ocena_on_off i tak dalej zaznaczasz i usuwasz.
NineX - 20-09-2010, 22:35
Mario14125, a co Ci dokładnie nie działa? bo nie wiem czy wiesz, ale nie wydaje modyfikacji przed uprzednim sprawdzeniu na localu
Mario14125 - 21-09-2010, 00:58
Ogólnie mi nie działa... Niby w PA wszystko dobrze a jak chcę coś kliknąć to nic nie reaguje...
|
|
|