Jäljed postituse muutmisest

Foorumi kohta...
Vasta
Ryhkija
Saabiklubi liige
Postitusi: 1231
Liitunud: N Veebr 03, 2005 7:29
Asukoht:
Auto:

#1

R Nov 11, 2005 23:52

Kas seda foorumi mootorit või mida iganes annab niiviisi seada, et postituse muutusest ka miski jälg automaatselt juurde tuleb? Nt koertekoja foorumil selline asi igatahes toimib. Ja ülesehituse järgi tundub süsteem samal põhjal töötavat.
Ega nii pole kunagi olnd, et kuidagi ei saa, kuidagi ikka SAAB! :P
Cyber
Täiesti Mõttetu Mölaööbik
Postitusi: 13845
Liitunud: K Mär 03, 2004 9:25
Asukoht: Tallinn
Auto: 9000 '96, V70 '03

#2

L Nov 12, 2005 0:18

See featuur on täiesti olemas, paraku realiseeritud ülinõmedalt. Pannakse automaatselt teksti lõppu sulgudesse tekst et muudetud, kuupäev ja nimi. Näide esimeses postituses
Totraks teeb asja see, et kui sa siis kogemata uuesti vea teed ja veelkord parandad, siis pannakse see uuesti ja peaks eelmise ära kustutama jne jne. Ehk siis jäetakse uuendus kasutaja teha, mitte ei tehta automaatselt. Minu arvates nõme. Selliseid asju peaks foorumisoft ise tegema. Ma miski hetk katsetasin, aga korjasin väga kähku uuesti maha selle linnukese.
Kui lisataks kuhugi postituse alla eraldi tabelireale mingi viimase muutmise kuupäev vms oleks see ilmselt ammu lubatud olnud.
[Kaarel]: Ka pealtnäha süütu vikatiga memm kuskil tee ääres võib olla Aero omanik...
Pilt
roomlane
Saabiklubi liige
Postitusi: 586
Liitunud: T Sept 13, 2005 21:42
Asukoht:
Auto:

#3

L Nov 12, 2005 0:58

noh, väike regural expression õigesse kohta ja...
55581286
roomlane
Saabiklubi liige
Postitusi: 586
Liitunud: T Sept 13, 2005 21:42
Asukoht:
Auto:

#4

L Nov 12, 2005 1:29

Seda kohta post.php-s tuleks muuta

Kood: Vali kõik



          $date = gmdate($dateformat);
           if ($SETTINGS['editedby'] == 'on') {
               $message .= "\n\n[$lang[textediton] $date $lang[textby] $username]";
           }
   

Võibolla midagi sellist töötaks:

Kood: Vali kõik



          $date = gmdate($dateformat);
           if ($SETTINGS['editedby'] == 'on') {
               $message = eregi_replace(
                    "\n\n<!-- muudetud -->.*<!-- /muudetud -->$"
                  , ""
                  , $message);
               $message .= "nn<!-- muudetud -->[$lang[textediton] $date $lang[textby] $username]<!-- /muudetud -->";
           }
   
55581286
kashka
Postitusi: 40
Liitunud: N Juul 21, 2005 20:09
Asukoht:
Auto:

#5

L Nov 12, 2005 12:46

eregi_replace suht mõtetu kuna teeb lehe aeglaseks. Lihtsam viis on baasi teha juurde üks kuupäeva väli, mida siis iga muutmisega uuendatakse, ja seda siis kuskil väljakuvada
suur
Postitusi: 3923
Liitunud: T Mär 01, 2005 12:42
Asukoht:
Auto:

#6

L Nov 12, 2005 13:03

Algselt postitas: kashka
eregi_replace suht mõtetu kuna teeb lehe aeglaseks. Lihtsam viis on baasi teha juurde üks kuupäeva väli, mida siis iga muutmisega uuendatakse, ja seda siis kuskil väljakuvada


