[LON-CAPA-users] Variables in libraries
Felicia Berryman
lon-capa-users@mail.lon-capa.org
Sat, 26 Jul 2008 17:37:38 -0400
Hi Brew,
The data displays in the spreadsheet in the order: part, import, then
submission. This is also the way the order I coded it in my testing.
I'd file a bug report.
Let me know if you want me to file one for you.
Felicia
Robert_Brewington@er.monroe.edu wrote:
> Actually, I did try a few variations on this:
>
> user.resource.resource.ImportId.PartId.ResponseId
> user.resource.resource.ImportId.ResponseId
> user.resource.resource.ImportIdPartId.ResponseId
> user.resource.ImportId.PartId.ResponseId
> user.resource.resource.PartId.ImportId.ResponseId
> user.resource.resource.PartIdImportId.ResponseId
>
> I was hoping the answer would be something like this, but since I don't
> understand the naming scheme in the first place, it is hard to know what
> to try.
>
> brew
> -----lon-capa-users-admin@mail.lon-capa.org wrote: -----
>
> To: lon-capa-users@mail.lon-capa.org
> From: Felicia Berryman <felicia@lon-capa.org>
> Sent by: lon-capa-users-admin@mail.lon-capa.org
> Date: 07/25/2008 04:59PM
> Subject: Re: [LON-CAPA-users] Variables in libraries
>
> Hi Brew,
>
> I used <import id="IMPORT-ID">
>
> Then, in the spreadsheet, the submissions shows as
> stores_PART-ID_IMPORT-ID_SUBMISSION-ID_submission
>
> I tried using the import id in the $Key definition but couldn't get it
> to work. Try playing with this though. It appears you need to use the
> import id to access the submission.
>
> Felicia
>
> Felicia Berryman wrote:
> > Hi Brew,
> >
> > Just making your example simpler. You can use my text below to
> create a
> > bug report if no one has any ideas on how to make this work.
> >
> > $Key displays after submission using problem code below:
> > ---------------------------------------------
> > <problem>
> > <script type="loncapa/perl">
> > $Key
> =&EXT('user.resource.resource.PART-ID.SUBMISSION-ID.submission');
> > </script>
> >
> > <part id="PART-ID">
> > <startouttext />Enter something<endouttext />
> > <stringresponse answerdisplay="Got it" answer="/.*/"
> id="SUBMISSION-ID"
> > type="re">
> > <textline readonly="no"></textline>
> > </stringresponse>
> > </part>
> >
> > <startouttext /><p>You entered $Key</p><endouttext />
> > </problem>
> > ---------------------------------------------
> >
> > $Key doesn't display after submission using problem code below:
> > ---------------------------------------------
> > <problem>
> > <script type="loncapa/perl">
> > $Key
> =&EXT('user.resource.resource.PART-ID.SUBMISSION-ID.submission');
> > </script>
> >
> > <part id="PART-ID">
> > <import>brew.library</import>
> > </part>
> >
> > <startouttext /><p>You entered $Key</p><endouttext />
> > </problem>
> > ---------------------------------------------
> > Where brew.library is:
> > ---------------------------------------------
> > <library>
> > <startouttext />Enter something<endouttext />
> > <stringresponse answerdisplay="Got it" answer="/.*/"
> id="SUBMISSION-ID"
> > type="re">
> > <textline readonly="no"></textline>
> > </stringresponse>
> > </library>
> > ---------------------------------------------
> >
> > Felicia
> >
> > Robert_Brewington@er.monroe.edu wrote:
> >> I have been beating this for a couple of days, and am having
> trouble
> >> understanding a) what is going on, and b) what I should do about
> it:)
> >>
> >> The basic idea is that I want to put various pieces of code in
> >> libraries, which are then called from the main problems.
> Otherwise I
> >> end up with the same code copied into many problems; when I want to
> >> make a change, I have to somehow find all those problems and change
> >> them. Of course, LonCapa doesn't have any search tools, so it is
> >> awkward to do this over my 7000 problems.
> >>
> >> The problem I am having is understanding when my script
> variables will
> >> work and when they won't. I know this has to do with the order that
> >> the main problem html versus the libraries are
> >> parsed/evaluated/something.
> >>
> >> In the example below, the status of the problem part SetupKey
> within
> >> the FunctionCode library is retrieved fine. However, I do not
> seem to
> >> be able to retrieve the SetupKey submission at any time, either
> from
> >> within the FunctionCode library (the ideal case) or from the
> >> MainProblem code.
> >>
> >> So, 1) why doesn't this work? and
> >> 2) how would I obtain the submission?
> >>
> >> Thanks for any clues,
> >> brew
> >>
> >> MainProblem.problem: =========================================
> >> <problem>
> >> <script type="loncapa/perl">
> >> $KeyCodeBeforeMain =
> >> &EXT('user.resource.resource.SetupKey.KeyCode.submission');
> >> $whichScript="BeforeMain";
> >> </script>
> >>
> >> <import id="SetKey">FunctionCode.library</import>
> >>
> >> <script type="loncapa/perl">
> >> $KeyCodeAfterMain =
> >> &EXT('user.resource.resource.SetupKey.KeyCode.submission');
> >> $whichScript="AfterMain";
> >> </script>
> >>
> >> <part id=junk>
> >> <startouttext />
> >> whichScript is {$whichScript} <p/>
> >> statusKey is {$statusKey} <p/>
> >> KeyCodeBeforeMain is {$KeyCodeBeforeMain} <p/>
> >> KeyCodeBefore is {$KeyCodeBefore} <p/>
> >> KeyCodeAfter is {$KeyCodeAfter} <p/>
> >> KeyCodeAfterMain is {$KeyCodeAfterMain} <p/>
> >>
> >> <endouttext />
> >> <stringresponse answer="yes" id="stuff" type="ci">
> >> <textline readonly="no">
> >> </textline>
> >> </stringresponse>
> >> </part>
> >> </problem>
> >>
> >>
> >> FunctionCode.library: ===========================================
> >> <library>
> >>
> >> <script type="loncapa/perl">
> >> $KeyCodeBefore =
> >> &EXT('user.resource.resource.SetupKey.KeyCode.submission');
> >> $statusKey = &EXT('user.resource.resource.SetupKey.solved');
> >> $whichScript="BeforeSetupKey";
> >> </script>
> >>
> >>
> >> <part id="SetupKey">
> >> <startouttext />
> >> Enter the key
> >> <endouttext />
> >> <stringresponse id="KeyCode" answer="/.*/" type="re">
> >> <textline readonly="no">
> >> </textline>
> >> </stringresponse>
> >> </part>
> >>
> >> <script type="loncapa/perl">
> >> $KeyCodeAfter =
> >> &EXT('user.resource.resource.SetupKey.KeyCode.submission');
> >> $whichScript="AfterSetupKey";
> >> </script>
> >>
> >> </library>
> >>
> >> ==========================================================
> >>
> >> _______________________________________________ LON-CAPA-users
> mailing
> >> list LON-CAPA-users@mail.lon-capa.org
> >> http://mail.lon-capa.org/mailman/listinfo/lon-capa-users
> >
>
> --
> Felicia Berryman
> Instructional Systems
> Michigan State University
> (517)432-7326
> LON-CAPA Technical Support Available at:
> http://www.loncapa.msu.edu - MSU Users
> http://www.help.lon-capa.org - General
> _______________________________________________
> LON-CAPA-users mailing list
> LON-CAPA-users@mail.lon-capa.org
> http://mail.lon-capa.org/mailman/listinfo/lon-capa-users
>
>
>
> _______________________________________________ LON-CAPA-users mailing
> list LON-CAPA-users@mail.lon-capa.org
> http://mail.lon-capa.org/mailman/listinfo/lon-capa-users
--
Felicia Berryman
LON-CAPA Support Coordinator
Michigan State University
Phone: (517)432-9866
Technical Support Available at:
http://www.loncapa.msu.edu - MSU Users
http://www.help.lon-capa.org - General