Plug-in Evaluations: Work on user interface. See eval_help.html for current status and 'To Do' List.

This commit is contained in:
dennis 2011-05-01 22:33:56 +00:00
parent 97d101d4bb
commit 7fbab3d8e6
14 changed files with 829 additions and 476 deletions

View File

@ -23,363 +23,681 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title> <title>SFIAB Evaluations Help</title>
</head> <style type="text/css">
.style1
<body> {
<p align="center"><strong>Welcome to Evaluations Help</strong></p> font-size: large;
<p><a href="../index.php" title="Return to Evaluations Main page" target="_self">Return to Evaluations</a></p> }
<p><a href="#intro" target="_self">Introduction:</a>&nbsp; &nbsp;An overview of Evaluations plug-in for SFIAB</p> .style2
<p><a href="#install">Installation</a>:&nbsp; How to Install Evaluations plug-in</p> {
<p><a href="#process" title="Typical sequence of actions when using Evaluations" target="_self">Process:</a>&nbsp; &nbsp; The typical process used in Evaluations plug-in</p> font-weight: normal;
<p><a href="#setup" title="How to set up your evaluations scheme" target="_self">Setup</a>:&nbsp; &nbsp;How to set up the evaluations schemes for your event.</p> }
<p><a href="#actions" title="Details about each of the administrative actions for Evaluations" target="_self"> </style>
Step by Step:</a>&nbsp;&nbsp;Details about the administrative actions (steps) in the Evaluations process.</p> </head>
<p><a href="#examples" title="Several examples of Evaluations setup" target="_self">Examples:</a>&nbsp; Examples of setting up Evaluations for different types of project evaluations and scoring.</p>
<p><a href="#tables" title="Details about the database tables supporting Evaluations" target="_self">Tables:</a>&nbsp; &nbsp;Details about the database tables used in Evaluations.</p> <body>
<p><a href="#apperson">Apperson Scanner:</a>&nbsp;&nbsp; How to setup SFIAB to use <p align="center"><strong>Welcome to Evaluations Help</strong></p>
the Apperson Education Products Benchmark 3000 Scanner.</p> <p><a href="../index.php" title="Return to Evaluations Main page" target="_self">
<p>&nbsp; </p> Return to Evaluations</a></p>
<p><a href="#intro" target="_self">Introduction:</a>&nbsp; &nbsp;An overview of
Evaluations plug-in for SFIAB</p>
<p><a href="#install">Installation</a>:&nbsp; How to Install Evaluations plug-in</p>
<p><a href="#process" title="Typical sequence of actions when using Evaluations" target="_self">
Process:</a>&nbsp;&nbsp;&nbsp; The typical process used in Evaluations plug-in</p>
<p><a href="#setup" title="How to set up your evaluations scheme" target="_self">
Setup</a>:&nbsp; &nbsp;How to set up the evaluations schemes for your event.</p>
<p><a href="#actions" title="Details about each of the administrative actions for Evaluations" target="_self">
Step by Step:</a>&nbsp;&nbsp;Details about the administrative actions (steps) in the
Evaluations process.</p>
<p><a href="#examples" title="Several examples of Evaluations setup" target="_self">
Examples:</a>&nbsp; Examples of setting up Evaluations for different types of
project evaluations and scoring.</p>
<p><a href="#tables" title="Details about the database tables supporting Evaluations" target="_self">
Tables:</a>&nbsp; &nbsp;Details about the database tables used in Evaluations.</p>
<p><a href="#apperson">Apperson Scanner:</a>&nbsp;&nbsp; How to setup SFIAB to use
the Apperson Education Products Benchmark 3000 Scanner.</p>
<p>&nbsp; </p>
<p> <p>
NOTE:&nbsp; The Evaluations plugin should be &#39;functional&#39; at this time but not NOTE:&nbsp; The Evaluations plugin should be &#39;functional&#39; at this time but not
secured. Until security is incorporated, it should not be used on real data.&nbsp; secured. Until security is incorporated, it should not be used on real data.&nbsp;
I will need James to help implement security.<br /> I will need James to help implement security.<br />
To Do list:&nbsp; (in order of importance - sort of):</p> To Do list:&nbsp; (in order of importance - sort of):</p>
<ul> <ul>
<li>Anyone: Add Security so only committe members or perhaps judges can get to this <li>Anyone: Add Security. Dennis suggests the following:<br />
plugin web pages<br /> &nbsp;&nbsp; -&nbsp; Committe members (the administration staff)&nbsp; have access to
&nbsp;&nbsp;&nbsp; This needs some planning and inputs.&nbsp; Should any judge be all of the Evaluations package.<br />
allowed to log-in and get to these pages or..<br /> &nbsp;&nbsp;&nbsp; - Judges can access the Evalutaion input form (page
&nbsp;&nbsp;&nbsp;&nbsp; should there be some special password for a judge team (or just eval_webentry.php) but can enter data only if:<br />
committee members or ...)</li> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; They log in with their password.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; They can only enter data for teams to
which they are assigned.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (optionally perhaps every team would be
required to have a team leader and only the team leader can enter data)<br />&nbsp;&nbsp;&nbsp; This needs some planning and inputs.</li>
<li>Dennis: Fix so only projects in table judges_teams_timeslots_projects_link are <li>Dennis: Fix so only projects in table judges_teams_timeslots_projects_link are
&#39;Linked&#39; into eval_projects and eval_projects_entries. At this time all projects &#39;Linked&#39; into eval_projects and eval_projects_entries. At this time all projects
are linked - will only want the &#39;complete&#39; and assigned to a team projects.</li> are linked - we will only want the &#39;complete&#39; and assigned to a team projects.</li>
<li>Dennis: Make sure it will work with more than one judging round. For now it is <li>Dennis: Make sure it will work with more than one judging round. For now it is
set up only for one judging round. It is unknow what will happen if there are set up only for one judging round. It is unknow what will happen if there is
more than one round.&nbsp; Perhaps an option during linking to select which more than one round.&nbsp; Perhaps an option during linking to select which round.</li>
round.</li> <li>Dennis:&nbsp; Add project number and team numbers to the exported files where
<li>Dennis:&nbsp; Document the details of using the Apperson Scanners - and how to usefull.&nbsp; add team_id and project_id to preslug export (for reference)</li>
set up the fair to do so.</li> <li>Anyone:&nbsp; Add to TRUNK version.&nbsp; Dennis cannot do due to not being able to get
<li>Anyone:&nbsp; Add to TRUNK version.&nbsp; Dennis cannot do due to not being able Trunk fully running - needs help.</li>
to get Trunk fully running - needs help.</li>
<li>Anyone:&nbsp; Clean up the front end user interface.&nbsp; <ul> <li>Anyone:&nbsp; Clean up the front end user interface.&nbsp; <ul>
<li>Set up for english or french&nbsp; (routines should be in sfiab_common.inc.php - <li>Set up for English or French&nbsp; (routines should be in sfiab_common.inc.php - if
if not, add them there if same as in SFIAB.</li> not, add them there if same as in SFIAB.</li>
<li>Make the menus and tables etc all look like SFIAB.</li> <li>Make the menus and tables etc all look like SFIAB.</li>
</ul> </ul>
</li> </li>
<li>AAnyone:&nbsp; Test with different schemes - perhaps send to those current users <li>Anyone:&nbsp; Test with different schemes - perhaps we could set up Evaluations
who are interested in or currently using a scoreing method.</li> for those current users who
<li>Anyone:&nbsp; Make it a true &#39;plug-in&#39;.&nbsp;&nbsp; Download and add to SFIAB are interested in or currently using a scoring method.</li>
versus currently &#39;part of&#39; SFIAB - or not</li> <li>Anyone:&nbsp; Make it a true &#39;plug-in&#39;.&nbsp;&nbsp; Download and add to SFIAB versus currently
&#39;part of&#39; SFIAB - or not</li>
<li>Etc.</li> <li>Etc.</li>
</ul> </ul>
<p>&nbsp;</p> <p>&nbsp;</p>
<p align="center"><strong><a name="intro" id="intro"></a>Introductiong></p> <p align="center"><a name="intro" id="intro"></a><b>Introduction</b></p>
<p align="left">Evaluations is a plug-in to SFIAB.&nbsp; That means you can add it to your current version of SFIAB with <p align="left">Evaluations is a plug-in to SFIAB.&nbsp; That means you can add it
minimal changes to your current SFIAB version.&nbsp; No changes will be made to to your current version of SFIAB with minimal changes to your current SFIAB
your current SFIAB data. In other words, no matter where you are in the SFIAB process for your event, you can add and take advantage of Evaluations and not worry about it creating problems.&nbsp; If you decide to not use it in the future you can 'unplug' it without any effect on your current setup or data. <br /> version.&nbsp; No changes will be made to your current SFIAB data. In other
</p> words, no matter where you are in the SFIAB process for your event, you can add
<p align="left">There are two changes in the configuration of SFIAB that must be implemented and take advantage of Evaluations and not worry about it creating problems.&nbsp;
during the installing of Evaluations:<br /> If you decide to not use it in the future you can &#39;unplug&#39; it without any effect
SFIAB must be configured for judging as follows:<br /> on your current setup or data. <br />
&nbsp;- the table config must have an entry with var =&nbsp; 'score_entry_enable' and val = 'yes' <br /> </p>
&nbsp;- the table judges_teams_timeslots_projects_link must have a field 'score'&nbsp; Float&nbsp; length 5.2&nbsp; null=yes<br /> <p align="left">There are two changes in the configuration of SFIAB that must be
Configuring SFIAB in this manner will also enable the necessary links in the admin menu and the judges menu for using Evaluations. This is the SFIAB configuration used my one or more fairs in the past. implemented during the installing of Evaluations:<br />
</p> SFIAB must be configured for judging as follows:<br />
<p align="left">Evaluations provides a very configurable method of capturing 'scores' for your projects.&nbsp; You can configure multiple schemes used for scoring!&nbsp; For each scheme you design the evaluation criteria to use, the weighting for each criteria and the levels (choices) judges can select from for each criteria. With multiple schemes you can design a completely different method of evaluation for each different type of projects (i.e. senior divisions versus junior divisions, team projects, etc.)&nbsp; When your organization changes the way they want you to evaluate projects, just change the Evaluations setup.</p> &nbsp;- the table config must have an entry with var =&nbsp; &#39;score_entry_enable&#39; and
<p align="left">Evaluations provides several methods of collecting your judge teams (judges) evaluations.&nbsp; Web pages are built for each scheme for entry on the web.&nbsp; CSV files are created for use with scanners or for creating your own forms to be used by the judge teams (judges)</p> val = &#39;yes&#39; <br />
<p align="left">And, all the calculations are done for you. Evaluations uses the information in your setup to calculate scores from the entries made by the judges. The code works for all combinations of possible schemes - it all driven by the tables. So, once you can set up your scheme(s) Evaluations can do the math. &nbsp; A unique averaging method is used when you collect more than one evaluation for each project so all the valid data is used, even if one judge team leaves out a mark or makes multiple marks on their evaluations forms (i.e. when using scanners)..&nbsp; </p> &nbsp;- the table judges_teams_timeslots_projects_link must have a field &#39;score&#39;&nbsp;
<p><br /> Float&nbsp; length 5.2&nbsp; null=yes<br />
</p> Configuring SFIAB in this manner will also enable the necessary links in the
<p align="center"><strong><a name="process" id="process"></a>Process</strong></p> admin menu and the judges menu for using Evaluations. This is the SFIAB
<p align="left">The process in a nutshell is:</p> configuration used my one or more fairs in the past.
<p align="left">1. Install Evaluations plug-in:</p> </p>
<p align="left">2. Set up your evaluation schemes, criteria and values:</p> <p align="left">Evaluations provides a very configurable method of capturing
<p align="left">3. After all your projects and judge teams are configured - Link &#39;scores&#39; for your projects.&nbsp; You can configure multiple schemes used for
Evaluations to your SFIAB data. </p> scoring!&nbsp; For each scheme you design the evaluation criteria to use, the
<p align="left">4. If required, Export the necessary data for use by external weighting for each criteria and the levels (choices) judges can select from for
programs or scanners to collect the evaluations:<br /> each criteria. With multiple schemes you can design a completely different
&nbsp;&nbsp; &nbsp;&nbsp; - CSV files are created for download for your use in programming scanners and pre slug of the scanner forms<br /> method of evaluation for each different type of projects (i.e. senior divisions
&nbsp;&nbsp; &nbsp; -&nbsp; CSF files can be use to create your own evaluation forms.</p> versus junior divisions, team projects, etc.)&nbsp; When your organization
<p align="left">5. The judge&nbsp;teams (judges) do the evaluations and 'mark' the appropriate level for each of the criteria for the scheme that applies to the project.</p> changes the way they want you to evaluate projects, just change the Evaluations
<ul> setup.</p>
<li> Web forms for entries are used for teams who log into the <p align="left">Evaluations provides several methods of collecting your judge teams
web site. Any committee member can log in, then enter the team number&nbsp; to bring up the projects assigned (judges) evaluations.&nbsp; Web pages are built for each scheme for entry on the
to that team.&nbsp;</li> web.&nbsp; CSV files are created for use with scanners or for creating your own
<li> The team enters the evaluation for each project assigned.</li> forms to be used by the judge teams (judges)</p>
<li> Other methods of collecting evaluations can be <p align="left">And, all the calculations are done for you. Evaluations uses the
implemented using the exported CSV files.&nbsp;&nbsp;&nbsp; </li> information in your setup to calculate scores from the entries made by the
</ul> judges. The code works for all combinations of possible schemes - it all driven
<p align="left">6. The data is collected into a table in Evaluations.&nbsp;</p> by the tables. So, once you can set up your scheme(s) Evaluations can do the
<ul> math.&nbsp;&nbsp; A unique averaging method is used when you collect more than
<li>If the judges use a web page the data goes directly into the table.&nbsp; </li> one evaluation for each project so all the valid data is used, even if one judge
<li>Uploads from a specified CSV file format will also load the table so...&nbsp; no matter what technique you use the data is collected in a standard format for the next steps.</li> team leaves out a mark or makes multiple marks on their evaluations forms (i.e.
</ul> when using scanners)..&nbsp; </p>
<p align="left">7.&nbsp;The data is processed (a button push).&nbsp;</p> <p><br />
<ul> </p>
<li> A score is created for each judge / project evaluation.&nbsp; &nbsp;</li> <p align="center"><strong><a name="process" id="process"></a>Process</strong></p>
<li>An average evaluation score is created for each project that is the average of all the evaluations done for the project. </li> <p align="left">The process in a nutshell is:</p>
</ul> <p align="left">1. Install Evaluations plug-in:</p>
<p align="left">8. If a caucus of the judge team requires some adjustments to the evaluations scores, that is accomplished by the team leader (chair person) - resulting in the final score for the project.</p> <p align="left">2. Set up your evaluation schemes, criteria and values:</p>
<p align="left">9. Reports and or CSV files are available for the final&nbsp;results.</p> <p align="left">3. After all your projects and judge teams are configured - Link
<p align="left">10.&nbsp; A tool is provided to facilitate assigning the winners of some of the category awards (1st, 2nd, 3rd prizes and honorable mentions) where those winners simply rely on the ranking results.</p> Evaluations to your SFIAB data. </p>
<p align="left">&nbsp;</p> <p align="left">4. If required, Export the necessary data for use by external
<p align="center"><strong><a name="setup" id="setup"></a>Setup</strong></p> programs or scanners to collect the evaluations:<br />
<p align="left">It is imperative you understand how to correctly setup Evaluations for your event.&nbsp; With that in mind we will try our best to explain how the setup works and the various options that are available.</p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - CSV files are created for download for your use in
<p align="left"><strong>Definitions:</strong></p> programming scanners and pre slug of the scanner forms<br />
&nbsp;&nbsp;&nbsp;&nbsp; -&nbsp; CSF files can be use to create your own evaluation
forms.</p>
<p align="left">5. The judge&nbsp;teams (judges) do the evaluations and &#39;mark&#39; the
appropriate level for each of the criteria for the scheme that applies to the
project.</p>
<ul>
<li> Web forms for entries are used for teams who log into the web site. Any
committee member can log in, then enter the team number&nbsp; to bring up the
projects assigned to that team.&nbsp;</li>
<li> The team enters the evaluation for each project assigned.</li>
<li> Other methods of collecting evaluations can be implemented using the exported
CSV files.&nbsp;&nbsp;&nbsp; </li>
</ul>
<p align="left">6. The data is collected into a table in Evaluations.&nbsp;</p>
<ul>
<li>If the judges use a web page the data goes directly into the table.&nbsp; </li>
<li>Uploads from a specified CSV file format will also load the table so...&nbsp; no
matter what technique you use the data is collected in a standard format for the
next steps.</li>
</ul>
<p align="left">7.&nbsp;The data is processed (a button push).&nbsp;</p>
<ul>
<li> A score is created for each judge / project assignement with complete
&#39;captured&#39; data.&nbsp; &nbsp;</li>
<li>An average evaluation score is created for each project that is the average of
all the evaluations done for the project.</li>
<li>These scores can be used as desired by the fair officials </li>
</ul>
<p align="left">8. If a caucus of the judge team or the official responsible for a
particular division requires some adjustments to the
evaluations scores, that is accomplished by the team leaders (chair persons or
other officials) -
resulting in the final scores for the projects in each division.</p>
<p align="left">9. Reports and or CSV files are available for the final&nbsp;results.</p>
<p align="left">10.&nbsp; A tool is (TBD) provided to facilitate assigning the winners of
some of the category awards (1st, 2nd, 3rd prizes and honorable mentions) where
those winners simply rely on the divisional ranking results.</p>
<p align="left">&nbsp;</p>
<p align="center"><strong><a name="setup" id="setup"></a>Setup</strong></p>
<p align="left">It is imperative you understand how to correctly setup Evaluations
for your event.&nbsp; With that in mind we will try our best to explain how the
setup works and the various options that are available.</p>
<p align="left"><strong>Definitions:</strong></p>
<p align="left"><strong>Scheme:</strong> A method of evaluating a set of projects - <p align="left"><strong>Scheme:</strong> A method of evaluating a set of projects -
perhaps differently than other projects.&nbsp; For instance you might have a scheme for team projects and another scheme for non-team projects.&nbsp; Or, you might have different schemes for each division in your event. Each scheme has a specific set of criteria, criteria weights and evaluation levels (choices) used to evaluate a project and then to calculate a score for that project.&nbsp;Each project is assigned a scheme. You can have as many schemes as you like. Each scheme has an id, a&nbsp;name and a selection statement. The selection statement is used to select which scheme is used for each project.&nbsp; The selection statement has three parts. the perhaps differently than other projects.&nbsp; For instance you might have a
&#39;item&#39;, the &#39;condition&#39; and the &#39;value&#39; - like 'div &gt; 1'. &nbsp;Each project that matches the selection statement of one of the schemes is assigned that scheme. Here are a couple of examples of schemes:</p> scheme for team projects and another scheme for non-team projects.&nbsp; Or, you
<p align="left">scheme id&nbsp; &nbsp;&nbsp; name&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;selection statement &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; result<br /> might have different schemes for each division in your event. Each scheme has a
1&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;ISEF scoring&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp; team = no&nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; projects with one student are assigned scheme id 1<br /> specific set of criteria, criteria weights and evaluation levels (choices) used
2&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ISEF (Team)&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; team = yes&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;projects with two or more students are assigned scheme id 2</p> to evaluate a project and then to calculate a score for that project.&nbsp;Each
<p align="left">scheme id&nbsp; &nbsp; name&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; selection statement&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; result&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;assumes we have 2 categories setup - Junior = 1,&nbsp;&nbsp; Senior =2<br /> project is assigned a scheme. You can have as many schemes as you like. Each
1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; Junior Category&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cat = 1&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; projects with category id = 1 (junior) are assigned scheme id scheme has an id, a&nbsp;name and a selection statement. The selection statement is
1. <br /> used to select which scheme is used for each project.&nbsp; The selection
2&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Senior Category&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp;cat &gt; 1&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; projects with category id = 2 or higher are assigned scheme id statement has three parts. the &#39;item&#39;, the &#39;condition&#39; and the &#39;value&#39;.
2. (could use cat = 2 also)</p> For example
<p align="left"><strong><em>'item':</em></strong> The &#39;item&#39; part can have and of the following values:&nbsp; (more can be added it your request but it requires a code change.)<br /> &#39;div &gt; 1&#39;.&nbsp; Each part must be separated by one space character.&nbsp;Each project that matches the selection statement of one of the
&nbsp;&nbsp; team:&nbsp; If the project has one student then the value of team is 'no'.&nbsp;&nbsp; If the project has more than one student then the value of team is 'yes'&nbsp; <br /> schemes is assigned that scheme. Here are a couple of examples of schemes:</p>
&nbsp;&nbsp; cat:&nbsp; &nbsp; This represents the setting of the category_id assigned to the project.&nbsp;You set up categories in SFIAB and each project gets assigned one of those categories.&nbsp; <br /> <p align="left">scheme id&nbsp;&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; div:&nbsp; &nbsp; This represents the setting of the division_id assigned to the project.&nbsp; You set up divisions in SFIAB and each project gets assigned one of those divisions.<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;selection statement&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; grade: This represents the grade of the project's student. For teams, grade is the grade of the team member with the highest grade.<br /> result<br />
&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
cwdiv: This represents the Canada wide science fair division id (cwsfdivisionid field in projects).</p> &nbsp;ISEF scoring&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<p align="left"><em><strong>&#39;condition'</strong></em>:&nbsp; &nbsp;You are allowed to use any one of these team = no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
symbols as the &#39;condition&#39; part of the scheme selection criteria:<br /> projects with one student are assigned scheme id 1<br />
=&nbsp; &nbsp; &nbsp; &nbsp; Equal<br /> 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
!= &nbsp;&nbsp;&nbsp;&nbsp; Not Equal<br /> ISEF (Team)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&lt;&nbsp; &nbsp;&nbsp; &nbsp; Less Than<br /> team = yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;projects with two or
&gt; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Greater Than more students are assigned scheme id 2</p>
</p> <p align="left">scheme id&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<p align="left"><strong><em>'value:'</em></strong>&nbsp; The &#39;value&#39; part represents the value of the Field for each project.&nbsp; For instance team can have a value of 'yes' or 'no'. Cat can have values like 0,1,2... - whatever you used for the Category Ids when you set up Age Categories in SFIAB. cwsfdivisionid has values those in Canada should understand.</p> selection statement&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<p align="left">So, you can setup criteria like&nbsp; &nbsp;'team = yes'&nbsp; &nbsp;or 'div = 1' or 'div &lt; 3' or 'team != no'&nbsp; &nbsp;etc.&nbsp;Except for team (value = 'yes' or 'no) it is important to use a value that is set up for that field in SFIAB else the scheme_id will not be set correctly in Evaluations projects data.</p> result&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;assumes we
<p align="left"><strong>Criteria:</strong>&nbsp;&nbsp;Each evaluation scheme will have a set of criteria.&nbsp; These are what the judge team considers when comparing a project with other projects and with a standard. Examples of criteria are:&nbsp; 'Scientific Thought',&nbsp; 'Skill',&nbsp; 'Thoroughness', 'Teamwork', 'Research Skill', Etc.&nbsp; You create the&nbsp;criteria for each scheme used for your event. In fact you can have different criteria and a different number of criteria for each scheme For instance, elementary school projects may require only two criteria - 'Scientific Approach'&nbsp; 'Completeness'&nbsp; where as a senior school projects will require criteria of more relevance to the project advancing to&nbsp;the next level.</p> have 2 categories setup - Junior = 1,&nbsp;&nbsp; Senior =2<br />
<p align="left"><strong>Levels:&nbsp;</strong> Each evaluation scheme will have a set of levels.&nbsp; Levels are like grades.&nbsp; You determine the number of levels your evaluations will have and the value assigned to each level for each scheme. For instance you might have levels of A, B, C, D, F with values of 4,3,2,1,0 for one scheme and levels of Exceptional, Excellent, Very Good , Good, Acceptable with values of 5,4,3,2,1 for another scheme. The values do not have to be a sequence of integers but that works best. There are also optional 'special use' levels you can create that allow you to do error checking on the judges entries and take the appropriate action if the entry has errors.&nbsp; Special use levels are not used in calculating a score. An example is to assign a 'special use'&nbsp; level of 'No Entry' with a value of 0.&nbsp; Then when a scanner or any other process used to collect entries detects that there is no mark for a criteria it can assign the value 0 to the entry and Evaluations knows to 1.) not use that criteria entry in the calculations and 2.) indicate the error in the status for that entry. The short 4 character level_code is then added to the status for that entry.&nbsp; Setting a 'special use' level &quot;MultipleMarks&quot; with a value of 7 would allow the collection process (i.e. a scanner) to set that value when multiple entries are made for a criteria. Evaluations knows to not use that criteria's entry in the calculations and can indicate the error in the status.</p> 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<p align="left"><strong>Weighting:</strong>&nbsp; Each criteria will have a weighing assigned&nbsp;in such a way that the sum of the weights for all the criteria to be used is = 100. Lets do an example:&nbsp; Say one of your evaluations schemes has 4 levels -L1, L2, L3 and L4 with values of 1,2,3,4&nbsp; and the scheme as 3 criteria C1, C2 and C3. with weights of 20,30, 50.&nbsp; Note the weights add up to 100. Define level_value as the entry made by the judge for a given criteria.&nbsp; It will be 1,2,3 or 4 in this example.&nbsp; Also define max_level_val as the maximum level value used in calculating a score (i.e. not a 'special use' level) &nbsp;In this example max_level_val = 4. Given all that, a score in this example is calculated as follows:</p> Junior Category&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cat = 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<p align="left">score = &nbsp;&nbsp;( C1.level_value * C1.weight + C2.level_value * C2.weight + C3.level_value * C3.weight) / ( max_level_val)&nbsp;</p> projects with category id = 1 (junior) are assigned scheme id 1. <br />
<p align="left">If all level_values are = 4 (the perfect project), then:</p> 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<p align="left">perfectscore = (4*20 + 4*30 + 4*50) / 4</p> Senior Category&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cat &gt; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<p align="left">perfectscore = 80 + 120 + 200) /4</p> projects with category id = 2 or higher are assigned scheme id 2. (could use cat
<p align="left">perfectscore = 400&nbsp;/ 4 = 100&nbsp;</p> = 2 also)</p>
<p align="left">the lowest score for this scheme will be:</p> <p align="left"><strong><em>&#39;item&#39;:</em></strong> The &#39;item&#39; part can have and of
<p align="left">lowest score = (1*20 + 1* 30 + 1* 50) / 4 = 25</p> the following values:&nbsp; (more can be added it your request but it requires a
<p align="left">Note:&nbsp; You may enter a criteria with a weight of &#39;0&#39;&nbsp;&nbsp; code change.)<br />
This allows keeping the number of criteria the same for each scheme. This &nbsp;&nbsp; team:&nbsp; If the project has one student then the value of team is
special case is used to provide compatibility with the Exported CSV files used to &#39;no&#39;.&nbsp;&nbsp; If the project has more than one student then the value of
pre slug the Apperson Education Products Benchmark 3000 scanners. </p> team is &#39;yes&#39;&nbsp; <br />
<p align="left">Setup:&nbsp; Now that you understand (hopefully) the definitions we can explain how you set up 'Evaluations'<br /> &nbsp;&nbsp; cat:&nbsp;&nbsp;&nbsp; This represents the setting of the category_id
Note: For now all setup is done in the tables.&nbsp; This will be updated as I create the web pages for setup</p> assigned to the project.&nbsp;You set up categories in SFIAB and each project gets
<p align="left">1.) Decide how many schemes you will need.&nbsp; Most events will use only one scheme, some will want two or more. Enter the schemes in table eval_schemes.&nbsp;enter the item, condition and value in the scheme's selection statement.</p> assigned one of those categories.&nbsp; <br />
<p align="left">2.)&nbsp;For each scheme enter a record in eval_criteria for each criteria to be used for that scheme.</p> &nbsp;&nbsp; div:&nbsp;&nbsp;&nbsp; This represents the setting of the division_id
<p align="left">3.) For each scheme enter a record in eval_levels for each level to be used for that scheme.</p> assigned to the project.&nbsp; You set up divisions in SFIAB and each project
<p align="left">For an example for ISEF evaluations (2010) see evaluations/db/db.eval.setup.isef.sql.&nbsp; gets assigned one of those divisions.<br />
This setup is compatible with the Apperson Education Products Benchmark 3000 &nbsp;&nbsp; grade: This represents the grade of the project&#39;s student. For teams,
scanners.</p> grade is the grade of the team member with the highest grade.<br />
<p align="left">&nbsp;</p> &nbsp;&nbsp; cwdiv: This represents the Canada wide science fair division id
<p align="center"><strong><a name="actions" id="actions"></a>Step By Step Process</strong></p> (cwsfdivisionid field in projects).</p>
<p align="center"><a name="install" id="install"></a><strong>Installation</strong></p> <p align="left"><em><strong>&#39;condition&#39;</strong></em>:&nbsp; &nbsp;You are allowed to use
<p align="left">To install Evaluations plug-in follow these steps:</p> any one of these symbols as the &#39;condition&#39; part of the scheme selection
<ul> criteria:<br />
<li>If the folder 'plugins' does not exist in your SFIAB website root (along with admin, data, Rmail and other folders) add the folder 'plugins'.</li> =&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Equal<br />
<li>Place all the folders and files frome the evaluations package under/in the folder 'plugins'.This will be the main folder 'evaluations' and under that folder many files, and some other folders (like 'db', 'uploads', 'docs'...)</li> !=&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Not Equal<br />
<li>Make the evaluations folder 'uploads' writable. How to do that depends on your web server.</li> &lt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Less Than<br />
<li>When you are done you should have this setup of folders &gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Greater Than
<p align="left">'root'&nbsp; &nbsp;(the base folder for sfiab)<br /> </p>
&nbsp; 'admin'&nbsp; &nbsp; the SFIAB admin folder<br /> <p align="left"><strong><em>&#39;value:&#39;</em></strong>&nbsp; The &#39;value&#39; part represents
&nbsp;&nbsp; ...&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;other SFIAB folders<br /> the value of the Field for each project.&nbsp; For instance team can have a
&nbsp;&nbsp;'plugins'&nbsp; &nbsp;&nbsp; ( a folder for all plugins)<br /> value of &#39;yes&#39; or &#39;no&#39;. Cat can have values like 0,1,2... - whatever you used
&nbsp;&nbsp; &nbsp; 'evaluations'&nbsp; &nbsp;&nbsp; (the Evaluations plug-in base folder)<br /> for the Category Ids when you set up Age Categories in SFIAB. cwsfdivisionid has
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; 'db' folder&nbsp; &nbsp;&nbsp; (the Evaluations data base creation and update files and the various default evaluation setup files)<br /> values those in Canada should understand.</p>
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; 'docs' folder&nbsp;&nbsp;&nbsp; &nbsp;(files for information or download)<br /> <p align="left">So, you can setup criteria like&nbsp; &nbsp;&#39;team = yes&#39;&nbsp; &nbsp;or &#39;div =
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; 'uploads'&nbsp;folder &nbsp; (uploaded files are placed here while in use - then deleted - folder must be 'writable'.)<br /> 1&#39; or &#39;div &lt; 3&#39; or &#39;team != no&#39;&nbsp; &nbsp;etc.&nbsp;Except for team (value = &#39;yes&#39; or
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;files...&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;The various files for Evaluations.<br /> &#39;no) it is important to use a value that is set up for that field in SFIAB else
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; .....<br /> the scheme_id will not be set correctly in Evaluations projects data.</p>
&nbsp;&nbsp; 'Rmail' ... or other SFIAB folders.<br /> <p align="left"><strong>Criteria:</strong>&nbsp;&nbsp;Each evaluation scheme will have a set
</p> of criteria.&nbsp; These are what the judge team considers when comparing a
</li> project with other projects and with a standard. Examples of criteria are:&nbsp;
<li> &#39;Scientific Thought&#39;,&nbsp; &#39;Skill&#39;,&nbsp; &#39;Thoroughness&#39;, &#39;Teamwork&#39;, &#39;Research
<p align="left">There will be no link in SFIAB to get to the main page for evaluations so.. do the following:<br /> Skill&#39;, Etc.&nbsp; You create the&nbsp;criteria for each scheme used for your event.
- Log into SFIAB as a super user.<br /> In fact you can have different criteria and a different number of criteria for
- In you web browser go to 'SFIAB/plugins/evaluations/eval_index.php'<br /> each scheme For instance, elementary school projects may require only two
&nbsp; &nbsp; (Where 'SFIAB' is you main browser root name for your SFIAB installation)<br /> criteria - &#39;Scientific Approach&#39;&nbsp; &#39;Completeness&#39;&nbsp; where as a senior
- If Evaluations is not installed you will be quided through the steps to install and set up Evaluations.</p></li> school projects will require criteria of more relevance to the project advancing
</ul> to&nbsp;the next level.</p>
<p>What the installation does:</p> <p align="left"><strong>Levels:&nbsp;</strong> Each evaluation scheme will have a set of
<ul> levels.&nbsp; Levels are like grades.&nbsp; You determine the number of levels
<li>Adds tables to SFIAB database.&nbsp; Tables eval_config, eval_projects, eval_schemes, eval_criteria, eval_levels, eval_projects_entries.</li> your evaluations will have and the value assigned to each level for each scheme.
<li>Processes any database updates based on the Evaluations revision&nbsp;and sql changes.</li> For instance you might have levels of A, B, C, D, F with values of 4,3,2,1,0 for
<li>Proceeds to the set&nbsp;up&nbsp;where: one scheme and levels of Exceptional, Excellent, Very Good , Good, Acceptable
<ul> with values of 5,4,3,2,1 for another scheme. The values do not have to be a
<li>The only two changes to existing SFIAB database are made: sequence of integers but that works best. There are also optional &#39;special use&#39;
<ul> levels you can create that allow you to do error checking on the judges entries
<li>An entry is made in the SFIAB table 'config' setting&nbsp; var = 'score_entry_enable'&nbsp;with val = 'yes' (if that entry does not already exist).</li> and take the appropriate action if the entry has errors.&nbsp; Special use
<li>If the SFIAB table 'judges_teams_timeslots_projects_link'&nbsp;does not have the field 'score' then that field is added. Score is entered as Float (5,2)&nbsp; (Floating point 5 digits, 2 after the decimal point. I.E. 100.00 or 44 or 66.66).</li> levels are not used in calculating a score. An example is to assign a &#39;special
</ul> use&#39;&nbsp; level of &#39;No Entry&#39; with a value of 0.&nbsp; Then when a scanner or
</li> any other process used to collect entries detects that there is no mark for a
<li>You may select from one or more pre-configured evaluations schemes or enter your own evaluation scheme, criteria and levels for your event.</li> criteria it can assign the value 0 to the entry and Evaluations knows to 1.) not
</ul> use that criteria entry in the calculations and 2.) indicate the error in the
</li> status for that entry. The short 4 character level_code is then added to the
</ul> status for that entry.&nbsp; Setting a &#39;special use&#39; level &quot;MultipleMarks&quot; with
<p>Link Evaluations to Data base:&nbsp; For Evaluations to function it must be linked to the SFIAB data. This step creates (or updates) all the linkages so that Evaluations has the necessary information from SFIAB (read only) to accomplish the tasks designed into Evaluations.</p> a value of 7 would allow the collection process (i.e. a scanner) to set that
<p align="left">Assign judge teams (or judges) to the projects they are to evaluate.&nbsp;The default here is to use the judge_team_projects assignments of SFIAB so it is important that these are setup in SFIAB and that you run the 'Link Evaluations' after they are setup to update the Evaluations information.&nbsp;Optionally, you can go thru a completely different assignment of judges to projects.&nbsp; This feature is NOT IMPLEMENTED for revision 100 of Evaluations and will be implemented only if enough requests are generated.</p> value when multiple entries are made for a criteria. Evaluations knows to not
<p align="left">Create the evaluations documents or files required to enter the evaluations.&nbsp; This step can do several options.<br /> use that criteria&#39;s entry in the calculations and can indicate the error in the
&nbsp;1.)&nbsp; &nbsp;A web form for each evaluation scheme is created automatically for each judge teams' assigned projects.&nbsp; The form will have the following:<br /> status.</p>
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; - an entry for the team&nbsp;(or judge) number doing the evaluation.&nbsp; (one of the judge team members must be logged in.)<br /> <p align="left"><strong>Weighting:</strong>&nbsp; Each criteria will have a weight
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; -&nbsp; an entry (selection) of one of the assigned project numbers.<br /> assigned&nbsp;in such a way that the sum of the weights for all the criteria to be
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;- a web form table is presented with bubbles to mark for the project as follows<br /> used is = 100. Lets do an example:&nbsp; Say one of your evaluations schemes has
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; criteria&nbsp; &nbsp;&nbsp; criteria&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;criteria ....<br /> 4 levels -L1, L2, L3 and L4 with values of 1,2,3,4&nbsp; and the scheme has 3
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; criteria C1, C2 and C3. with weights of 20,30, 50.&nbsp; Note the weights add up
level&nbsp; &nbsp; &nbsp; [ ]&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [ ]&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [ ]<br /> to 100. Define level_value as the entry made by the judge for a given criteria.&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; level&nbsp; &nbsp; &nbsp; [ ]&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [ ]&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [ ]<br /> It will be 1,2,3 or 4 in this example.&nbsp; Also define max_level_val as the
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maximum level value used in calculating a score (i.e. not a &#39;special use&#39; level)
level &nbsp; &nbsp;&nbsp; [ ]&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;[ ]&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; [ ] <br /> &nbsp;In this example max_level_val = 4. Given all that, a score in this example is
&nbsp;&nbsp; &nbsp;&nbsp; &nbsp; -&nbsp; a button to submit the evaluation entries</p> calculated as follows:</p>
<p align="left">&nbsp; 2.)&nbsp; &nbsp;CSV download files to be used by your organization to create your own web pages, or score forms or to pre slug standard forms or to import to scanners.&nbsp; The files should have enough data to accomplish your process.&nbsp; If not, request additional data be added.&nbsp; (coding changes)<br /> <p align="left">score = &nbsp;&nbsp;( C1.level_value * C1.weight + C2.level_value * C2.weight
&nbsp; + C3.level_value * C3.weight) / ( max_level_val)&nbsp;</p>
3.)&nbsp;&nbsp; specific CSV files to be used to:<br /> <p align="left">If all level_values are = 4 (the perfect project), then:</p>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; - Load the 'student' data into the Apperson Education Products Benchmark 3000 scanner (requires a specific scheme setup).<br /> <p align="left">perfectscore = (4*20 + 4*30 + 4*50) / 4</p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <p align="left">perfectscore = 80 + 120 + 200) /4</p>
- Pre slug the Apperson Education Products Benchmark 3000 'Science Fair evaluation'&nbsp;&nbsp; forms. </p> <p align="left">perfectscore = 400&nbsp;/ 4 = 100&nbsp;</p>
<p align="left">Evaluate the projects:&nbsp; During this time the judge teams (or judges) either mark the forms for your event, enter the evaluations on the web page or some other process to capture the required information.&nbsp; For each project, each evaluation they need the following:<br /> <p align="left">the lowest score for this scheme will be:</p>
&nbsp; -&nbsp; project number&nbsp; (this is automatic in web page and Apperson scanner)<br /> <p align="left">lowest score = (1*20 + 1* 30 + 1* 50) / 4 = 25</p>
&nbsp; -&nbsp; Team or judge number&nbsp; (this is required to verify that that team or judge has been assigned to the project.<br /> <p align="left">Note:&nbsp; You may enter a criteria with a weight of &#39;0&#39;&nbsp;&nbsp;
&nbsp; -&nbsp;a list of&nbsp; criteria_id, level_id&nbsp; pairs representing the evaluation of the project.&nbsp; (automatic with Apperson scanner and web page)<br /> This allows keeping the number of criteria the same for each scheme. This
&nbsp; - other optional items not yet designed.</p> special case is used to provide compatibility with the Exported CSV files used
<p align="left">Enter the evaluations:&nbsp; &nbsp;the data from the evaluations is entered into Evaluations tables.&nbsp; This is done by the web page, or an upload from the Apperson Scanner or by an upload of a CSV file(s) created by you with the correct specifications.&nbsp; &nbsp;Details TBD.<br /> to pre slug the Apperson Education Products Benchmark 3000 scanners. </p>
</p> <p align="left">Setup:&nbsp; Now that you understand (hopefully) the definitions we
<p align="left">Calculate the scores:&nbsp; &nbsp;This is simply a button push. It calculates the individual score for each evaluation and... calculated the project's eval_score which is an average all of the evaluations for that project. </p> can explain how you set up &#39;Evaluations&#39;</p>
<p align="left">Enter the final scores:&nbsp; After a caucus of the judge team(s) some adjustment will sometimes be required to the projects scores.&nbsp;This can be accomplished using a Evaluations web page<br /> <p align="left">1.) Decide how many schemes you will need.&nbsp; Most events will
</p> use only one scheme, some will want two or more. Enter the schemes in the
<p align="left">&nbsp;</p> &#39;Create / Edit Schemes&#39; page. </p>
<p align="center"><strong><a name="examples" id="examples"></a>Examples</strong></p> <p align="left">2.)&nbsp;For each scheme enter the evaluation criteria to be used for that scheme
<p align="left">examples:&nbsp; TBD</p> using the &#39;Create / Edit Criteria&#39; page.</p>
<p align="left">&nbsp;</p> <p align="left">3.) For each scheme enter the evaluatons levels to be used for that scheme
<p align="center"><strong><a name="tables" id="tables"></a>Tables</strong></p> in the &#39;Create / Edit Levels&#39; page.</p>
<p align="left">Table description&nbsp; TBD&nbsp; &nbsp;for now see the db.eval.full.100.sql file&nbsp;or browse the tables with phpmyadmin.</p> <p align="left">When Evaluations is first installed, schemes, criteria and levels
<p align="left">eval_projects:&nbsp; Caution:&nbsp;&nbsp; contains all projects, are created for the ISEF evaluations (2010) and to use the Apperson Education
even those not assigned.&nbsp; (may change this later - or not)</p> Products Benchmark 3000 scanners. You can use these, eliminate the &#39;teams&#39;
<p align="left">eval_projects-entries.&nbsp; A copy of scheme or create your own schemes, criteria and levels. </p>
judges_teams_timeslots_projects_links with additional fields&nbsp;&nbsp;&nbsp; <p align="left">&nbsp;</p>
( a record for each project - judge team assignment with the scheme_id, and an entry for the selected value_id during judging.</p> <p align="center"><strong><a name="actions" id="actions"></a>Step By Step Process</strong></p>
<p align="center"><b><a name="apperson"></a>Setup SFIAB to use Apperson Scanner</b></p> <p align="center"><a name="install" id="install"></a><strong>Installation</strong></p>
<p align="center" style="text-align: left">If you want to use the Apperson Scanner <p align="left">To install Evaluations plug-in follow these steps:</p>
to record evaluation the following SFIAB setup rules must apply:</p> <ul>
<p align="center" style="text-align: left">The main requirement is that the scanner <li>If the folder &#39;plugins&#39; does not exist in your SFIAB website root (along with
(and forms) require project numbers form 1 to 9999 and Judge numbers from 1 to admin, data, Rmail and other folders) add the folder &#39;plugins&#39;.</li>
9999<br /> <li>Place all the folders and files frome the evaluations package under/in the
To accomplish this the following must be true.<br /> folder &#39;plugins&#39;.This will be the main folder &#39;evaluations&#39; and under that
&nbsp;&nbsp; If the Category digit(s) are removed from the SFIAB project number the folder many files, and some other folders (like &#39;db&#39;, &#39;uploads&#39;, &#39;docs&#39;...)</li>
resulting numbers must be unique.<br /> <li>Make the evaluations folder &#39;uploads&#39; writable. How to do that depends on your
web server.</li>
<li>When you are done you should have this setup of folders
<p align="left">&#39;root&#39;&nbsp; &nbsp;(the base folder for sfiab)<br />
&nbsp; &#39;admin&#39;&nbsp;&nbsp;&nbsp; the SFIAB admin folder<br />
&nbsp;&nbsp; ...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;other SFIAB folders<br />
&nbsp;&nbsp;&#39;plugins&#39;&nbsp;&nbsp;&nbsp;&nbsp; ( a folder for all plugins)<br />
&nbsp;&nbsp;&nbsp;&nbsp; &#39;evaluations&#39;&nbsp;&nbsp;&nbsp;&nbsp; (the Evaluations
plug-in base folder)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;db&#39; folder&nbsp;&nbsp;&nbsp;&nbsp;
(the Evaluations data base creation and update files and the various default
evaluation setup files)<br />
&nbs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;docs&#39; folder&nbsp;&nbsp;&nbsp; &nbsp;(files
for information or download)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;images&#39; folder<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#39;uploads&#39;&nbsp;folder&nbsp;&nbsp; (uploaded
files are placed here while in use - then deleted - folder must be &#39;writable&#39;.)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;files...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;The various files for Evaluations.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; .....<br />
&nbsp;&nbsp; &#39;Rmail&#39; ... or other SFIAB folders.<br />
</p>
</li>
<li>
<p align="left">There will be no link in SFIAB to get to the main page for
evaluations so.. do the following:/>
- Log into SFIAB as a super user.<br />
- In you web browser go to &#39;SFIAB/plugins/evaluations/eval_index.php&#39;<br />
&nbsp;&nbsp;&nbsp; (Where &#39;SFIAB&#39; is you main browser root name for your SFIAB
installation)<br />
- If Evaluations is not installed you will be quided through the steps to
install and set up Evaluations.</p></li>
</ul>
<p>What the installation does:</p>
<ul>
<li>Adds tables to SFIAB database.&nbsp; Tables eval_config, eval_projects, eval_schemes,
eval_criteria, eval_levels, eval_projects_entries.</li>
<li>Processes any database updates based on the Evaluations revision&nbsp;and sql
changes.</li>
<li>Proceeds to the set&nbsp;up&nbsp;where:
<ul>
<li>The only two changes to existing SFIAB database are made:
<ul>
<li>An entry is made in the SFIAB table &#39;config&#39; setting&nbsp; var =
&#39;score_entry_enable&#39;&nbsp;with val = &#39;yes&#39; (if that entry does not already exist).</li>
<li>If the SFIAB table &#39;judges_teams_timeslots_projects_link&#39;&nbsp;does not have the
field &#39;score&#39; then that field is added. Score is entered as Float (5,2)&nbsp;
(Floating point 5 digits, 2 after the decimal point. I.E. 100.00 or 44 or
66.66).</li>
</ul>
</li>
<li>You You may select from one or more pre-configured evaluations schemes or enter your
own evaluation scheme, criteria and levels for your event. (TBD)&nbsp; For now,
the ISEF schemes, criteria and levels are set up.</li>
</ul>
</li>
</ul>
<p style="text-align: center"><b>Using Evaluations</b></p>
<p>Link Evaluations to Data base:&nbsp; For Evaluations to function it must be
linked to the SFIAB data. This step creates (or updates) all the linkages so
that Evaluations has the necessary information from SFIAB (read only) to
accomplish the tasks designed into Evaluations.</p>
<p align="left">Assign judge teams (or judges) to the projects they are to
evaluate.&nbsp;The default here is to use the judge_team_projects assignments of
SFIAB so it is important that these assignments are setup in SFIAB and that you run the
&#39;Link Evaluations&#39; after they are setup (or if they are changed) to update the Evaluations
information.&nbsp;Optionally, you can go through a completely different assignment of
judges to projects.&nbsp; This feature is NOT IMPLEMENTED for revision 100 of
Evaluations and will be implemented only if enough requests are generated.</p>
<p align="left">Create the evaluations documents or files required to enter the
evaluations.&nbsp; This step can do several options./>
&nbs&nbsp;1.)&nbsp; &nbsp;A web form &#39;Evaluations Web Entry&#39; created automatically for
each judge teams&#39; assigned projects using the Evaluations and SFIAB setup.&nbsp; The form will have the following:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - an entry for the team&nbsp;(or judge)
number doing the evaluation.&nbsp; (one of the judge team members must be logged
in.)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -&nbsp; an entry (selection) of one
of the assigned project numbers.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;- a web form table is presented with bubbles to
mark for the project as follows<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
criteria&nbsp;&nbsp;&nbsp;&nbsp; criteria&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;criteria
....<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; level&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[ ]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ ]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[ ]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; level&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[ ]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [ ]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[ ]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; level&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[ ]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;[ ]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
[ ] <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; -&nbsp; a button to submit the evaluation
entries</p>
<p align="left">&nbsp; 2.)&nbsp; &nbsp;CSV download files to be used by your organization
to create your own web pages, or score forms or to pre slug standard forms or to
import to scanners.&nbsp; The files should have enough data to accomplish your
process.&nbsp; If not, request additional data be added.&nbsp; (coding changes)<br />
&nbsp; 3.)&nbsp;&nbsp; specific CSV files to be used to:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Load the
&#39;student&#39; data into the Apperson Education Products Benchmark 3000 scanner
(requires a specific scheme setup).<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - Pre slug the
Apperson Education Products Benchmark 3000 &#39;Science Fair evaluation&#39;&nbsp;&nbsp;
forms. </p>
<p align="left">Evaluate the projects:&nbsp; During this time the judge teams (or
judges) either mark the forms for your event, enter the evaluations on the web
page or some other process to capture the required information.&nbsp; For each
project, each evaluation the following will be required:<br />
&nbsp; -&nbsp; project number&nbsp; (this is automatic in web page and Apperson
scanner)<br />
&nbsp; -&nbsp; Team or judge number&nbsp; (this is required to verify that that
team or judge has been assigned to the project.<br />
&nbsp; -&nbsp;a list of&nbsp; criteria_id, level_id&nbsp; pairs representing the
evaluation of the project.&nbsp; (automatic with Apperson scanner and web page)<br />
&nbsp; - other optional items not yet designed.</p>
<p align="left">Enter the evaluations:&nbsp; &nbsp;The data from the evaluations is
entered into Evaluations tables.&nbsp; This is done by the web page &#39;Import
Evaluations Data (Apperson Scanner)&#39; or by an upload of a CSV file(s) created by you
with the correct specifications.&nbsp; &nbsp;Details TBD.<br />
</p>
<p align="left">Calculate the scores:&nbsp; &nbsp;This is simply a button push using
page &quot;Calculate Scores&#39;. It
calculates the individual score for each evaluation and... calculates the
project&#39;s evaluation scorewhich is an average all of the evaluations for that
project. </p>
<p align="left">Enter the final scores:&nbsp; After a caucus of the judge team(s) or
divisional officials and judges,
some adjustment will sometimes be required to the projects scores.&nbsp;This can be
accomplished using a Evaluations web page (TBD)<br />
</p>
<p align="left">&nbsp;</p>
<p align="center"><strong><a name="examples" id="examples"></a>Examplesrong></p>
<p align="left">examples:&nbsp; TBD</p>
<p align="left">&nbsp;</p>
<p align="center"><strong><a name="tables" id="tables"></a>Tables</strong></p>
<p align="left">TablTable descriptions&nbsp; TBD&nbsp; &nbsp;for now see the
db.eval.full.100.sql file&nbsp;or browse the tables with phpmyadmin.</p>
<p align="left">eval_projects:&nbsp; Caution:&nbsp;&nbsp; contains all projects,
even those not assigned.&nbsp; (may change this later - or not)
<p align="left">eval_projects-entries.&nbsp; A copy of
judges_teams_timeslots_projects_links with additional fields&nbsp;&nbsp;&nbsp; (
a record for each project - judge team assignment with the scheme_id, and an
entry for the selected value_id during judging.</p>
<p align="left">&nbsp;</p>
<p align="center"><b><a name="apperson"></a><strong><span class="style1">Setup SFIAB
to use Apperson Scanner</span></strong></b></p>
<p style="text-align: center">
<b>About the Apperson Education Products Benchmark 3000 scanner:</b></p>
<p style="text-align: center">
<a href="http://www.appersonedu.com/default.aspx" target="_blank">
Apperson Education Products</a></p>
<p style="text-align: center">
&nbsp;</p>
<p>
<img alt="The Apperson Benchmark 3000 scanner"
src="images/BenchMark3000.jpg" style="width: 760px; height: 142px" /></p>
<p>
Apperson Education Products worked with a regional science fair in New Mexico to
develop a special &#39;Science Fair&#39; Option on their Benchmark 3000 scanner.&nbsp;
This option is very robust. You download and import your fair&#39;s data into the
scanners student database so that means only perfect forms will be scanned
without rejection. Forms with multiple marks or missing
marks are rejected but the good data is captured. Forms with a judge and exhibit combination not in the student database
are also rejected.&nbsp; The scores collected from the forms are exported - then uploaded to
your fair&#39;s Judges Evaluations for processing on the website.&nbsp; If you are
interested in using Apperson Benchmark scanner contact Apperson Education
Products. Be sure to ask for the &#39;Science Fair&#39; add-on option. <b>
<br />
Here are the requirements to use the Apperson Scanners:<br />
&nbsp;- You will require a PC running Microsoft Windows and must have a license for
MS Word.
<br />
&nbsp;- You may have no more than 99 projects in a given project Division.<br />
&nbsp;- You must setup Evaluations Schemes, Criteria and Levels as described below.</b></p>
<p>
<a href="http://www.appersonedu.com/scanners/benchmarktestscanner.aspx"
target="_blank">
Apperson Education Products - Benchmark 3000</a>&nbsp;</p>
<p>
&nbsp;</p>
<p>
<img alt="Apperson Science Fair Score Form"
src="images/AppersonScoreForm.jpg" style="width: 750px; height: 575px" /><br />
&nbsp;
<br />
&nbsp;&nbsp; Sample of Form A1308 - the &#39;science fair&#39; score form from Apperson
Education Products<br />
&nbsp;&nbsp;&nbsp; </p>
<p align="center" style="text-align: left">Here is how the process works:</p>
<ul>
<li>
<p align="center" style="text-align: left">
Data from your fair is used to &#39;pre-slug&#39; the score forms.&nbsp; A bar code with
the project number and judge number (team number) is printed on the form along
with other information. The bar code is not shown in the image above - it is
printed to the right of the top text box marked &#39;SAMPLE&#39;. A MS Word document is included in
the Evaluations package as well as
the file you can export to use with the MS Word document to accomplish this
task using a &#39;Mail Merge&#39; type process. The boxes with the word &#39;SAMPLE&#39; as well as the box below &#39;Marking
Instruction are available for your text.&nbsp; The supplied MS Word document and
the Export file are designed to meet most needs but you can modify the document
to meet your fair&#39;s needs.</p>
</li>
<li>
<p align="center" style="text-align: left">
Another exported file creates the &#39;student data&#39; that is loaded into the
scanner. That file contains the project numbers and judge number as well as
other project and judge identification information.&nbsp; The file is loaded
into the scanner program (DataLink) and is used to verify barcodes on the forms
with the data in the scanning program.</p>
</li>
<li>
<p align="center" style="text-align: left">
Judges (teams) mark the forms for their assigned projects.&nbsp; The criteria
and levels provided are those used by ISEF (as of this publish date).</p>
</li>
<li>
<p align="center" style="text-align: left">
The forms are scanned and data gathered.&nbsp; Forms not matching the student
data base are rejected and no data is created.&nbsp; Forms matching the student
data base create a data record and are not rejected. Forms with multiple marks
in any criteria or missing marks for any criteria are rejected but the data is
capatured.
<br />
&nbsp; -&nbsp; The marks on the forms create numbers corresponding to the &#39;value_id&#39; as
described below.&nbsp; 0 meaning missing mark, 7 meaning multiple marks</p>
</li>
<li>
<p align="center" style="text-align: left">
The captured data records are &#39;exported&#39; from the scanner <strong>&nbsp;at any
time in the scanning process -</strong>creating a text file.</p>
</li>
<li>
<p align="center" style="text-align: left">
The text files are &#39;imported&#39; to SFIAB Evaluations and the data placed in a
database table for processing.</p>
</li>
<li>
<p align="center" style="text-align: left">
The &#39;Calculate Scores&#39; selection in Evaluations processes the data and creates
judge (team( scores and a project score based on the imported data.&nbsp;
</p>
</li>
</ul>
<p align="center" style="text-align: left">If you want to use the Apperson Scanner
to record evaluations you must setup SFIAB to meet certain conditions - as
follows: &nbsp;</p>
<p align="center" style="text-align: left">The main requirement is that the scanner
(and forms) require project numbers from 1 to 9999 and Judge numbers from 1 to
9999<br />
To accomplish this the following must be true: If the Category digit(s) are
removed from the SFIAB project number the resulting numbers must be unique.<br />
<br />
Here is one way to accomplish the above requirements:<br />
* Set the Configuration variables in SFIAB as follows:<br />
&nbsp;&nbsp; -Allows for the setup of different divisions for each category:&nbsp; =
Yes&nbsp; (not sure, perhaps No will also work???)<br />
&nbsp;&nbsp; -Project Numbering Format = CDN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
(Category, Division, Number)<br />
* Project Age Categories: The Categories&#39; IDs must be an integer from 1 to 9&nbsp;&nbsp;
(usually&nbsp; 1 = Junior,&nbsp;&nbsp; 2 = Senior)<br />
* Divisions:&nbsp;&nbsp; The Divisions&#39; IDs must be integers from 1 to 99&nbsp;&nbsp;
(Usually Junior = 1 to n,&nbsp; Senior = n+1 to ..(99max)<br />
* When creating the Divisions, Create a separate Division ID&nbsp; for each
Category even if the Division name is the same.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ( Do not assign more than one category to a Division)<br />
&nbsp;&nbsp;&nbsp; Example:<br />
&nbsp;&nbsp;&nbsp; Category&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Division<br />
&nbsp;&nbsp;&nbsp; 1 - Junior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1 - Animal Science&nbsp; (junior)&nbsp;&nbsp;&nbsp;
<br />
&nbsp;&nbsp;&nbsp; 1 - Junior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
2 - Chemistry&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (junior)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
etc ...<br />
&nbsp;&nbsp;&nbsp; 2 - Senior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
22- Animal Science (senior)<br />
&nbsp;&nbsp;&nbsp; 2 - Senior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
23 - Chemistry<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; etc<br />
Thus, project Numbers are never more than 5 digits&nbsp;&nbsp; - i.e. CDDNN
where NN is the exhibit sub number in the specific Division. And, when the &#39;C&#39;
is removed the remaining number is still a unique number. Project numbers used
in the score form barcode and in the &#39;student&#39; data are then the SFIAB project
number stripped of the first digit (the category digit).&nbsp; However...<br />
&nbsp;<b>VERY IMPORTANT - This means there can be no more than 99 projects in a given
category-division.</b><span class="style2"><br />
</span>&nbsp;&nbsp; If that becomes a problem for your fair,&nbsp; a different
SFIAB numbering method could be invented.<br />
&nbsp;&nbsp;
<br />
Other methods may also work.&nbsp; If you have a suggestion, let us know.on, let us know.<br />
<br /> <br />
Here is one way to accomplish the above requirements:<br /> Evaluation Schemes You can have&nbsp; 2 - Non-Team and Team&nbsp;&nbsp; (ISEF
Configuration variables:<br /> eliminated special scoring for teams in 2011 so you may want just one evaluation
&nbsp;-Allows for the setup of different divisions for each category:&nbsp; = Yes&nbsp; scheme for all projects.)<br />
(not sure, perhaps No will also work???)<br />
&nbsp;-Project Numbering Format = CDN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
(Category, Division, Number)<br />
Project Age Categories: The Categories' IDs must be an integer from 1 to 9&nbsp;&nbsp;
(usually&nbsp; 1 = Junior,&nbsp;&nbsp; 2 = Senior)<br />
Divisions:&nbsp;&nbsp; The Divisions&#39; IDs must be integers from 1 to 99&nbsp;&nbsp;
(Usually Junior = 1 to n,&nbsp; Senior = n+1 to ..(99max)<br />
When creating the Divisions, Create a separate Division ID&nbsp; for each
Category even if the Division name is the same.<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ( do Not assign more than one category to a Division)<br />
&nbsp;&nbsp;&nbsp; Example:<br />
&nbsp;&nbsp;&nbsp; Category&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Division<br />
&nbsp;&nbsp;&nbsp; 1 - Junior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
1 - Animal Science&nbsp; (junior)&nbsp;&nbsp;&nbsp;
<br />
&nbsp;&nbsp;&nbsp; 1 - Junior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
2 - Chemistry&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (junior)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
etc ...<br />
&nbsp;&nbsp;&nbsp; 2 - Senior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
22- Animal Science (senior)<br />
&nbsp;&nbsp;&nbsp; 2 - Senior&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
23 - Chemistry<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; etc<br />
Thus, project Numbers are never more than 5 digits&nbsp;&nbsp; - i.e. CDDNN
where NN is the exhibit sub number in the specific Division. And, when the &#39;C&#39;
is removed the remaining number is still a unique number. However...<br />
&nbsp;VERY IMPORTANT - This means there can be no more than 99 projects in a given
category-division.<br />
&nbsp;&nbsp; If that becomes a problem for your fair,&nbsp; a different SFIAB
numbering method must be invented.<br />
&nbsp;&nbsp;
<br />
Other methods may also work.&nbsp; If you have a suggestion, let us know.<br />
<br />
Evaluation Schemes You must have&nbsp; 2 - Non-Team and Team&nbsp;&nbsp; (One
may work&nbsp; not sure yet)<br />
Evaluation Criteria&nbsp;&nbsp; You must have 6 criteria for each scheme with Evaluation Criteria&nbsp;&nbsp; You must have 6 criteria for each scheme with
Ids from 1 to 6 as follows *you can use ISEF weighting or your own)<br /> Ids from 1 to 6 as follows *you can use ISEF weighting or your own)<br />
id&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; id&nbsp;&nbsp;&nbsp; name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
weight non team&nbsp;&nbsp;&nbsp;&nbsp; weight team<br /> weight non team&nbsp;&nbsp;&nbsp;&nbsp; weight team<br />
1 -Creative Ability&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1 -Creative Ability&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
25<br /> 25<br />
2 -Scientific Thought&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2 -Scientific Thought&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 30&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
25<br /> 25<br />
3 -Thoroughness&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 3 -Thoroughness&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
15&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
12<br />
4 -Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
15&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 15&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
12<br /> 12<br />
5 -Clarity&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 4 -Skill&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 15&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
12<br />
5 -Clarity&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
10<br /> 10<br />
6 -Teamwork&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 6 -Teamwork&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
16<br /> 16<br />
<br /> <br />
Note: Starting in 2011, ISEF no longer uses the Teamwork criteria - all projects You must have 7 levels for each criteria with Ids from 0 to 7&nbsp; (6 not used)
are evaluated using the non-team weights<br /> as follows: (You could own &#39;level_values&#39; but for ISEF the level-values are the
<br /> same as the level_id.&nbsp;
<br /> </p>
You must have 7 levels for each criteria with Ids from 0 to 6 as follows: (You <p align="center" style="text-align: left">id&nbsp; value name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
can use your own level_values but for ISEF the value = id<br /> spec_use&nbsp; Spec_use_code<br />
id&nbsp; value name&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; spec_use&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; No mark&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Spec_use_code<br /> yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NoMk<br />
0&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp; No mark&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Acceptable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
NoMk<br />
1&nbsp;&nbsp; 1&nbsp;&nbsp; Acceptable&nbsp;&nbsp;&nbsp; no<br />
2&nbsp;&nbsp; 2&nbsp;&nbsp; Good&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
no<br /> no<br />
3&nbsp;&nbsp; 3&nbsp;&nbsp; Very Good&nbsp;&nbsp; no<br /> 2&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Good&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
4&nbsp;&nbsp; 4&nbsp;&nbsp; Excellent&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; no<br /> no<br />
5&nbsp;&nbsp; 5&nbsp;&nbsp; Exceptional&nbsp;&nbsp; no<br /> 3&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Very Good&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
7&nbsp;&nbsp; 7&nbsp; MultipleMark yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; no<br />
4&nbsp;&nbsp;&nbsp;&nbsp; 4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Excellent&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
no<br />
5&nbsp;&nbsp;&nbsp;&nbsp; 5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Exceptional&nbsp;&nbsp;&nbsp;&nbsp;
no<br />
7&nbsp;&nbsp;&nbsp;&nbsp; 7&nbsp;&nbsp;&nbsp;&nbsp; MultipleMark yes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
MltM<br /> MltM<br />
Note level_id of 6 is not used<br /> Note: level_id of 6 is not used<br />
</p> </p>
<p align="center" style="text-align: left"> <p align="center" style="text-align: left">
IMPORT data from Apperson Scanner:<br /> IMPORT data from Apperson Scanner:<br />
The file created by the scanner has the following format (the import code is The file created by the scanner has the following format (the import code is
designed to use this format)<br /> designed to use this format)<br />
&quot;Apperson_proj_num&quot;,&quot;Judgeteam_num&quot;,&quot;CreativeAbility.level_id&quot;,&quot;ScientificThouth.level_id&quot;,&quot;Thoroughness.level_id&quot;,&quot;Skill.level_id&quot;,&quot;Clarity.level_id&quot;,&quot;Teamwork.level_id&quot;,&quot;seq#&quot;<br /> &quot;Apperson_proj_num&quot;,&quot;Judgeteam_num&quot;,&quot;CreativeAbility.level_id&quot;,&quot;ScientificThouth.level_id&quot;,&quot;Thoroughness.level_id&quot;,&quot;Skill.level_id&quot;,&quot;Clarity.level_id&quot;,&quot;Teamwork.level_id&quot;,&quot;seq#&quot;<br />
where level_id are 0,1,2,3,4,5,7&nbsp;&nbsp;&nbsp;&nbsp; 0 = no mark&nbsp;&nbsp;&nbsp;&nbsp; wherwhere level_id are 0,1,2,3,4,5,7&nbsp;&nbsp;&nbsp;&nbsp; 0 = no mark&nbsp;&nbsp;&nbsp;&nbsp;
7 = double mark&nbsp; and seq# is a 6 digit sequence number created by the 7 = double mark&nbsp; and seq# is a 6 digit sequence identifier created by the
scanner.<br /> scanner.<br />
<br /> <br />
<br /> </p>
<br /> <p align="center" style="text-align: left">
<br /> <br />
</p> </p>
<p align="center" style="text-align: left">
<br />
<br />
<br />
<br />
<br />
<br />
</p>
<p align="center">
Imp</p>
</body> </body>
</html> </html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

View File

@ -24,43 +24,54 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" > <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head><title>SFIAB Evaluations Calculate scores</title> <head><title>SFIAB Evaluations Calculate Scores</title>
</head> </head>
<body> <body>
<?php <?php
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
include "eval_menu_inc.php"; include "eval_menu_inc.php";
echo "<br />Note: This updates the score field in 'judges_teams_timeslots_projects_link' for every team/project with a 'complete' evaluation entry<br />"; echo "<h2>Calculate Scores</h2><br /><br />";
echo "<br />";
echo "Click the button to Calculate and enter scores values";
echo "<form method=\"post\" action=\"eval_calc_scores.php\">";
echo "<input type=\"hidden\" name=\"action\" value=\"calc\" />";
echo "<br />";
echo "<input type=\"submit\" value=\"Calculate Scores\">";
echo "</form>";
if(!$_POST['action'] == "calc")
{
echo "</body>";
echo "</html>";
exit;
}
echo "<br />All Scores calculated and saved!<br />";
echo "<br />Development Note: This updates the score field in 'judges_teams_timeslots_projects_link' for every team/project with a 'complete' evaluation entry<br />";
echo " and updates the eval_score (current average) and eval_score_status fields in table eval_projects for every project for which an average score can be calculated.<br />"; echo " and updates the eval_score (current average) and eval_score_status fields in table eval_projects for every project for which an average score can be calculated.<br />";
echo "For test purposes (to be removed later) it lists just the project number for each project, then lists the scores details for the last project in the list.<br /><br /> "; echo "For test purposes (to be removed later) it lists just the project number for each project, then lists the scores details for the last project in the list.<br /><br /> ";
// do all projects that qualify for judging (in the judges_teams_timeslots_projects_link table) // do all projects that qualify for judging (in the judges_teams_timeslots_projects_link table)
$q = mysql_query("SELECT DISTINCT projects_id from judges_teams_timeslots_projects_link"); $q = mysql_query("SELECT DISTINCT projects_id from judges_teams_timeslots_projects_link");
while($r=mysql_fetch_object($q)) { while($r=mysql_fetch_object($q)) {
if($r->projects_id == 2281){ $ret_array = calc_scores($r->projects_id); // cal_scores is in eval_common.inc.php
echo "test"; if($ret_array == 'error') {
echo " error";
}
else{
echo " ".$ret_array[project_num];
// put scores in 'judges_teams_timeslots_projects_link'
for ($i=0;$i < $ret_array[num_teams]; $i++){
$team_id = $ret_array[team_scores][$i][team_id];
$score = $ret_array[team_scores][$i][team_score];
if (is_null($score)) {$score = "NULL";}
$up = mysql_query("UPDATE judges_teams_timeslots_projects_link SET score = ".$score.
" WHERE judges_teams_id = '".$team_id."' AND projects_id = '".$r->projects_id."' ");
}
// update eval_judges table
$up = mysql_query("UPDATE eval_projects SET eval_score = '".$ret_array[eval_score]."', eval_score_status = '".$ret_array[eval_score_status]."' WHERE project_id = '".$r->projects_id."' ");
} }
$ret_array = calc_scores($r->projects_id); // cal_scores is in eval_common.inc.php
if($ret_array == 'error') {
echo " error";
}
else{
echo " ".$ret_array[project_num];
// put scores in 'judges_teams_timeslots_projects_link'
for ($i=0;$i < $ret_array[num_teams]; $i++){
$team_id = $ret_array[team_scores][$i][team_id];
$score = $ret_array[team_scores][$i][team_score];
if (is_null($score)) {$score = "NULL";}
$up = mysql_query("UPDATE judges_teams_timeslots_projects_link SET score = ".$score.
" WHERE judges_teams_id = '".$team_id."' AND projects_id = '".$r->projects_id."' ");
}
// update eval_judges table
$up = mysql_query("UPDATE eval_projects SET eval_score = '".$ret_array[eval_score]."', eval_score_status = '".$ret_array[eval_score_status]."' WHERE project_id = '".$r->projects_id."' ");
}
} }
echo "<br /><br />"; echo "<br /><br />";
// this just prints out the values in the last project // for debug - this just prints out the values in the last project
if ($ret_array =="error"){ if ($ret_array =="error"){
echo $ret_array; echo $ret_array;
} }
@ -70,9 +81,11 @@ else {
$ret_array[team_scores][$i][proj_num] ." score =".$ret_array[team_scores][$i][team_score]. $ret_array[team_scores][$i][proj_num] ." score =".$ret_array[team_scores][$i][team_score].
" status = ".$ret_array[team_scores][$i][team_status] ."<br />"; " status = ".$ret_array[team_scores][$i][team_status] ."<br />";
}
echo "Project number ".$ret_array[project_num].": score= ".$ret_array[eval_score]." status = ".$ret_array[eval_score_status]."<br />";
} }
echo "Project number ".$ret_array[project_num].": score= ".$ret_array[eval_score]." status = ".$ret_array[eval_score_status]."<br />";
}
echo "</body>";
echo "</html>";
exit; exit;
?> ?>

View File

@ -21,7 +21,9 @@
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
?> ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head><title>SFIAB Evaluations Criteria Editor</title>
<script language="javascript"> <script language="javascript">
function confirmClick(msg) function confirmClick(msg)
{ {
@ -32,6 +34,8 @@ function confirmClick(msg)
return false; return false;
} }
</script> </script>
</head>
<body>
<?php <?php
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
@ -169,7 +173,8 @@ else
echo "</table>"; echo "</table>";
echo "</form>"; echo "</form>";
echo"Scheme ID must exist in Schemes!"; echo"Scheme ID must exist in Schemes!";
echo "</body>";
echo "</html>";
// send_footer(); // send_footer();
?> ?>

View File

@ -26,7 +26,7 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Export Evaluation Forms</title> <title>SFIAB Evaluations Export</title>
</head> </head>
<body> <body>
@ -36,6 +36,7 @@
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
include "eval_menu_inc.php"; include "eval_menu_inc.php";
echo "<h2>Export Data</h2><br /><br />";
/* Options /* Options
1. Most information for preslugging scoring forms (one record per project - judgeteam assignment) (includes scheme_id and... 1. Most information for preslugging scoring forms (one record per project - judgeteam assignment) (includes scheme_id and...

View File

@ -25,7 +25,7 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Export Evaluation Forms</title> <title>SFIAB Evaluations Import</title>
</head> </head>
<body> <body>
@ -33,6 +33,7 @@
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
include "eval_menu_inc.php"; include "eval_menu_inc.php";
echo "<h2>Import Data</h2><br /><br />";
echo "This will upload the data from an Apperson Benchmark 3000 scanner and enter the good data into the Evaluations Entries table.<br />"; echo "This will upload the data from an Apperson Benchmark 3000 scanner and enter the good data into the Evaluations Entries table.<br />";
echo "Select a file to upload, then click the 'Upload' button.<br />"; echo "Select a file to upload, then click the 'Upload' button.<br />";
echo "The file must conform to the Apperson scanner output format - see Documentation<br />"; echo "The file must conform to the Apperson scanner output format - see Documentation<br />";

View File

@ -21,7 +21,9 @@
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
?> ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head><title>SFIAB Evaluations Levels Editor</title>
<script language="javascript"> <script language="javascript">
function confirmClick(msg) function confirmClick(msg)
{ {
@ -32,6 +34,8 @@ function confirmClick(msg)
return false; return false;
} }
</script> </script>
</head>
<body>
<?php <?php
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
@ -151,10 +155,7 @@ if($_GET['action']=="edit" || $_GET['action']=="new")
echo " <td><input type=\"text\" size=\"12\" name=\"level_name\" value=\"$lvlr->level_name\" /></td>"; echo " <td><input type=\"text\" size=\"12\" name=\"level_name\" value=\"$lvlr->level_name\" /></td>";
echo " <td><input type=\"text\" size=\"3\" name=\"spec_use\" value=\"$lvlr->spec_use\" /></td>"; echo " <td><input type=\"text\" size=\"3\" name=\"spec_use\" value=\"$lvlr->spec_use\" /></td>";
echo " <td><input type=\"text\" size=\"4\" name=\"spec_use_code\" value=\"$lvlr->spec_use_code\" /></td>"; echo " <td><input type=\"text\" size=\"4\" name=\"spec_use_code\" value=\"$lvlr->spec_use_code\" /></td>";
echo "</td>"; echo "</td>";
echo " <td><input type=\"submit\" value=\"".$buttontext."\" /></td>"; echo " <td><input type=\"submit\" value=\"".$buttontext."\" /></td>";
echo "</tr>"; echo "</tr>";
} }
@ -182,8 +183,9 @@ else
echo "</table>"; echo "</table>";
echo "</form>"; echo "</form>";
echo"Scheme ID Must exist in Schemes!"; echo"Scheme ID Must exist in Schemes!";
echo "</body>";
// send_footer(); echo "</html>";
exit;
?> ?>

View File

@ -23,7 +23,7 @@
?> ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" > <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head><title>SFIAB Evaluations Linkup</title> <head><title>SFIAB Evaluations Link</title>
<link rel="stylesheet" href="sfiab.css" type="text/css" /> <link rel="stylesheet" href="sfiab.css" type="text/css" />
</head> </head>
<body> <body>
@ -32,20 +32,20 @@
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
include "eval_menu_inc.php"; include "eval_menu_inc.php";
echo "<h2>Link Evaluations and SFIAB Data</h2><br /><br />";
echo "<br /><br />"; echo "<br /><br />";
$errors = 0; $errors = 0;
echo "Click the button to link SFIAB and Evaluations. (Be patient, may take a while)";
echo "<form method=\"post\" action=\"eval_link_sfiab.php\">";
echo "<input type=\"hidden\" name=\"action\" value=\"link\" />";
echo "<br />";
echo "<input type=\"submit\" value=\"Link Now\">";
echo "</form>";
if(!$_POST['action'] == "link") if(!$_POST['action'] == "link")
{ {
echo "Click the button to link SFIAB and Evaluations";
echo "<form method=\"post\" action=\"eval_link_sfiab.php\">";
echo "<input type=\"hidden\" name=\"action\" value=\"link\" />";
echo "<br />";
echo "<input type=\"submit\" value=\"Link Now\">";
echo "</form>";
exit; exit;
} }
echo "Starting Link Process - status follows:<br /><br />"; echo "Linking Process complete - status follows:<br /><br />";
// get the eval_scheme id and eval_schemes.assignto_project_when fields // get the eval_scheme id and eval_schemes.assignto_project_when fields
$q=mysql_query("SELECT * FROM eval_schemes"); $q=mysql_query("SELECT * FROM eval_schemes");
if (!q){ if (!q){

View File

@ -1,6 +1,4 @@
<?php <?php
/* enable or replace this when front end code is added /* enable or replace this when front end code is added
if ($_SESSION['users_type'] =! 'committee'){ if ($_SESSION['users_type'] =! 'committee'){
echo "Not Logged In!<br />"; echo "Not Logged In!<br />";
@ -13,18 +11,18 @@ else
*/ */
echo "<h1>SFIAB Evaluations Plug-in</h1><br />"; echo "<h1>SFIAB Evaluations Plug-in</h1><br />";
echo "<a href=\"../../admin/index.php\">Return to SFIAB Admin </a><br />"; echo "<a href=\"../../admin/index.php\">Return to SFIAB Admin </a><br />";
echo "<br />"; //echo "<br />";
echo "<a href=\"index.php\">Evaluations Menu </a><br /><br />"; //echo "<a href=\"index.php\">Evaluations Menu </a><br /><br />";
echo "<b>Process:</b><br />"; echo "<b>Process:</b><br />";
echo " * <a href=\"eval_link_sfiab.php\">Link Evaluations to SFIAB</a><br />"; echo " * <a href=\"eval_link_sfiab.php\">Link Evaluations to SFIAB</a> ";
echo " * <a href=\"eval_export.php\">Export Evaluations Data (Apperson Scanners data, etc.)</a><br />"; echo " * <a href=\"eval_export.php\">Export Evaluations Data (Apperson Scanners data, etc.)</a> ";
echo " * <a href=\"eval_webentry.php\">Evaluations Web Entry</a><br />"; echo " * <a href=\"eval_webentry.php\">Evaluations Web Entry</a> ";
echo " * <a href=\"eval_import.php\">Import Evaluation Data (Apperson Scanners)</a><br />"; echo " * <a href=\"eval_import.php\">Import Evaluation Data (Apperson Scanners)</a> ";
echo " * <a href=\"eval_calc_scores.php\">Calculate Scores</a><br />"; echo " * <a href=\"eval_calc_scores.php\">Calculate Scores</a><br />";
echo "<b>Setup and Help:</b><br />"; echo "<b>Setup and Help:</b><br />";
echo " * <a href=\"eval_schemes.php\">Create / Edit Schemes</a><br />"; echo " * <a href=\"eval_schemes.php\">Create / Edit Schemes</a> ";
echo " * <a href=\"eval_criteria.php\">Create / Edit Criteria</a><br />"; echo " * <a href=\"eval_criteria.php\">Create / Edit Criteria</a> ";
echo " * <a href=\"eval_levels.php\">Create / Edit Levels</a><br />"; echo " * <a href=\"eval_levels.php\">Create / Edit Levels</a> ";
echo " * <a href=\"docs/eval_help.html\">Documentation</a><br /><br />"; echo " * <a href=\"docs/eval_help.html\">Documentation</a><br /><br />";
?> ?>

View File

@ -21,7 +21,9 @@
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
?> ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head><title>SFIAB Evaluations Schemes Editor</title>
<script language="javascript"> <script language="javascript">
function confirmClick(msg) function confirmClick(msg)
{ {
@ -32,6 +34,8 @@ function confirmClick(msg)
return false; return false;
} }
</script> </script>
</head>
<body>
<?php <?php
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
@ -161,7 +165,8 @@ echo "<h2>Schemes Editor</h2><br /><br />";
echo "</table>"; echo "</table>";
echo "</form>"; echo "</form>";
echo"You should assign the 'Scheme ID's in numerical order, starting with 1."; echo"You should assign the 'Scheme ID's in numerical order, starting with 1.";
echo "</body>";
echo "</html>";
// send_footer(); // send_footer();
?> ?>

View File

@ -43,6 +43,7 @@ if (($_FILES["file"]["type"] == "text/plain")
if ($_FILES["file"]["error"] > 0) if ($_FILES["file"]["error"] > 0)
{ {
echo "File Selection / upload Error: Return Code: " . $_FILES["file"]["error"] . "<br />"; echo "File Selection / upload Error: Return Code: " . $_FILES["file"]["error"] . "<br />";
echo "<br /><br /><a href=\"eval_import.php\"> Return </a><br />";
exit; exit;
} }
else else
@ -74,6 +75,7 @@ if (($_FILES["file"]["type"] == "text/plain")
fclose($fh); fclose($fh);
// delete the file // delete the file
unlink($filename); unlink($filename);
echo "<br /><br /><a href=\"eval_import.php\"> Return </a><br />";
exit; exit;
} }
$row++; $row++;
@ -98,6 +100,7 @@ if (($_FILES["file"]["type"] == "text/plain")
fclose($fh); fclose($fh);
// delete the file // delete the file
unlink($filename); unlink($filename);
echo "<br />Need to keep trying Ask Dennis to fix <br /><a href=\"eval_import.php\"> Return </a><br />";
exit; exit;
} }
if (mysql_num_rows($q) == 6){ // 6 criteria for each judgeteam-project is required to upload Apperson data if (mysql_num_rows($q) == 6){ // 6 criteria for each judgeteam-project is required to upload Apperson data
@ -138,6 +141,7 @@ if (($_FILES["file"]["type"] == "text/plain")
fclose($fh); fclose($fh);
// delete the file // delete the file
unlink($filename); unlink($filename);
echo "<br /><br /><a href=\"eval_import.php\"> Return </a><br />";
exit; exit;
} }
} }