Jah, kirje "Postitati" taha kirje "viimati muudetud" või "redigeeritud"
Kuigi mis see meile annab?
Cyber
Täiesti Mõttetu Mölaööbik
Postitusi: 13845
Liitunud: K Mär 03, 2004 9:25
Asukoht: Tallinn
Auto: 9000 '96, V70 '03

#7

L Nov 12, 2005 15:41

Jah see lives otsimine ja replace oleks overkill. Lisarida baasis ja selle update vajadusel oleks nagu õigem lahendus aga kes see viitsib sellist keemiat tegema hakata...:) Mina ei tunne end php koha peal tegelikult nii väga kindlalt. Lisaks läheb mingil hetkel asi põduraks, kui näiteks softi upgrade'i vaja teha. Minu jaoks on asja väärtus väiksem, kui selle nimel vaja minev vaev.
[Kaarel]: Ka pealtnäha süütu vikatiga memm kuskil tee ääres võib olla Aero omanik...
Pilt
roomlane
Saabiklubi liige
Postitusi: 586
Liitunud: T Sept 13, 2005 21:42
Asukoht:
Auto:

#8

L Nov 12, 2005 17:18

Kui tihti te seda foorumi softi uuendate ka?

Aga, mis te sellisest muudatusest arvate post.php-s:

Kood: Vali kõik



           if ($SETTINGS['editedby'] == 'on') {
               $message .= "nn[$lang[textediton] $date $lang[textby] $username]";
           }
   


asemele

Kood: Vali kõik



           if ($SETTINGS['editedby'] == 'on') {
               $message = eregi_replace(
                   "\n\n\[" . $lang[textediton] . " .*\]$"
                  ,  "\n\n[$lang[textediton] $date $lang[textby] $username]"
                  , $message);
           }
   

Sellisel juhul mõjutab see ainult postituse muudatuse salvestamist.
55581286
Cyber
Täiesti Mõttetu Mölaööbik
Postitusi: 13845
Liitunud: K Mär 03, 2004 9:25
Asukoht: Tallinn
Auto: 9000 '96, V70 '03

#9

L Nov 12, 2005 18:04

Noh üldiselt öeldi ka, et see eregi_replace teeb asja aeglaseks. Ma usun, et inimesed teavad, millest nad räägivad. Teiseks tahaks ma (juhul kui selline featuur oleks lubatud), et seda üldse ei kirjutataks postituse sisse, vaid see kuvataks kas üldse eraldi real (tabeli lahtris kusagil) või seal "postitati ....." juures lisana. See tingimus on vaat, et suuremgi, kui see võimalik aegluse probleem. Paraku eeldab see postituste tabelisse lisaveergu ja koodimuudatusi salvestuse juures, nii php-s kui sql-s.
Karjuvat vajadust selle järgi pole ja seega ei hakka aretama.
[Kaarel]: Ka pealtnäha süütu vikatiga memm kuskil tee ääres võib olla Aero omanik...
Pilt
Ryhkija
Saabiklubi liige
Postitusi: 1231
Liitunud: N Veebr 03, 2005 7:29
Asukoht:
Auto:

#10

L Nov 12, 2005 23:15

Miks ma õieti selle küsimuse tõstatasin? Aga seepärast, et kui toimetamise nupu abil postitust uuendatakse, ei kajastu see kuidagi teemakataloogis - ei teki märgetki, et mingisse teemasse on midagi lisatud. Ja nii võib nii mõnigi tähelepanuvääriv (ja vahel üsna oluline) asi kahe silma vahele jääda, kuna viimasel ajal jõuan jälgida vaid kuupäeva järgi värskeina tunduvaid teemasid.
Ega nii pole kunagi olnd, et kuidagi ei saa, kuidagi ikka SAAB! :P
roomlane
Saabiklubi liige
Postitusi: 586
Liitunud: T Sept 13, 2005 21:42
Asukoht:
Auto:

#11

P Nov 13, 2005 5:50

