From: <li...@li...> - 2004-11-22 13:23:23
|
I don't see an obvious way to do this without making some changes in the code, but I thought I'd check to see if anyone has done this yet. I'd like to make a new section for the journals, so that the index page at journals.lisnews.com spits out the latest journal from each user, like that "Most Recent Journal Entries" slashbox does. So what I'm thinking is that all this new index page needs to do is pull out journals instead of stories. It could be handled as a section, but the journals don't get sections. There's probably not much to it, but has anyone built a page like this already? I'm *still* terribly slow when it comes to poking around in the slashcode. -Blake |
From: Shane <sh...@lo...> - 2004-11-22 15:37:41
|
That kind of sucks that you can't define a journal to a section. I'd submit that one as a feature request to slash's SF, if I were you. Anyway, I think if I were going to do what you wanted, I'd a) create the new section b) install the plugin Slash::Page then copy the index\;page\;default template to index\;page\;mynewsection. edit it, rip out most of what's in there, and do something like the following: [% js = Slash.getObject('Slash::Journal'); IF js; my max = 30; my jentries = js.topRecent(max); %] <ul> [% FOREACH je = jentries; %] <li><a href="/joural.pl?op=view&id=[% je.id %]">[% je.description %]</a></li> [% END %] </ul> [% END %] save the template, use template-tool to load it into your db. then use template-tool -T to test the template. edit, remove bugs, rinse and repeat. you can then test the thing by doing: /usr/local/slash/plugins/Page/page.pl virtual_user=slash ssi=Yes section=mynewsection to see it's output. If it looks good, restart apache and slashd. There are more methods to use in Slash::Journal, however don't bother perldoc'ing it, there's no docs. View the file in /usr/local/slash/plugins/Journa/Journal.pm. The Slash::Page plugin is *very* useful for stuff like this. You can very easily create unique index pages for a section with all sorts of weird stuff. And if you don't like it, just edit the indexhandler for the section and change it from page.pl back to index.pl. Hope that helps. Shane On Nov 22, 2004, at 8:17 AM, li...@li... wrote: > I don't see an obvious way to do this without making some changes in > the > code, but I thought I'd check to see if anyone has done this yet. > > I'd like to make a new section for the journals, so that the index > page at > journals.lisnews.com spits out the latest journal from each user, like > that "Most Recent Journal Entries" slashbox does. > > So what I'm thinking is that all this new index page needs to do is > pull > out journals instead of stories. It could be handled as a section, but > the > journals don't get sections. There's probably not much to it, but has > anyone built a page like this already? I'm *still* terribly slow when > it > comes to poking around in the slashcode. > > -Blake > > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real > users. > Discover which products truly live up to the hype. Start reading now. > http://productguide.itmanagersjournal.com/ > _______________________________________________ > Slashcode-general mailing list > Sla...@li... > https://lists.sourceforge.net/lists/listinfo/slashcode-general > |
From: Rob M. <ma...@sl...> - 2004-11-22 15:47:58
|
The list of things that we *should* do with journals is truly epic: 1. Journals as Submissions: =A0=A0=A0 a. Editor selects a journal and promotes it to story =A0=A0=A0 b. Journaler submits entry as a submission =A0=A0=A0 c. Rejected journal submission posted back to journal 2. A journal could be a section, with various controls there. 3. Rating systems for journals to generate 'Top NN Journals of the Day' =A0=A0=A0 influenced by both editor and reader ratings of some kind. There are substantial security=A0here... like if JoeUser submits their=20= journal entry as a story, and CmdrTaco here likes it, then that journal=20= almost needs to be *Locked* to prevent abuse.=A0 And we'd need many=20 controls to prevent abuse of the top journals of the day system so a=20 user couldn't flood the top 10. At the core of this, we really simply need to rewrite journals to be=20 articles using a journal topic/nexus/skin instead of a seperate thing.=A0=20= That is "Old" slashcode.=A0 Dated and kludgy. These are potentially very cool projects, but doing them right requires=20= a lot of work... and since right now on Slashdot, Journals represent=20 like 1% of traffic, it's quite simply not gonna happen unless one of=20 you guys starts doing it, or unless OSTG suddenly decides that blogging=20= is a corporate priority.=A0 And I kinda doubt thats gonna happen ;) On Nov 22, 2004, at 10:33 AM, Shane wrote: > That kind of sucks that you can't define a journal to a section. I'd=20= > submit that one as a feature request to slash's SF, if I were you. > > Anyway, I think if I were going to do what you wanted, I'd > > a) create the new section > b) install the plugin Slash::Page > > then copy the index\;page\;default template to=20 > index\;page\;mynewsection. > > edit it, rip out most of what's in there, and do something like the=20 > following: > > [% > js =3D Slash.getObject('Slash::Journal'); > IF js; > =A0=A0 my max =3D 30; > =A0 =A0 my jentries =3D js.topRecent(max); > %] > =A0 =A0 <ul> > =A0 =A0 [% > =A0 =A0 FOREACH je =3D jentries; %] > =A0 =A0 =A0 =A0 <li><a href=3D"/joural.pl?op=3Dview&id=3D[% je.id = %]">[%=20 > je.description %]</a></li> > =A0 =A0 [% END %] > =A0 =A0 </ul> > [% END %] > > save the template, use template-tool to load it into your db. then use=20= > template-tool -T to test the template. edit, remove bugs, rinse and=20 > repeat. > > you can then test the thing by doing: > > /usr/local/slash/plugins/Page/page.pl virtual_user=3Dslash ssi=3DYes=20= > section=3Dmynewsection > > to see it's output. If it looks good, restart apache and slashd. > > There are more methods to use in Slash::Journal, however don't bother=20= > perldoc'ing it, there's no docs. View the file in=20 > /usr/local/slash/plugins/Journa/Journal.pm. > > The Slash::Page plugin is *very* useful for stuff like this. You can=20= > very easily create unique index pages for a section with all sorts of=20= > weird stuff. And if you don't like it, just edit the indexhandler for=20= > the section and change it from page.pl back to index.pl. > > Hope that helps. > > =A0Shane > > On Nov 22, 2004, at 8:17 AM, li...@li... wrote: > >> I don't see an obvious way to do this without making some changes in=20= >> the >> code, but I thought I'd check to see if anyone has done this yet. >> >> I'd like to make a new section for the journals, so that the index=20 >> page at >> journals.lisnews.com spits out the latest journal from each user, = like >> that "Most Recent Journal Entries" slashbox does. >> >> So what I'm thinking is that all this new index page needs to do is=20= >> pull >> out journals instead of stories. It could be handled as a section,=20 >> but the >> journals don't get sections. There's probably not much to it, but has >> anyone built a page like this already? I'm *still* terribly slow when=20= >> it >> comes to poking around in the slashcode. >> >> -Blake >> >> >> >> ------------------------------------------------------- >> SF email is sponsored by - The IT Product Guide >> Read honest & candid reviews on hundreds of IT Products from real=20 >> users. >> Discover which products truly live up to the hype. Start reading now. >> http://productguide.itmanagersjournal.com/ >> _______________________________________________ >> Slashcode-general mailing list >> Sla...@li... >> https://lists.sourceforge.net/lists/listinfo/slashcode-general >> > > > > ------------------------------------------------------- > SF email is sponsored by - The IT Product Guide > Read honest & candid reviews on hundreds of IT Products from real=20 > users. > Discover which products truly live up to the hype. Start reading now.=20= > http://productguide.itmanagersjournal.com/ > _______________________________________________ > Slashcode-general mailing list > Sla...@li... > https://lists.sourceforge.net/lists/listinfo/slashcode-general The list of things that we *should* do with journals is truly epic: 1. Journals as Submissions: =A0=A0=A0 a. Editor selects a journal and promotes it to story =A0=A0=A0 b. Journaler submits entry as a submission =A0=A0=A0 c. Rejected journal submission posted back to journal 2. A journal could be a section, with various controls there. 3. Rating systems for journals to generate 'Top NN Journals of the Day' =A0=A0=A0 influenced by both editor and reader ratings of some kind. There are substantial security=A0here... like if JoeUser submits their=20= journal entry as a story, and CmdrTaco here likes it, then that journal=20= almost needs to be *Locked* to prevent abuse.=A0 And we'd need many=20 controls to prevent abuse of the top journals of the day system so a=20 user couldn't flood the top 10. At the core of this, we really simply need to rewrite journals to be=20 articles using a journal topic/nexus/skin instead of a seperate thing.=A0=20= That is "Old" slashcode.=A0 Dated and kludgy. These are potentially very cool projects, but doing them right requires=20= a lot of work... and since right now on Slashdot, Journals represent=20 like 1% of traffic, it's quite simply not gonna happen unless one of=20 you guys starts doing it, or unless OSTG suddenly decides that blogging=20= is a corporate priority.=A0 And I kinda doubt thats gonna happen ;) On Nov 22, 2004, at 10:33 AM, Shane wrote: That kind of sucks that you can't define a journal to a section. I'd=20 submit that one as a feature request to slash's SF, if I were you. Anyway, I think if I were going to do what you wanted, I'd a) create the new section b) install the plugin Slash::Page then copy the index\;page\;default template to=20 index\;page\;mynewsection. edit it, rip out most of what's in there, and do something like the=20 following: [% js =3D Slash.getObject('Slash::Journal'); IF js; =A0=A0 my max =3D 30; =A0 =A0 my jentries =3D js.topRecent(max); %] =A0 =A0 <ul> =A0 =A0 [% =A0 =A0 FOREACH je =3D jentries; %] =A0 =A0 =A0 =A0 <li><a href=3D"/joural.pl?op=3Dview&id=3D[% je.id %]">[%=20= je.description %]</a></li> =A0 =A0 [% END %] =A0 =A0 </ul> [% END %] save the template, use template-tool to load it into your db. then use=20= template-tool -T to test the template. edit, remove bugs, rinse and=20 repeat. you can then test the thing by doing: /usr/local/slash/plugins/Page/page.pl virtual_user=3Dslash ssi=3DYes=20 section=3Dmynewsection to see it's output. If it looks good, restart apache and slashd. There are more methods to use in Slash::Journal, however don't bother=20 perldoc'ing it, there's no docs. View the file in=20 /usr/local/slash/plugins/Journa/Journal.pm. The Slash::Page plugin is *very* useful for stuff like this. You can=20 very easily create unique index pages for a section with all sorts of=20 weird stuff. And if you don't like it, just edit the indexhandler for=20 the section and change it from page.pl back to index.pl. Hope that helps. =A0Shane On Nov 22, 2004, at 8:17 AM, li...@li... wrote: I don't see an obvious way to do this without making some changes in the code, but I thought I'd check to see if anyone has done this yet. I'd like to make a new section for the journals, so that the index page=20= at journals.lisnews.com spits out the latest journal from each user, like that "Most Recent Journal Entries" slashbox does. So what I'm thinking is that all this new index page needs to do is pull out journals instead of stories. It could be handled as a section, but=20= the journals don't get sections. There's probably not much to it, but has anyone built a page like this already? I'm *still* terribly slow when it comes to poking around in the slashcode. -Blake ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/ _______________________________________________ Slashcode-general mailing list Sla...@li... https://lists.sourceforge.net/lists/listinfo/slashcode-general ------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now.=20 http://productguide.itmanagersjournal.com/ _______________________________________________ Slashcode-general mailing list Sla...@li... https://lists.sourceforge.net/lists/listinfo/slashcode-general |
From: Jamie M. <ja...@mc...> - 2004-11-22 16:50:28
|
li...@li... writes: > I'd like to make a new section for the journals, so that the > index page at journals.lisnews.com spits out the latest journal > from each user, like that "Most Recent Journal Entries" > slashbox does. >=20 > So what I'm thinking is that all this new index page needs to > do is pull out journals instead of stories. That's it in a nutshell. It's actually pretty simple for someone who knows perl, a bit of SQL, and a bit about Slash. I guarantee there are at least three people reading this list (who don't work for OSTG) that could do this for you, maybe if you offered them money. For me, it'd take about an afternoon, but don't hold anyone else to that :) Basically, the skins table provides a column where you specify the name of the .pl script that provides the homepage for that skin.=20 You'll need to write a custom .pl script. Probably base it off index.pl or maybe page.pl if you prefer that look (it's a little more baroque, a little more modular). But where those scripts call getStoriesEssentials(), you'll need to call a new method which returns -- instead of the latest n stories -- the latest n journal entries. Then instead of displaying the data with the dispStory template, make a new template (dispJournal I guess) and invoke that instead. Once that script works, you add a new row to the skins table, put the script's name in the right column and the name of the proper machine name in the right column, and restart everything. That's pretty much all there is to it. If you base it off the Page plugin, you'll see how that works, there's code in Page.pm that does the getStoriesEssentials call. You can put your new call (getJournalsEssentials?) into your new =2Epm file. Or, if you prefer to base it off index.pl, you should probably make a .pm file of your own like the Page plugin does, and stick your getJournalsEssentials call in there. --=20 Jamie McCarthy http://mccarthy.vg/ ja...@mc... |