View File

@ -25,7 +25,7 @@
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Teams Evaluations Forms</title> <title>SFIAB Evaluations Entry</title>
</head> </head>
<body> <body>
@ -33,6 +33,7 @@
include "sfiab_common.inc.php"; // check SFIAB install and get config etc. include "sfiab_common.inc.php"; // check SFIAB install and get config etc.
include "eval_common.inc.php"; // check Evaluations setup and get eval_config include "eval_common.inc.php"; // check Evaluations setup and get eval_config
include "eval_menu_inc.php"; include "eval_menu_inc.php";
echo "<h2>Judges' Project Evaluations</h2><br /><br />";
/* /*
This is an evaluation form(s) for a team. Here the team can evaluate each project assigned to the team. This is an evaluation form(s) for a team. Here the team can evaluate each project assigned to the team.
@ -46,81 +47,54 @@ This is an evaluation form(s) for a team. Here the team can evaluate each projec
* continue untill... * continue untill...
* Exit the page * Exit the page
*/ */
$newteam = false;
if($_POST['enter']=="evals") { // come here if have an evaluation entry for a given team and project if($_POST['enter']=="evals") { // come here if have an evaluation entry for a given team and project
// get the values saved in the form. // get the values saved in the form.
$oktoupdate = true; // RFU
$project_id = $_POST['project_id']; // save in form $project_id = $_POST['project_id']; // save in form
$project_num = $_POST['project_num']; // saved in form $project_num = $_POST['project_num']; // saved in form
$team_num = $_POST['team_num']; // saved in form $team_num = $_POST['team_num']; // saved in form
$judges_team_name = $_POST['team_name']; $judges_team_name = $_POST['team_name'];
$judges_teams_id = $_POST['team_id']; $judges_teams_id = $_POST['team_id'];
/* if ($oktoupdate){
* for each possible critera for the project see if it was entered (will not be a POST entry if slection was made for the post) /*
* the posts have names CR_nnn where nnn is the criteria number. The values are the 'selected' level_id (stored in evals_projects_entries) * for each possible critera for the project see if it was entered (will not be a POST entry if slection was made for the post)
* if a selection, save it in the database if not set a flag not complete. * the posts have names CR_nnn where nnn is the criteria number. The values are the 'selected' level_id (stored in evals_projects_entries)
* return to the form * if a selection, save it in the database if not set a flag not complete.
*/ * return to the form
$q = mysql_query("SELECT * FROM eval_projects WHERE project_id = '".$project_id."' "); */
if (!$q OR mysql_num_rows($q) == 0){ $q = mysql_query("SELECT * FROM eval_projects WHERE project_id = '".$project_id."' ");
// what to do here? Should not happen if (!$q OR mysql_num_rows($q) == 0){
} // what to do here? Should not happen
while($r=mysql_fetch_object($q)) { }
$scheme_id = $r->scheme_id; while($r=mysql_fetch_object($q)) {
} $scheme_id = $r->scheme_id;
$q = mysql_query("SELECT * FROM eval_criteria WHERE scheme_id = '".$scheme_id."' ");
if (!$q OR mysql_num_rows($q) == 0){
// what to do here? Should not happen
}
while($r=mysql_fetch_object($q)) {
// skip those that have criteria weight == 0 (compatibility with Apperson Scanner export/import)
if ($r->criteria_weight > 0){
$criteria_id = $r->criteria_id;
$postname= "CR_".$criteria_id;
if ($_POST[$postname]){
$value_id = $_POST[$postname];
// now save this one in the database
$status = mysql_query("UPDATE eval_projects_entries SET level_id = '".$value_id."' WHERE judges_teams_id = '".$judges_teams_id."' AND project_id = '".$project_id."' AND criteria_id = '".$criteria_id."' " );
// should work but need check if $status == false
}
}
}
}
if($_POST['selection']=="team_num") {
// Get some necessary information: Team_id, All projects (create dropdown list of projects)
$team_num = $_POST['team_num'];
$qstr_prjs = "SELECT judges_teams_timeslots_projects_link.`year`, judges_teams_timeslots_projects_link.judges_teams_id, judges_teams.num, ".
"judges_teams.name, projects.projectnumber, projects.floornumber, projects.title, projects.shorttitle, projects.`language` ".
"FROM judges_teams, judges_teams_timeslots_projects_link, projects ".
"WHERE judges_teams.id = judges_teams_timeslots_projects_link.judges_teams_id ".
"AND judges_teams_timeslots_projects_link.projects_id = projects.id ".
"AND judges_teams.num = '$team_num' ";
$qprjs=mysql_query($qstr_prjs);
if ($qprjs) {
$num_projects = mysql_num_rows($qprjs);
if ($num_projects > 0 ){
$cnt = 0;
while($rprjs=mysql_fetch_object($qprjs)) {
if($cnt == 0 ){
$judges_teams_id = $rprjs->judges_teams_id;
$judges_team_name = $rprjs->name;
$cnt = 1;
}
// create an array / fill in the dropdownbox
echo "<br />project number ".$rprjs->projectnumber." ".$rprjs->title."floor number=".$rprjs->floornumber;
}
} }
else{ $q = mysql_query("SELECT * FROM eval_criteria WHERE scheme_id = '".$scheme_id."' ");
// no projects assigned or incorrect team number. if (!$q OR mysql_num_rows($q) == 0){
} // what to do here? Should not happen
} }
$project_num = ""; while($r=mysql_fetch_object($q)) {
echo "<br /> Enter one of the above listed project numbers<br />"; // skip those that have criteria weight == 0 (compatibility with Apperson Scanner export/import)
if ($r->criteria_weight > 0){
$criteria_id = $r->criteria_id;
$postname= "CR_".$criteria_id;
if ($_POST[$postname]){
$value_id = $_POST[$postname];
// now save this one in the database
$status = mysql_query("UPDATE eval_projects_entries SET level_id = '".$value_id."' WHERE judges_teams_id = '".$judges_teams_id."' AND project_id = '".$project_id."' AND criteria_id = '".$criteria_id."' " );
// should work but need check if $status == false
}
}
}
}
} }
if($_POST['selection']=="project_num") { if($_POST['enter']=="project_team" || $_POST['selection'] == "team_num") {
// Create the evaluation form for this project - team combination // Changed the project number and or team number
$project_num = $_POST['project_num']; // just entered or changed $team_num = $_POST['team_num'];
$team_num = $_POST['team_num']; // saved in form if ($_POST['prev_team_num'] != $team_num){
$judges_team_name = $_POST['team_name']; $newteam = true;
$judges_teams_id = $_POST['team_id']; }
} }
if ($team_num == 0) if ($team_num == 0)
{ {
@ -133,18 +107,63 @@ if ($team_num == 0)
echo "</body></html>"; echo "</body></html>";
exit; exit;
} }
// have a team number and a list if projects was presented. Get which project to work on.
if($project_num == 0){ // have a team number if get here next gets the selected project from the drop down list
echo "<br /> Have team number data: Number: ".$team_num." Id=",$judges_teams_id." name=".$judges_team_name."<br />"; if($_POST['project']){
echo "<form method=\"post\" action=\"eval_webentry.php\">"; $project_num = $_POST['project'];
echo "<input type=\"hidden\" name=\"selection\" value=\"project_num\" />"; }
if ($newteam) {
$project_num = 0;
}
//echo "<br /> Have team number data: Number: ".$team_num." Id=",$judges_teams_id." name=".$judges_team_name."<br />";
echo "<form id='form1' name='form1' method=\"post\" action=\"eval_webentry.php\">";
echo "<input type=\"hidden\" name=\"enter\" value=\"project_team\" />";
echo "<input type=\"hidden\" name=\"team_id\" value=\"$judges_teams_id\" />"; echo "<input type=\"hidden\" name=\"team_id\" value=\"$judges_teams_id\" />";
echo "<input type=\"hidden\" name=\"team_name\" value=\"$judges_team_name\" />"; echo "<input type=\"hidden\" name=\"team_name\" value=\"$judges_team_name\" />";
echo "<input type=\"hidden\" name=\"prev_team_num\" value=\"$team_num\" />";
echo "<input type=\"hidden\" name=\"prev_project_num\" value=\"$project_num\" />";
echo "<table>"; echo "<table>";
echo "<tr><td>Team Number</td><td><input size=\"5\" type=\"text\" name=\"team_num\" value=\"$team_num\"></td><td> Reload form for new team! </td></tr>"; echo "<tr><td>Team Number</td><td><input size=\"5\" type=\"text\" name=\"team_num\" value=\"$team_num\"></td></tr>";
echo "<tr><td>Project Number</td><td><input size=\"5\" type=\"text\" name=\"project_num\" value=\"$project_num\"></td><td><input type=\"submit\" value=\"Enter Project Number\"></td></tr>"; //echo "<tr><td>Project Number</td><td><input size=\"5\" type=\"text\" name=\"project_num\" value=\"$project_num\"></td><td><input type=\"submit\" value=\"Enter Project Number\"></td></tr>";
echo "</table>"; echo "</table>";
echo "</form>"; $qstr_prjs = "SELECT judges_teams_timeslots_projects_link.`year`, judges_teams_timeslots_projects_link.judges_teams_id, judges_teams.num, ".
"judges_teams.name, projects.projectnumber, projects.floornumber, projects.title, projects.shorttitle, projects.`language` ".
"FROM judges_teams, judges_teams_timeslots_projects_link, projects ".
"WHERE judges_teams.id = judges_teams_timeslots_projects_link.judges_teams_id ".
"AND judges_teams_timeslots_projects_link.projects_id = projects.id ".
"AND judges_teams.num = '$team_num' ";
$qprjs=mysql_query($qstr_prjs);
if ($qprjs) {
$num_projects = mysql_num_rows($qprjs);
if ($num_projects > 0 ){
$cnt = 0;
//echo "<form>";
echo "<select name=\"project\"><br />";
while($rprjs=mysql_fetch_object($qprjs)) {
if($cnt == 0 ){
$judges_teams_id = $rprjs->judges_teams_id;
$judges_team_name = $rprjs->name;
$cnt = 1;
}
// fill in the dropdownbox
echo "<option value = \"".$rprjs->projectnumber."\" ";
if ($project_num == $rprjs->projectnumber) {
echo "selected=\"yes\"";
}
echo ">".$rprjs->projectnumber.": ".$rprjs->title."</option>";
//echo "<br />project number ".$rprjs->projectnumber." ".$rprjs->title."floor number=".$rprjs->floornumber;
}
echo "</select>";
echo " <input type=\"submit\" value=\"Select Project or Change Team\"><br />";
echo "</form>";
}
else{
// no projects assigned or incorrect team number.
}
}
if ($project_num == 0 ) { // if first selection of team number or if changed the team number.
echo "</body></html>"; echo "</body></html>";
exit; exit;
} }
@ -178,23 +197,8 @@ if (!$q OR mysql_num_rows($q) == 0){
echo "</body></html>"; echo "</body></html>";
exit; exit;
} }
echo "<form method=\"post\" action=\"eval_webentry.php\">"; // At this point we have all the data necessary to create the entry form
echo "<input type=\"hidden\" name=\"selection\" value=\"project_num\" />";
echo "<input type=\"hidden\" name=\"team_id\" value=\"$judges_teams_id\" />";
echo "<input type=\"hidden\" name=\"team_name\" value=\"$judges_team_name\" />";
echo "<table>";
echo "<tr><td>Team Number</td><td><input size=\"5\" type=\"text\" name=\"team_num\" value=\"$team_num\"></td><td> Reload form for new team! </td></tr>";
echo "<tr><td>Project Number</td><td><input size=\"5\" type=\"text\" name=\"project_num\" value=\"$project_num\"></td><td><input type=\"submit\" value=\"Enter Project Number\">";
echo " (for now, enter -1 to select a different judge team)</td></tr>";
echo "</table>";
echo "</form>";
// Get project information for display // Get project information for display
//$qst = "SELECT projects.projectdivisions_id AS Expr1, projectdivisions.division, projectcategories.category, projects.title AS ptitle, ".
// "projects.shorttitle AS pshorttitle, projectcategories.category_shortform, projectdivisions.division_shortform, projects.language ".
// "FROM projects, projectcategories, projectdivisions ".
// "WHERE projects.projectcategories_id = projectcategories.id AND projects.projectdivisions_id = projectdivisions.id ".
// "AND projects.id = '".$project_id."'";
$qst = "SELECT projects.projectdivisions_id, projectdivisions.division, projectdivisions.division_shortform, projectcategories.category, ". $qst = "SELECT projects.projectdivisions_id, projectdivisions.division, projectdivisions.division_shortform, projectcategories.category, ".
"projectcategories.category_shortform, projects.projectnumber, projects.floornumber, projects.title, projects.shorttitle, ". "projectcategories.category_shortform, projects.projectnumber, projects.floornumber, projects.title, projects.shorttitle, ".
"projects.`language`, eval_projects.scheme_id, eval_projects.team ". "projects.`language`, eval_projects.scheme_id, eval_projects.team ".
@ -215,22 +219,24 @@ if ($q) {
$team = $r->team; $team = $r->team;
} }
} }
echo "<br /><b> Project Title: ".$ptitle."</b>"; echo "<br /><b>Current Evaluation is for:<br />";
echo "<br /> Project Category: ".$category; echo " Team number: ".$team_num."<br />";
$IsTeam = ""; $IsTeam = "";
if ($team == "yes"){ $IsTeam = " (Team Project)";} if ($team == "yes"){ $IsTeam = " (Team Project)";}
echo "<br /> Project Division: ".$division.$IsTeam; echo " Project number: ".$project_num ." Title: ".$ptitle.$IsTeam."</b><br />";
echo "<br /> Language: ".$language; echo " Project Category: ".$category."<br />";
echo " Project Division: ".$division."<br />";
echo " Language: ".$language."<br />";
// this is for test only at this time. will be used in the Apperson Scanner export and import. // this is for test only at this time. will be used in the Apperson Scanner export and import.
// to create the file necessary to preslug the score forms. // to create the file necessary to preslug the score forms.
// Barcode = 1 or 2 for team, 4 digits exn, 4 digits team number, 2 digits checksum? // Barcode = 1 or 2 for team, 4 digits exn, 4 digits team number, 2 digits checksum?
$tempprnum = substr($project_num , 1); //$tempprnum = substr($project_num , 1);
if ( strlen($tempprnum) < 4 ) //if ( strlen($tempprnum) < 4 )
{ // {
$tempprnum = "0".$tempprnum; // $tempprnum = "0".$tempprnum;
} // }
echo "<br /> Scanner Project number: ".$tempprnum; //echo "<br /> Scanner Project number: ".$tempprnum;
echo "<break />"; echo "<br />";
$errors = 0; $errors = 0;
$criteria_row = 0; $criteria_row = 0;
// First find the longest string in criteria and level names so the table will look nice // First find the longest string in criteria and level names so the table will look nice