Ma teen siis etepaneku XMB foorumis see featuur lisda mingisse tulevasse versiooni. Praegu arendatavas 1.10 versioonis seda featuuri veel polnud igatahes.
Mis versioon hetkel siin üleval on?
55581286
Cyber
Täiesti Mõttetu Mölaööbik
Postitusi: 13845
Liitunud: K Mär 03, 2004 9:25
Asukoht: Tallinn
Auto: 9000 '96, V70 '03

#12

P Nov 13, 2005 15:37

1.9.1 minu teada. Ja kui sa, Roomlane, arvad, et feature request oleks abiks, siis võid neile ju selle esitada..:)

Siis jääks veel välja mõelda see skeem, kelle postituse muutuse peale teema esile tõstetakse, kas ainult algataja või kõigi teemasse kirjutanute puhul. Minu meelest läheks segadus ainult suuremaks..:)

Kusjuures, Ryhkija, ka teistel foorumisoftidel ei kajastu muudetud postitustega teema värskete teemade reas eriti (minu teada vähemalt, võibolla tean vähe). phpBB, mis on üks enamkasutatavamaid, seda ei tee, phpnuke kohta ei oska öelda, kuigi seal on foorumi osa samasugune nagu phpBB. Kui just foorumi hlafajad ise pole sarnast featuuri viitsinud teha.

Moderaatoritel ja adminidel on võimalus teemat "hüpitada". Sisuliselt tähendab see seda, et teema viimase postituse kellaaeg muudetakse hetkekellaajaks.
[Kaarel]: Ka pealtnäha süütu vikatiga memm kuskil tee ääres võib olla Aero omanik...
Pilt
roomlane
Saabiklubi liige
Postitusi: 586
Liitunud: T Sept 13, 2005 21:42
Asukoht:
Auto:

#13

P Nov 13, 2005 20:58

Nädala alguses tuli 1.9.3 välja, mingid pisikesed bugide parandused...

Uusi featuure 1.9 versiooni ei panda. Kui, siis 1.10-sse. Aga kes teab, millal see valmis saab. Aga nagu ma aru sain, vajadust polen, nii et kiiret pole.

Teema hüpitamisest:
Kui uus postitus tehakse, siis jooksutatakse selline päring:
UPDATE $table_threads SET lastpost='$thatime|$username|$pid', replies=replies+1 WHERE (tid='$tid' AND fid='$fid') OR closed='moved|$tid'
Ja veel mõned, et sub-foorumi ja foorumi lastpost välja muuta. Sisuliselt pannakse kirja muutmise aeg, muutja ja postituse id. Selleks, et saaks rohelise noolekese peale vajutades viimati lisatud postituse juurde kohe.

Pärast muudatuse salvestamist võib ju sellise päringu käivitada (kui admin on vastava featuuri sisse lülitanud):
UPDATE $table_threads SET lastpost='$thatime|$username|$pid' WHERE (tid='$tid' AND fid='$fid') OR closed='moved|$tid'
ehk siis postituste arvu ei suurendata.

Aga segasemaks läheb asi igal juhul. Näiteks, kui keegi uue postituse samasse teemasse lisab, siis ei pane jälle keegi tähele, et vahepeal mingit vanemat postitust muudetud on.
55581286
Ryhkija
Saabiklubi liige
Postitusi: 1231
Liitunud: N Veebr 03, 2005 7:29
Asukoht:
Auto:

#14

R Nov 18, 2005 23:28

Kokkuvõtteks: seega, kui keegi tahab oma postituse muutusele tähelepanu juhtida, on seda praegu ainumõistlik teha uue postituse tegemise abil :P
Mu meelest võib selle arutelu siinkohal (vähemalt ajutiselt) lõppenuks lugeda ...
Ega nii pole kunagi olnd, et kuidagi ei saa, kuidagi ikka SAAB! :P
egonr
the man
Postitusi: 99
Liitunud: N Veebr 26, 2004 11:57
Asukoht:
Auto:

#15

K Jaan 18, 2006 14:45

WORD!
Vasta