Droši vien jau diezgan muļķīgs jautājums, taču varbūt kāds zinās pareizo atbildi. Kā iespējams izmantot Google.lv/custom? Kur man jāpiereģistrējas? Nekur neko neatradu. Piemēru var apskatīt Mozilla.org lapā. It kā jau varētu nokopēt tos hidden laukus, taču tur ir viens mainīgais, kas, šķiet, ir katram unikāls. Kāds zina?
Labots. Skaidrs. www.google.com/searchcode.html
bez steigas un prātīgi. x_f funkcija par vislielākā ierakstu skaita īpašniekiem draugu lapā, pabeigta un pārredzamāka par tiem manis publicētajiem variantiem iepriekš.
Kādu laiku biju pametis novārtā visu S2 padarīšanu un sava žūrnāla stilu, taču tagad atkal vienu vakaru piesēdos kaut ko paštukot. Un izštukoju arī. Nu?
Ciba pēc definīcijas ir weblogu.. mm.. glabātuve. :) Nu, bet kas ta' ir weblogs? Tā ir iespēja kaut ko rakstīt un tad citi to kaut ko var komentēt (parasti var). Pie mums var pat komentēt komentārus, bet pie tā es šoreiz neķēros. Mani interesēja iespēja izveidot tādu štelli, lai būtu iespējams lasīt ierakstu un tajā pašā lapā arī komentēt to. (Ar to es domāju EntryPage, jo ReplyPage tas jau ir pats par sevi saprotams.)
Šķiet, ka sanāca, tāpēc lūdzu visus to ietestēt (burtiski, nevis tikai
paskatīties). Lielas jēgas no tā, protams, nav, taču tā var. Bet, kā jau iepriekšējajā
ierakstā rakstīju, "cilvēka slinkums" == "cilvēces progress"
. :)
Es it kā esmu pārbaudījis un man viss darbojas, lai gan ReplyPage lapā
komentāru formā ir divi slēptie elementi, kurus man neizdevās simulēt – <input
type='hidden' name='chal' id='login_chal' value='c0:1096275600:1265:900:Js8UDwM309
un <input type='hidden' name="chrp1" value="101385-51-1096275600-tDsbBzHIbaJK
.
Piemēram. Gan jau skaidrs, kāpēc neizdevās. :) Taču rādās, ka no tiem arī nekādas jēgas nav. Lai nu kā – ja
kādam nav ko darīt un arī ko tādu grib, tad es sākumā vienkārši nokopēju kodu no ReplyPage, bet pēc
tam to nedaudz pielāgoju. Un viss.
Es tā iedomājos.. Tagad jau modē visādas šitās sliņķu lietiņas kā, piemēram, RSS plūsmas. :) Ka ziņas nāk pie Tevis, nevis Tu ej pēc tām. (Tas jau sen zināms, ka cilvēka slinkums ir cilvēces progresa pamatā.) Nu, lūk. RSS plūsmas tagad ir ziņu lapām, portāliem, vortāliem, weblogiem un arī Cibā tāda ir katram (piemēram, ../style/data/rss). Tātad pat cibiņus Tu vari lasīt savā RSS pārlūkā (vai kā nu to sauc), ja gribi likties moderns.
Tad es sāku simulēt sliņķi un sapratu, ka pie apvāršņa ir mākonīši, jo draugu vai draugu draugu lapai gan nekā tāda nav. Taču to var viegli uztaisīt, ja izmanto S2 iespējas. Un tāpēc pat nav jābojā / jāupurē draugu lapas izskats. Pie RSS plūsmas varētu tikt, piemēram, izsaucot lapu ar kādu parametru (kaut vai – ../friends/?.saturs=rss). Et voilá!
Nē, es to neesmu izdarījis, jo neesmu tik slinks un tikai simulēju. :) Taču, ja kāds jūtas totāli stilīgs un bez RSS nespēj dzīvot, tad es tikai pasviežu ideju, ka tā var.
Ā, kamēr es vēl te. Gribēju pateikt paldies visiem šīs kopienas locekļiem un štelles
pielūkotājiem, jo izrādās, ka style tomēr ir dzīvotspējīga un noderīga. Varbūt,
ka mums pat taps pirmā S2 RPG spēle pasaulē. :D Ir labi.
Lai nu kā – vai ir kādi ierosinājumi, piebildes, sūdzības?
Es tā iedomājos, kāpēc man draugu lapā jāskatās tikai uz draugu ierakstiem? Kāpēc nevarētu attēlot arī piekabinātos komentārus? Un..? Man izdevās. :) Tā apskatāma šeit. (Rekomendējamās sistēmas prasības – pele ar rullīti. :) Umm.. Jā, es zinu, ka nav pārāk pievilcīgi. Par to tiek domāts.)
Tālāk paskaidrošu, kā es to izdarīju, taču brīdinu, ka citiem tas var arī nestrādāt, jo man ir aizdomas,
ka <iframe>
ir Cibas "neuzticamo" tagu sarakstā. ( paskaidroju )
Dažu iebūvēto funkciju un metožu saņemamie parametri. Kad sāku čakarēties pats ar savu S2 stilu, tad šāda info man būtu noderējusi. Varbūt tā noderēs kādam arī tagad. Katrā ziņā tas nav atrodams S2 "dokumentācijā". :) Ja kādu interesē vēl kas, ko neesmu pieminējis, dodiet ziņu, lai varu papildināt šo sarakstu.
EntryLite::get_link(string key) : Link
entry – key – nav_prev, edit_entry, mem_add, tell_friend, nav_next
comment – key – delete_comment, screen_comment, unscreen_comment, freeze_thread, unfreeze_thread
EntryLite – $.metadata{}
entry – mood, music
comment – poster_ip, picture_keyword
(userpic'a atslēgvārds)
get_url(UserLite user, string view) : string
get_url(string user, string view) : string
view – recent, friends, calendar, userinfo, ?.lapa=testiem, data/rss, ..
EntryLite klase nozīmē to, ka tā satur info, kas derīga gan pašam ierakstam, gan tā komentāram. Entry klase un Comment klase paplašina EntryLite klasi. Viss atkarīgs no tā, no kurienes šai info piekļūst.
Un vēl – šķiet, ka esmu noskaidrojis $*reg_firstdayofweek nozīmi. Tas attiecas tikai
uz funkciju
weekdays():int[]
.
Mjā, liela jēga..
Manā stilā atklājusies problēma ar slēpto komentāru attēlošanu. Nu, pareizāk – ar to pareizu noteikšanu. Ja kāds ir izveidojis pats savu S2 stilu vai pamatīgi labojis kādu jau gatavu, tad, iespējams, varētu man palīdzēt.
S1 sistēmā tas bija daudz vienkāršāk. Tika izvadīts melns tekstiņš iekavās, ka šajā vietā ir paslēpts komentārs. Žūrnāla īpašniekam tas bija kā saite. Un viss. Taču S2..
Problēma atklājās, kad apskatīju kādu citu žūrnālu, izmantojot savu stilu (?style=mine) (tātad citi manu žūrnālu redz tieši tāpat, kā es tagad svešu žūrnālu). Slēptie komentāri izskatījās dīvaini. Žūrnāla īpašnieks bija paslēpis dažus komentārus (gan manis rakstītu, gan savus, gan svešu personu rakstītos) un tie attēlojās, kā es vēlos iekrāsoti citā krāsā un samazinātā veidā (sistēma automātiski ieslēdz EntryPage::print_comment_partial (Comment c) funkciju, ja tas nav mans žūrnāls). Tik tālu viss pareizi. Taču ir dažas problēmas.
$poster = defined $c.poster ? $c.poster->as_string() : "$*text_poster_anonymous";
Viss
skaidrs. Taču printējot $c.poster, info par to ir tukša. Piemēram, ceļš pie šī lietotāja
žūrnāla ir šāds – http://journal.bad.lv/users// Tukšs. Tāpat arī userinfo.
Tāpēc nav iespējams tik viegli atšķirt tos no anonīmajiem (jo šajā vietā izrādās, ka defined
$c.poster ir true, lai gan info ir tukša). Starp citu, šī problēma ir arī ar "Debesu Zvanu" stilu (slēptie komentāri attēlojas kā saite,
piemēram – "2.8.04
20:15 (bez virsraksta) Slēptais komentārs"),
tāpēc visdrīzāk arī ar visiem pārējiem.
Ideālākais rezultāts būtu, ja būtu iespējams neizvadīt saiti uz slēpto komentāru, ja tas nebūs apskatāms.
Taču nevaru izdomāt, kā atšķirt slēpto komentāru, ko es varēšu apskatīt, no pārējiem slēptajiem.
Pamēģināt, kā tas izskatās var (es ceru, ka var) pievienojot adresei "?s2id=3563". Tas ir mana stila (ne slāņa) ID.
kaitnieks vakar publicēja savu S2 kodu, kā viņš izvada katras dienas vārdadienas. Šodien to daru es. :) Neviens kods nav ne labāks, ne sliktāks, tie abi darbojas pareizi. Vienkārši – savādāka pieeja. Un daru es to tāpēc, ka vēlos, lai tiem, kurus interesē S2, būtu vairāk reālu piemēru, ko ar S2 vispār iespējams izdarīt. Lūk, kā. :)
Manā žūrnālā pagaidām vārdadienas nekur netiek izvadītas, jo vēl neesmu izdomājis īsti, kur varētu, taču nodemonstrējums atrodams manā testu lapā.
( function print_vardadiena(string datums) )Es laikam aizmirsu nopublicēt vārda dienu funkcijas skriptu (ja nu kādam interesē).
( ... tālāk ... )
Error running style: S2::run_code: Undefined function (383 )
? Un ko tur dariit?
Jēgas no šitā visa nekādas, bet tomēr gribu.
Doma ir tāda, ka vēlos kaut kur savā draugu lapā izvadīt mazu sarakstiņu, kurā būtu parādīti
to manu draugu vārdi, kuru ierakstu šajā lapā ir visvairāk. Blakus arī norādīts viņu ierakstu
skaits. Tas būtu tāds kā lielāko spameru topiņš. :) Nu, piemēram, "gorgona
(3)". Tādā veidā.
Esmu ticis šitik tālu, taču nesaprotu, kāpēc tas nestrādā. Ar sakārtošanu dilstošā secībā
galā netiku, tāpēc tā nav implementēta. Viens te pieteicās palīdzēt.. :) Lai
nu kā, būtu jau labi, bet pagaidām netiek izvadīts nekas. Tikai atverošais un aizverošais <ul>
.
Es nesaprotu, kur vaina.
Tam būtu jādarbojas tā, ka tiek ņemts katrs ieraksts draugu lapā. Tā rakstītāja vārds ($.entries.poster.username
)
tiek salīdzināts ar visām asociatīvā string
masīva rakstnieki{}
atslēgām
(kas ir citu username
). Ja ir sakritība, tad palielina atbilstošo vērtību par 1 (kas tiek
glabāta kā string
, tāpēc
tur tā pārveidošana turp un atpakaļ). Ja neatrod, tad pievieno jauno vārdu.
Man ir šādi divi masīvi. Pirmā vērtību secība ir atkarīga no otrā.
var string[] pirmais_masivs = [ "cetri", "septini", "pieci", "tris", "viens" ];
var int[] otrais_masivs = [ 4, 7, 5, 3, 1 ];
Rezultātam jābūt šādam:
Pirmā masīva vērtībām jābūt sakārtotām tā, lai atbilstošās otrā masīva vērtības
būtu dilstošā kārtībā.
$pirmais_masivs = [ "septini", "pieci", "cetri", "tris", "viens" ];
$otrais_masivs = [ 7, 5, 4, 3, 1 ];
Tātad jākārto otrais masīvs dilstošā secībā un vienlaicīgi tādā pašā kārtībā
jākārto pirmais masīvs.
Problēma man ir realizēt pašu kārtošanu, nevis divas kārtošanas vienlaicīgi.
Es nesaprotu, kā to izdarīt S2 valodā (un vispār ar sortēšanu man vienmēr bijušas
grūtības :) ). Būtu ļoti pateicīgs, ja kāds man varētu palīdzēt vai
vismaz pastumt pareizajā virzienā.
Btw, ja nu tā ir ērtāk (vai iespējamāk), tad to visu var ielikt vienā masīvā – asociatīvajā.
Tādā gadījumā sākumā tas izskatītos šādi:
var string{} asoc_masivs = {
"cetri" => "4",
"septini" => "7",
"pieci" => "5",
"tris" => "3",
"viens" => "1"
}
Taču arī tādā gadījumā šim masīvam beigās jābūt sakārtotam pēc vērtībām (skaitļiem),
ne atslēgām (vārdiem). (Tas viss tā ir tāpēc, ka atslēgas man nemainās, bet dažas
vērtības ik pa laikam tiek palielinātas.)
Vispār jau tas man vajadzīgs tamdēļ, lai dabūtu noteiktu skaitu (piemēram, trīs vai piecas utt.) lielākās vērtības pēc kārtas. Tātad varbūt ir iespējams kaut kādā veidā vispār iztikt bez masīvu kārtošanas, bet dabūt tās uzreiz. :)