Index: lams_tool_larsrc/.classpath
===================================================================
diff -u
--- lams_tool_larsrc/.classpath (revision 0)
+++ lams_tool_larsrc/.classpath (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: lams_tool_larsrc/.cvsignore
===================================================================
diff -u
--- lams_tool_larsrc/.cvsignore (revision 0)
+++ lams_tool_larsrc/.cvsignore (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,2 @@
+.myeclipse
+.mymetadata
Index: lams_tool_larsrc/.project
===================================================================
diff -u
--- lams_tool_larsrc/.project (revision 0)
+++ lams_tool_larsrc/.project (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,43 @@
+
+
+ lams_tool_larsrc
+
+
+
+
+
+ com.genuitec.eclipse.j2eedt.core.WebClasspathBuilder
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ com.genuitec.eclipse.j2eedt.core.J2EEProjectValidator
+
+
+
+
+ com.genuitec.eclipse.j2eedt.core.DeploymentDescriptorValidator
+
+
+
+
+ com.ibm.etools.validation.validationbuilder
+
+
+
+
+ com.ibm.sse.model.structuredbuilder
+
+
+
+
+
+ com.genuitec.eclipse.j2eedt.core.webnature
+ org.eclipse.jdt.core.javanature
+
+
Index: lams_tool_larsrc/build.properties
===================================================================
diff -u
--- lams_tool_larsrc/build.properties (revision 0)
+++ lams_tool_larsrc/build.properties (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,12 @@
+########################################################################################################################
+### BUILD PROPERTIES ###
+### 1) Do *NOT* use backslashes in paths unless you are sure the ANT task treats them properly. ###
+### 2) Use only ant variables (${foo}) that You declared above or make *SURE* You derive them from the right place. ###
+### 3) Comment out boolean style build settings instead of setting false. Set to false may fail. ###
+### 4) Uncommenting the forceClean attribute *WILL* delete your sourcecode to make place for vcs controlled builds. ###
+########################################################################################################################
+
+### project properties ###
+signature=larsrc11
+project.displayname = lams share resources tool
+
Index: lams_tool_larsrc/build.xml
===================================================================
diff -u
--- lams_tool_larsrc/build.xml (revision 0)
+++ lams_tool_larsrc/build.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,436 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +------------------------------------------+
+ | creating directory structure |
+ +------------------------------------------+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +------------------------------------------+
+ | clean |
+ +------------------------------------------+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +------------------------------------------+
+ | generating hibernate metadata |
+ +------------------------------------------+
+
+
+
+ Building hbm.xml files using XDoclet to ${conf.hibernate.mapping.dir} from ${src.java.dir}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +------------------------------------------+
+ | create jar file |
+ +------------------------------------------+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +------------------------------------------+
+ | build jar file |
+ +------------------------------------------+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +------------------------------------------+
+ | Generate the deployment package. |
+ +------------------------------------------+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Deploying the Share Resources tool
+
+
+
+
+
+
+
+
+
+
+ +------------------------------------------+
+ | built war file |
+ +------------------------------------------+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: lams_tool_larsrc/conf/hibernate/mappings/hibernate.properties
===================================================================
diff -u
--- lams_tool_larsrc/conf/hibernate/mappings/hibernate.properties (revision 0)
+++ lams_tool_larsrc/conf/hibernate/mappings/hibernate.properties (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,7 @@
+hibernate.connection.username=lams
+hibernate.connection.password=lamsdemo
+hibernate.connection.url=jdbc:mysql://localhost/lams
+hibernate.connection.driver_class=com.mysql.jdbc.Driver
+hibernate.dialect=org.hibernate.dialect.MySQLDialect
+
+
Index: lams_tool_larsrc/conf/war/META-INF/MANIFEST.MF
===================================================================
diff -u
--- lams_tool_larsrc/conf/war/META-INF/MANIFEST.MF (revision 0)
+++ lams_tool_larsrc/conf/war/META-INF/MANIFEST.MF (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1 @@
+Class-Path: ./lams.jar ./lams-tool-larsrc11.jar ./lams-contentrepository.jar
Index: lams_tool_larsrc/conf/xdoclet/global-exceptions.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/global-exceptions.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/global-exceptions.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,7 @@
+
+
Index: lams_tool_larsrc/conf/xdoclet/global-forwards.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/global-forwards.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/global-forwards.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,6 @@
+
+
+
+
+
+
Index: lams_tool_larsrc/conf/xdoclet/struts-actions.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/struts-actions.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/struts-actions.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,297 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: lams_tool_larsrc/conf/xdoclet/struts-forms.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/struts-forms.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/struts-forms.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1 @@
+
Index: lams_tool_larsrc/conf/xdoclet/struts-message-resources.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/struts-message-resources.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/struts-message-resources.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1 @@
+
Index: lams_tool_larsrc/conf/xdoclet/struts-plugins.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/struts-plugins.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/struts-plugins.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
Index: lams_tool_larsrc/conf/xdoclet/validation-forms.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/validation-forms.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/validation-forms.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,26 @@
+
+
+
+
Index: lams_tool_larsrc/conf/xdoclet/validation-global.xml
===================================================================
diff -u
--- lams_tool_larsrc/conf/xdoclet/validation-global.xml (revision 0)
+++ lams_tool_larsrc/conf/xdoclet/validation-global.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,6 @@
+
+
+ datePattern
+ yyyy-MM-dd
+
+
\ No newline at end of file
Index: lams_tool_larsrc/db/model/resource.clay
===================================================================
diff -u
--- lams_tool_larsrc/db/model/resource.clay (revision 0)
+++ lams_tool_larsrc/db/model/resource.clay (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: lams_tool_larsrc/db/sql/activity_insert.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/activity_insert.sql (revision 0)
+++ lams_tool_larsrc/db/sql/activity_insert.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,82 @@
+# Connection: ROOT LOCAL
+# Host: localhost
+# Saved: 2005-04-07 11:08:32
+#
+INSERT INTO lams_learning_activity
+(
+activity_ui_id
+, description
+, title
+, help_text
+, xcoord
+, ycoord
+, parent_activity_id
+, parent_ui_id
+, learning_activity_type_id
+, grouping_support_type_id
+, apply_grouping_flag
+, grouping_id
+, grouping_ui_id
+, order_id
+, define_later_flag
+, learning_design_id
+, learning_library_id
+, create_date_time
+, run_offline_flag
+, max_number_of_options
+, min_number_of_options
+, options_instructions
+, tool_id
+, tool_content_id
+, activity_category_id
+, gate_activity_level_id
+, gate_open_flag
+, gate_start_time_offset
+, gate_end_time_offset
+, gate_start_date_time
+, gate_end_date_time
+, library_activity_ui_image
+, create_grouping_id
+, create_grouping_ui_id
+, library_activity_id
+, language_file
+)
+VALUES
+(
+NULL
+, 'Share Resources'
+, 'Share Resoruces'
+, 'Put some help text here.'
+, NULL
+, NULL
+, NULL
+, NULL
+, 1
+, 2
+, 0
+, NULL
+, NULL
+, NULL
+, 0
+, NULL
+, ${learning_library_id}
+, NOW()
+, 0
+, NULL
+, NULL
+, NULL
+, ${tool_id}
+, NULL
+, 4
+, NULL
+, NULL
+, NULL
+, NULL
+, NULL
+, NULL
+, 'tool/larsrc11/images/icon_rsrc.swf'
+, NULL
+, NULL
+, NULL
+, 'org.lamsfoundation.lams.tool.rsrc.web.ApplicationResources'
+)
Index: lams_tool_larsrc/db/sql/cleanup_lams_tool_forum.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/cleanup_lams_tool_forum.sql (revision 0)
+++ lams_tool_larsrc/db/sql/cleanup_lams_tool_forum.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,2 @@
+delete from tl_rsrc_attachment;
+delete from tl_rsrc_tool_session;
Index: lams_tool_larsrc/db/sql/create_lams_tool_forum.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/create_lams_tool_forum.sql (revision 0)
+++ lams_tool_larsrc/db/sql/create_lams_tool_forum.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,109 @@
+SET FOREIGN_KEY_CHECKS=0;
+drop table if exists tl_lafrum11_attachment;
+drop table if exists tl_lafrum11_forum;
+drop table if exists tl_lafrum11_forum_user;
+drop table if exists tl_lafrum11_message;
+drop table if exists tl_lafrum11_message_seq;
+drop table if exists tl_lafrum11_report;
+drop table if exists tl_lafrum11_tool_session;
+create table tl_lafrum11_attachment (
+ uid bigint not null auto_increment,
+ file_version_id bigint,
+ file_type varchar(255),
+ file_name varchar(255),
+ file_uuid bigint,
+ create_date datetime,
+ forum_uid bigint,
+ message_uid bigint,
+ primary key (uid)
+);
+create table tl_lafrum11_forum (
+ uid bigint not null auto_increment,
+ create_date datetime,
+ update_date datetime,
+ create_by bigint,
+ title varchar(255),
+ allow_anonym bit,
+ run_offline bit,
+ lock_on_finished bit,
+ instructions text,
+ online_instructions text,
+ offline_instructions text,
+ content_in_use bit,
+ define_later bit,
+ content_id bigint unique,
+ allow_edit bit,
+ allow_rich_editor bit,
+ limited_of_chars integer,
+ limited_input_flag bit,
+ primary key (uid)
+);
+create table tl_lafrum11_forum_user (
+ uid bigint not null auto_increment,
+ user_id bigint,
+ last_name varchar(255),
+ first_name varchar(255),
+ session_id bigint,
+ login_name varchar(255),
+ primary key (uid)
+);
+create table tl_lafrum11_message (
+ uid bigint not null auto_increment,
+ create_date datetime,
+ last_reply_date datetime,
+ update_date datetime,
+ create_by bigint,
+ modified_by bigint,
+ subject varchar(255),
+ body text,
+ is_authored bit,
+ is_anonymous bit,
+ forum_session_uid bigint,
+ parent_uid bigint,
+ forum_uid bigint,
+ reply_number integer,
+ hide_flag bit,
+ report_id bigint,
+ primary key (uid)
+);
+create table tl_lafrum11_message_seq (
+ uid bigint not null auto_increment,
+ root_message_uid bigint,
+ message_uid bigint,
+ message_level smallint,
+ primary key (uid)
+);
+create table tl_lafrum11_report (
+ uid bigint not null auto_increment,
+ comment text,
+ release_date datetime,
+ mark float,
+ primary key (uid)
+);
+create table tl_lafrum11_tool_session (
+ uid bigint not null auto_increment,
+ session_end_date datetime,
+ session_start_date datetime,
+ status integer,
+ forum_uid bigint,
+ session_id bigint,
+ session_name varchar(250),
+ primary key (uid)
+);
+alter table tl_lafrum11_attachment add index FK389AD9A2FE939F2A (message_uid), add constraint FK389AD9A2FE939F2A foreign key (message_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_attachment add index FK389AD9A2131CE31E (forum_uid), add constraint FK389AD9A2131CE31E foreign key (forum_uid) references tl_lafrum11_forum (uid);
+alter table tl_lafrum11_forum add index FK87917942E42F4351 (create_by), add constraint FK87917942E42F4351 foreign key (create_by) references tl_lafrum11_forum_user (uid);
+alter table tl_lafrum11_forum_user add index FK7B83A4A85F0116B6 (session_id), add constraint FK7B83A4A85F0116B6 foreign key (session_id) references tl_lafrum11_tool_session (uid);
+alter table tl_lafrum11_message add index FK4A6067E8E42F4351 (create_by), add constraint FK4A6067E8E42F4351 foreign key (create_by) references tl_lafrum11_forum_user (uid);
+alter table tl_lafrum11_message add index FK4A6067E897F0DB46 (report_id), add constraint FK4A6067E897F0DB46 foreign key (report_id) references tl_lafrum11_report (uid);
+alter table tl_lafrum11_message add index FK4A6067E8131CE31E (forum_uid), add constraint FK4A6067E8131CE31E foreign key (forum_uid) references tl_lafrum11_forum (uid);
+alter table tl_lafrum11_message add index FK4A6067E824089E4D (parent_uid), add constraint FK4A6067E824089E4D foreign key (parent_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_message add index FK4A6067E89357B45B (forum_session_uid), add constraint FK4A6067E89357B45B foreign key (forum_session_uid) references tl_lafrum11_tool_session (uid);
+alter table tl_lafrum11_message add index FK4A6067E8647A7264 (modified_by), add constraint FK4A6067E8647A7264 foreign key (modified_by) references tl_lafrum11_forum_user (uid);
+alter table tl_lafrum11_message_seq add index FKD2C71F88FE939F2A (message_uid), add constraint FKD2C71F88FE939F2A foreign key (message_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_message_seq add index FKD2C71F8845213B4D (root_message_uid), add constraint FKD2C71F8845213B4D foreign key (root_message_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_tool_session add index FK5A04D7AE131CE31E (forum_uid), add constraint FK5A04D7AE131CE31E foreign key (forum_uid) references tl_lafrum11_forum (uid);
+
+
+INSERT INTO tl_lafrum11_forum (title,instructions,online_instructions,offline_instructions,content_id,allow_anonym,run_offline,lock_on_finished,content_in_use,define_later,allow_edit,allow_rich_editor,limited_input_flag,limited_of_chars) VALUES("LAMS Forum","Instruction","Online instruction","Offline instruction",${default_content_id},0,0,0,0,0,1,0,1,5000);
+SET FOREIGN_KEY_CHECKS=1;
\ No newline at end of file
Index: lams_tool_larsrc/db/sql/drop_lams_tool_forum.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/drop_lams_tool_forum.sql (revision 0)
+++ lams_tool_larsrc/db/sql/drop_lams_tool_forum.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,14 @@
+SET FOREIGN_KEY_CHECKS=0;
+drop table if exists tl_lafrum11_attachment;
+drop table if exists tl_lafrum11_forum;
+drop table if exists tl_lafrum11_forum_user;
+drop table if exists tl_lafrum11_message;
+drop table if exists tl_lafrum11_message_seq;
+drop table if exists tl_lafrum11_tool_session;
+drop table if exists tl_lafrum11_report;
+SET FOREIGN_KEY_CHECKS=1;
+
+
+
+
+
Index: lams_tool_larsrc/db/sql/insert_lams_tool_forum_data.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/insert_lams_tool_forum_data.sql (revision 0)
+++ lams_tool_larsrc/db/sql/insert_lams_tool_forum_data.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,4 @@
+insert into tl_lafrum11_forum (ID,TITLE, ALLOWANNOMITY, FORCEOFFLINE, LOCKWHENFINISHED, INSTRUCTIONS,
+ONLINEINSTRUCTIONS, OFFLINEINSTRUCTIONS) VALUES (1, "TEST FORUM", false, false, false, "TEST INSTRUCTIONS", "TEST ONLINE INSTRUCTIONS", "TEST OFFLINE INSTRUCTIONS");
+
+insert into tl_lafrum11_message (ID, SUBJECT, BODY, ISAUTHORED, ISANNONYMOUS, FORUM, PARENT) VALUES (2, "TITLE", "BODY", true, false, 1, NULL) ;
\ No newline at end of file
Index: lams_tool_larsrc/db/sql/library_insert.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/library_insert.sql (revision 0)
+++ lams_tool_larsrc/db/sql/library_insert.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,18 @@
+# Connection: ROOT LOCAL
+# Host: localhost
+# Saved: 2005-04-07 10:50:55
+#
+INSERT INTO lams_learning_library
+(
+description,
+title,
+valid_flag,
+create_date_time
+)
+VALUES
+(
+'Share resources',
+'Share resources',
+0,
+NOW()
+)
Index: lams_tool_larsrc/db/sql/table-schema.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/table-schema.sql (revision 0)
+++ lams_tool_larsrc/db/sql/table-schema.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,117 @@
+alter table tl_lafrum11_attachment drop foreign key FK389AD9A2FE939F2A;
+alter table tl_lafrum11_attachment drop foreign key FK389AD9A2131CE31E;
+alter table tl_lafrum11_forum drop foreign key FK87917942E42F4351;
+alter table tl_lafrum11_forum_user drop foreign key FK7B83A4A85F0116B6;
+alter table tl_lafrum11_message drop foreign key FK4A6067E8E42F4351;
+alter table tl_lafrum11_message drop foreign key FK4A6067E897F0DB46;
+alter table tl_lafrum11_message drop foreign key FK4A6067E8131CE31E;
+alter table tl_lafrum11_message drop foreign key FK4A6067E824089E4D;
+alter table tl_lafrum11_message drop foreign key FK4A6067E89357B45B;
+alter table tl_lafrum11_message drop foreign key FK4A6067E8647A7264;
+alter table tl_lafrum11_message_seq drop foreign key FKD2C71F88FE939F2A;
+alter table tl_lafrum11_message_seq drop foreign key FKD2C71F8845213B4D;
+alter table tl_lafrum11_tool_session drop foreign key FK5A04D7AE131CE31E;
+drop table if exists tl_lafrum11_attachment;
+drop table if exists tl_lafrum11_forum;
+drop table if exists tl_lafrum11_forum_user;
+drop table if exists tl_lafrum11_message;
+drop table if exists tl_lafrum11_message_seq;
+drop table if exists tl_lafrum11_report;
+drop table if exists tl_lafrum11_tool_session;
+create table tl_lafrum11_attachment (
+ uid bigint not null auto_increment,
+ file_version_id bigint,
+ file_type varchar(255),
+ file_name varchar(255),
+ file_uuid bigint,
+ create_date datetime,
+ forum_uid bigint,
+ message_uid bigint,
+ primary key (uid)
+);
+create table tl_lafrum11_forum (
+ uid bigint not null auto_increment,
+ create_date datetime,
+ update_date datetime,
+ create_by bigint,
+ title varchar(255),
+ allow_anonym bit,
+ run_offline bit,
+ lock_on_finished bit,
+ instructions text,
+ online_instructions text,
+ offline_instructions text,
+ content_in_use bit,
+ define_later bit,
+ content_id bigint unique,
+ allow_edit bit,
+ allow_rich_editor bit,
+ limited_of_chars integer,
+ limited_input_flag bit,
+ primary key (uid)
+);
+create table tl_lafrum11_forum_user (
+ uid bigint not null auto_increment,
+ user_id bigint,
+ last_name varchar(255),
+ first_name varchar(255),
+ session_id bigint,
+ login_name varchar(255),
+ primary key (uid)
+);
+create table tl_lafrum11_message (
+ uid bigint not null auto_increment,
+ create_date datetime,
+ last_reply_date datetime,
+ update_date datetime,
+ create_by bigint,
+ modified_by bigint,
+ subject varchar(255),
+ body text,
+ is_authored bit,
+ is_anonymous bit,
+ forum_session_uid bigint,
+ parent_uid bigint,
+ forum_uid bigint,
+ reply_number integer,
+ hide_flag bit,
+ report_id bigint,
+ primary key (uid)
+);
+create table tl_lafrum11_message_seq (
+ uid bigint not null auto_increment,
+ root_message_uid bigint,
+ message_uid bigint,
+ message_level smallint,
+ primary key (uid)
+);
+create table tl_lafrum11_report (
+ uid bigint not null auto_increment,
+ comment text,
+ release_date datetime,
+ mark float,
+ primary key (uid)
+);
+create table tl_lafrum11_tool_session (
+ uid bigint not null auto_increment,
+ session_end_date datetime,
+ session_start_date datetime,
+ status integer,
+ forum_uid bigint,
+ session_id bigint,
+ session_name varchar(250),
+ primary key (uid)
+);
+alter table tl_lafrum11_attachment add index FK389AD9A2FE939F2A (message_uid), add constraint FK389AD9A2FE939F2A foreign key (message_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_attachment add index FK389AD9A2131CE31E (forum_uid), add constraint FK389AD9A2131CE31E foreign key (forum_uid) references tl_lafrum11_forum (uid);
+alter table tl_lafrum11_forum add index FK87917942E42F4351 (create_by), add constraint FK87917942E42F4351 foreign key (create_by) references tl_lafrum11_forum_user (uid);
+alter table tl_lafrum11_forum_user add index FK7B83A4A85F0116B6 (session_id), add constraint FK7B83A4A85F0116B6 foreign key (session_id) references tl_lafrum11_tool_session (uid);
+alter table tl_lafrum11_message add index FK4A6067E8E42F4351 (create_by), add constraint FK4A6067E8E42F4351 foreign key (create_by) references tl_lafrum11_forum_user (uid);
+alter table tl_lafrum11_message add index FK4A6067E897F0DB46 (report_id), add constraint FK4A6067E897F0DB46 foreign key (report_id) references tl_lafrum11_report (uid);
+alter table tl_lafrum11_message add index FK4A6067E8131CE31E (forum_uid), add constraint FK4A6067E8131CE31E foreign key (forum_uid) references tl_lafrum11_forum (uid);
+alter table tl_lafrum11_message add index FK4A6067E824089E4D (parent_uid), add constraint FK4A6067E824089E4D foreign key (parent_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_message add index FK4A6067E89357B45B (forum_session_uid), add constraint FK4A6067E89357B45B foreign key (forum_session_uid) references tl_lafrum11_tool_session (uid);
+alter table tl_lafrum11_message add index FK4A6067E8647A7264 (modified_by), add constraint FK4A6067E8647A7264 foreign key (modified_by) references tl_lafrum11_forum_user (uid);
+alter table tl_lafrum11_message_seq add index FKD2C71F88FE939F2A (message_uid), add constraint FKD2C71F88FE939F2A foreign key (message_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_message_seq add index FKD2C71F8845213B4D (root_message_uid), add constraint FKD2C71F8845213B4D foreign key (root_message_uid) references tl_lafrum11_message (uid);
+alter table tl_lafrum11_tool_session add index FK5A04D7AE131CE31E (forum_uid), add constraint FK5A04D7AE131CE31E foreign key (forum_uid) references tl_lafrum11_forum (uid);
Index: lams_tool_larsrc/db/sql/tool_insert.sql
===================================================================
diff -u
--- lams_tool_larsrc/db/sql/tool_insert.sql (revision 0)
+++ lams_tool_larsrc/db/sql/tool_insert.sql (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,56 @@
+# Connection: ROOT LOCAL
+# Host: localhost
+# Saved: 2005-04-07 10:42:43
+#
+INSERT INTO lams_tool
+(
+tool_signature,
+service_name,
+tool_display_name,
+description,
+tool_identifier,
+tool_version,
+learning_library_id,
+default_tool_content_id,
+valid_flag,
+grouping_support_type_id,
+supports_run_offline_flag,
+learner_url,
+learner_preview_url,
+learner_progress_url,
+author_url,
+monitor_url,
+define_later_url,
+export_pfolio_learner_url,
+export_pfolio_class_url,
+contribute_url,
+moderation_url,
+language_file,
+create_date_time
+)
+VALUES
+(
+'larsrc11',
+'rsrcService',
+'Share Resources',
+'Share Resources',
+'forum',
+'1.1',
+NULL,
+NULL,
+0,
+2,
+1,
+'tool/lafrum11/learning/viewForum.do?mode=learner',
+'tool/lafrum11/learning/viewForum.do?mode=author',
+'tool/lafrum11/learning/viewForum.do?mode=teacher',
+'tool/lafrum11/authoring/init.do',
+'tool/lafrum11/monitoring.do',
+'tool/lafrum11/defineLater.do',
+'tool/lafrum11/exportPortfolio?mode=learner',
+'tool/lafrum11/exportPortfolio?mode=teacher',
+'tool/lafrum11/contribute.do',
+'tool/lafrum11/moderate.do',
+'org.lamsfoundation.lams.tool.forum.web.ApplicationResources',
+NOW()
+)
Index: lams_tool_larsrc/lib/jaxen/jaxen-full.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/jaxen/sax.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/jaxen/saxpath.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/castor-0.9.5.3-xml.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/jdom.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/moonunitsrc.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/reload-diva.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/reload-editor.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/reload-jdom.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/reload-moonunit.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/xercesImpl.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/lib/reload_2_0_1/xml-apis.jar
===================================================================
diff -u
Binary files differ
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ApplicationResources.properties
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ApplicationResources.properties (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ApplicationResources.properties (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,158 @@
+# CVS ID: $Id$ #
+appName = Shared Resources
+#=========================labels===========================#
+#-------------------------Authoring Labels-----------------#
+label.authoring.heading.basic=Forum
+label.authoring.heading.basic.desc=Basic input information for forum
+label.authoring.heading.instructions.desc=Please input online and offline instructions
+label.authoring.heading.advance.desc=Please input advance options for Forum
+label.authoring.create.new.topic=Create a new topic
+
+label.authoring.basic.title=Title
+label.authoring.basic.instruction=Instruction
+label.authoring.online.instruction =Online Instructions
+label.authoring.offline.instruction=Offline Instructions
+label.authoring.online.file =Upload online file
+label.authoring.offline.file=Upload offline file
+label.authoring.advance.lock.on.finished=Lock on finished
+
+label.authoring.save.button=Save
+label.authoring.cancel.button=Cancel
+label.authoring.choosefile.button=Choose file
+label.authoring.upload.online.button=Upload Online
+label.authoring.upload.offline.button=Upload Offline
+label.authoring.online.filelist=Online file list
+label.authoring.offline.filelist=Offline file list
+label.authoring.online.delete=Delete
+label.authoring.offline.delete=Delete
+label.authoring.advance.allow.edit=Allow Edit
+label.authoring.advance.use.richeditor=Allow Rich Editor
+label.authoring.advance.limited.input=Limitation of input characters
+
+lable.topic.title.subject=Subject
+lable.topic.title.body=Body
+lable.topic.title.update=Last post
+lable.topic.title.author=Author
+lable.topic.title.startedby=Start by
+lable.topic.title.replies=Replies
+lable.topic.title.mark=Mark
+lable.topic.subject.by=By
+label.back.to.forum=Go back to froum
+lable.topic.title.message.number=# of Msg
+lable.topic.title.average.mark= Aver mark
+authoring.exception= There is a problem in forum authoring page, the reason is {0}
+#-------------------------END Authoring Labels END-----------------#
+
+#---------------------------------Monitoring ----------------------------------#
+page.title.monitoring.content.userlist=Summary
+page.title.monitoring.view.user.mark=View user mark
+page.title.monitoring.edit.user.mark=Edit user mark
+page.title.monitoring.view.activity=View Activity
+page.title.monitoring.edit.activity=Edit Activity
+page.title.monitoring.view.instructions=View Instructions
+page.title.monitoring.view.topic=View topic
+page.title.monitoring.statistic=Statistic
+page.title.monitoring.definelater=Forum Tool Define
+
+label.monitoring.edit.activity.cancel=Cancel
+label.monitoring.edit.activity.update=Update
+label.monitoring.edit.activity.edit=Edit
+
+label.monitoring.statistic.average.mark= Average message mark
+lable.monitoring.statistic.total.message=# of total message
+
+message.monitoring.edit.activity.not.editable=This Activity is no longer editable
+#------------------------------End Monitoring ----------------------------------#
+
+## errors
+errors.header=
+errors.footer=
+
+#error.title = System Error!
+error.valueReqd = Value Required
+error.inputFileTooLarge = Input File size is too large!
+error.uploading = error uploading
+error.mark.needNumber= Mark must be int value
+error.mark.invalid.number= Mark is invalid number format
+error.fail.get.forum=No Forum available
+error.title.empty=Title can not be blank
+#General Messages
+message.msg.maxFileSize = Max 250K
+
+##Message
+title.messageTopic.open = Topic Details
+
+title.message.add = Add Message
+title.message.open = View Message
+title.message.reply = Reply Message
+title.message.edit = Edit Message
+title.message.view=Message Board
+title.message.view.topic=View Message
+title.message.delete=Delete Message
+
+message.label.subject = Subject
+message.label.body = Body
+message.label.attachment = Attachment
+message.label.postedOn = Posted On:
+message.label.threadReplies = Thread Replies
+message.link.reply = Reply
+
+##Labels
+label.open = Open
+label.delete = Delete
+label.download = Download
+label.view = View
+label.edit = Edit
+label.reply = Reply
+label.done = Done
+label.finish= Finish
+label.newtopic= New Topic
+label.refresh= Refresh
+lable.char.left=Characters left
+label.basic=Basic
+label.advanced=Advanced
+label.instructions=Instructions
+##Buttons
+button.upload = Upload
+button.done = Done
+button.submit = Submit
+button.on = On
+button.off = Off
+button.add = Add
+button.cancel = Cancel
+
+js.error.invalid.number=The input is invalid number format
+js.error.min.number=The input must be greater than 0
+js.error.title=The following error(s) occurred:
+
+#not list in spanish yet
+monitoring.tab.summary=Summary
+monitoring.tab.instructions=Instruction
+monitoring.tab.edit.activity=Edit Activity
+
+monitoring.user.post.topic=provides following posts:
+lable.topic.title.comment=Comment
+message.not.avaliable=Not Available
+lable.update.mark=Update mark
+message.assign.mark= Please assign a mark and a comment for the report by
+message.session.name=Session Name
+message.monitoring.summary.no.users=No users available
+message.view.all.marks=View all marks
+message.download.marks=Download marks
+label.monitoring.summary.view.forum= View forum
+
+#new messages 6/3/06
+message.monitoring.summary.no.session=No Session Available
+
+#new messages 7/3/06
+topic.message.subject.hidden=Message subject hidden
+topic.message.body.hidden=Message body hidden
+label.show=Show
+label.hide=Hide
+
+#new messages 10/3/06
+page.title.monitoring.init=Forum Monitoring
+monitoring.tab.statistics=Statistics
+# NB monitoring.tab.edit.statistics was removed
+label.save=Save
+label.cancel=Cancel
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/dao/DAO.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/dao/DAO.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/dao/DAO.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,69 @@
+/***************************************************************************
+ * Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+ * =============================================================
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ *
+ * http://www.gnu.org/licenses/gpl.txt
+ * ***********************************************************************/
+
+package org.lamsfoundation.lams.tool.rsrc.dao;
+
+import java.io.Serializable;
+import java.util.List;
+
+
+/**
+ * Data Access Object (DAO) interface. This is an interface
+ * used to tag our DAO classes and to provide common methods to all DAOs.
+ *
+ * @author Dapeng.Ni
+ */
+public interface DAO {
+
+ /**
+ * Generic method used to get all objects of a particular type. This
+ * is the same as lookup up all rows in a table.
+ * @param clazz the type of objects (a.k.a. while table) to get data from
+ * @return List of populated objects
+ */
+ public List getObjects(Class clazz);
+
+ /**
+ * Generic method to get an object based on class and identifier. An
+ * ObjectRetrievalFailureException Runtime Exception is thrown if
+ * nothing is found.
+ *
+ * @param clazz model class to lookup
+ * @param id the identifier (primary key) of the class
+ * @return a populated object
+ * @see org.springframework.orm.ObjectRetrievalFailureException
+ */
+ public Object getObject(Class clazz, Serializable id);
+
+ /**
+ * Generic method to save an object - handles both update and insert.
+ * @param o the object to save
+ */
+ public void saveObject(Object o);
+
+ /**
+ * Generic method to delete an object based on class and id
+ * @param clazz model class to lookup
+ * @param id the identifier (primary key) of the class
+ */
+ public void removeObject(Class clazz, Serializable id);
+}
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/BaseDAOHibernate.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/BaseDAOHibernate.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/BaseDAOHibernate.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,77 @@
+/***************************************************************************
+ * Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+ * =============================================================
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ *
+ * http://www.gnu.org/licenses/gpl.txt
+ * ***********************************************************************/
+
+package org.lamsfoundation.lams.tool.rsrc.dao.hibernate;
+
+import java.io.Serializable;
+import java.util.List;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.lamsfoundation.lams.tool.rsrc.dao.DAO;
+import org.springframework.orm.ObjectRetrievalFailureException;
+import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
+
+/**
+ * This class serves as the Base class for all other DAOs - namely to hold
+ * common methods that they might all use. Can be used for standard CRUD
+ * operations.
+ *
+ * @author Dapeng.Ni
+ */
+public class BaseDAOHibernate extends HibernateDaoSupport implements DAO {
+ protected final Log log = LogFactory.getLog(getClass());
+
+ /**
+ * @see com.edgenius.paradise.dao.DAO#saveObject(java.lang.Object)
+ */
+ public void saveObject(Object o) {
+ getHibernateTemplate().saveOrUpdate(o);
+ }
+
+ /**
+ * @see com.edgenius.paradise.dao.DAO#getObject(java.lang.Class, java.io.Serializable)
+ */
+ public Object getObject(Class clazz, Serializable id) {
+ Object o = getHibernateTemplate().get(clazz, id);
+
+ if (o == null) {
+ throw new ObjectRetrievalFailureException(clazz, id);
+ }
+
+ return o;
+ }
+
+ /**
+ * @see com.edgenius.paradise.dao.DAO#getObjects(java.lang.Class)
+ */
+ public List getObjects(Class clazz) {
+ return getHibernateTemplate().loadAll(clazz);
+ }
+
+ /**
+ * @see com.edgenius.paradise.dao.DAO#removeObject(java.lang.Class, java.io.Serializable)
+ */
+ public void removeObject(Class clazz, Serializable id) {
+ getHibernateTemplate().delete(getObject(clazz, id));
+ }
+}
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/IContentPackageConverter.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/IContentPackageConverter.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/IContentPackageConverter.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,61 @@
+/*
+ Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA
+
+ http://www.gnu.org/licenses/gpl.txt
+ */
+package org.lamsfoundation.lams.tool.rsrc.ims;
+
+/**
+ * A ContentPackageConverter converts an IMS Content Package into the
+ * data needed for our tool. The only implementation initially done was
+ * SimpleContentPackageCoverter.
+ *
+ * The creation method of the converter (which is unique to each converter)
+ * will need to parse the package and have the data ready for the "get"
+ * calls.
+ *
+ * Note: Classes that implement this interface should be normal POJOS,
+ * not singletons. This allows them to have instance data.
+ */
+interface IContentPackageConverter {
+
+ /**
+ * @return Returns the defaultItem.
+ */
+ public abstract String getDefaultItem();
+
+ /**
+ * @return Returns the description.
+ */
+ public abstract String getDescription();
+
+ /**
+ * @return Returns the organzationXML.
+ */
+ public abstract String getOrganzationXML();
+
+ /**
+ * @return Returns the schema.
+ */
+ public abstract String getSchema();
+
+ /**
+ * @return Returns the title.
+ */
+ public abstract String getTitle();
+}
\ No newline at end of file
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/IMSManifestException.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/IMSManifestException.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/IMSManifestException.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,62 @@
+/*
+ Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA
+
+ http://www.gnu.org/licenses/gpl.txt
+*/
+
+package org.lamsfoundation.lams.tool.rsrc.ims;
+
+/**
+ * This exception is thrown when an error occurs that may be related to
+ * the formatting of the IMS content package. e.g. the manifest file
+ * is missing.
+ *
+ * @author Fiona Malikoff
+ */
+public class IMSManifestException extends ImscpApplicationException {
+
+ /**
+ *
+ */
+ public IMSManifestException() {
+ super();
+ }
+
+ /**
+ * @param arg0
+ */
+ public IMSManifestException(String arg0) {
+ super(arg0);
+ }
+
+ /**
+ * @param arg0
+ */
+ public IMSManifestException(Throwable arg0) {
+ super(arg0);
+ }
+
+ /**
+ * @param arg0
+ * @param arg1
+ */
+ public IMSManifestException(String arg0, Throwable arg1) {
+ super(arg0, arg1);
+ }
+
+}
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/ImscpApplicationException.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/ImscpApplicationException.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/ImscpApplicationException.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,59 @@
+/*
+ Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA
+
+ http://www.gnu.org/licenses/gpl.txt
+*/
+
+package org.lamsfoundation.lams.tool.rsrc.ims;
+
+/**
+ * Generic exception for the imscr tool.
+ * @author Fiona Malikoff
+ */
+public class ImscpApplicationException extends Exception {
+
+ /**
+ *
+ */
+ public ImscpApplicationException() {
+ super();
+ }
+
+ /**
+ * @param arg0
+ */
+ public ImscpApplicationException(String arg0) {
+ super(arg0);
+ }
+
+ /**
+ * @param arg0
+ */
+ public ImscpApplicationException(Throwable arg0) {
+ super(arg0);
+ }
+
+ /**
+ * @param arg0
+ * @param arg1
+ */
+ public ImscpApplicationException(String arg0, Throwable arg1) {
+ super(arg0, arg1);
+ }
+
+}
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/OrganizationXMLDef.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/OrganizationXMLDef.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/OrganizationXMLDef.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,40 @@
+/*
+ Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA
+
+ http://www.gnu.org/licenses/gpl.txt
+*/
+
+package org.lamsfoundation.lams.tool.rsrc.ims;
+
+/**
+ * This contains the "tag" of items in the organization xml. May be used
+ * by JSP pages to get the tag names right!
+ *
+ * @author Fiona Malikoff
+ */
+public final class OrganizationXMLDef {
+
+ public static final String DEFAULT = "default";
+ public static final String ITEM = "item";
+ public static final String PARAMETERS = "parameters";
+ public static final String HREF = "href";
+ public static final String IDENTIFIER = "identifier";
+ public static final String RESOURCE = "resource";
+ public static final String TITLE = "title";
+
+}
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/SimpleContentPackageConverter.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/SimpleContentPackageConverter.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/ims/SimpleContentPackageConverter.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,490 @@
+/*
+ Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ USA
+
+ http://www.gnu.org/licenses/gpl.txt
+*/
+
+package org.lamsfoundation.lams.tool.rsrc.ims;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.util.Iterator;
+import java.util.List;
+
+import org.apache.log4j.Logger;
+import org.jdom.Document;
+import org.jdom.Element;
+import org.jdom.JDOMException;
+import org.jdom.Namespace;
+
+import uk.ac.reload.jdom.XMLDocument;
+import uk.ac.reload.jdom.XMLPath;
+import uk.ac.reload.jdom.XMLUtils;
+import uk.ac.reload.moonunit.contentpackaging.CP_Core;
+
+/**
+ * SimpleContentPackageConverter contains the code required for
+ * parsing the IMS Content Package and converting the info into our
+ * own structures.
+ *
+ * Note: this class has instance data, so do not use it as a singleton.
+ *
+ * @author Fiona Malikoff
+ */
+class SimpleContentPackageConverter implements IContentPackageConverter {
+
+ private Logger log = Logger.getLogger(SimpleContentPackageConverter.class);
+
+ // manifestDoc and cpCore are set up in the constructor. They are then used
+ // to generate the rest of the values
+ private XMLDocument manifestDoc = null;
+ private CP_Core cpCore = null;
+
+ private String schema=null;
+ private String title=null;
+ private String description=null;
+ private String defaultItem=null;
+ private String organzationXML=null;
+
+ // cachedResourceList is used to avoid building up the list
+ // every time an item is parsed - otherwise there is a lot
+ // of processing done by the reload code time and time again.
+ private Element[] cachedResourceList = null;
+
+ /** Set up a package converter, using the supplied directory as the package.
+ * The package should be parsed automatically and the values readied for calls
+ * to getSchema(), getTitle(), etc.
+ *
+ * @param directoryName: directory containing an expanded IMS content package.
+ * @throws IMSManifestException if there is an error in parsing the manifest file
+ * due to an error in the file or an unexpected value.
+ * @throws ImscpApplicationException if there is any other error
+ */
+ public SimpleContentPackageConverter(String directoryName)
+ throws IMSManifestException, ImscpApplicationException {
+
+ this.manifestDoc = getDocument(directoryName);
+ this.cpCore = new CP_Core(manifestDoc);
+
+ // initialise the property file required for the reload code. Needed to make
+ // the metadata call work. If we remove the metadata call, then this constructor
+ // may be removed.
+ System.setProperty("editor.properties.file", "uk.ac.reload.editor.properties.rb");
+
+ parsePackage();
+ }
+
+ /** Parse IMS content package expanded out
+ * into the supplied directory. Note: the manifest file is expected to be in the
+ * root of the supplied directory.
+ *
+ * @throws ImscpApplicationException
+ * @throws IMSManifestException
+ */
+ private void parsePackage( ) throws IMSManifestException, ImscpApplicationException {
+
+ String schemaText = getText(manifestDoc, "//metadata/schema");
+ String schemaVersion = getText(manifestDoc, "//metadata/schemaversion");
+ this.schema = ( schemaText != null ? schemaText : "unknown" )
+ + " " + ( schemaVersion != null ? schemaVersion : "unknown") ;
+
+ Document orgs = buildOrganisationList();
+ if ( orgs == null ) {
+ String error = "Unable to convert organizations from manifest file to our own structure. Reason unknown - buildOrganisationList returned null";
+ log.error(error);
+ throw new ImscpApplicationException(error);
+ }
+
+ try {
+ this.organzationXML = XMLUtils.write2XMLString(orgs);
+ } catch ( IOException ioe ) {
+ String error = "Exception thrown converting organization structure (as document) to an XML string."+ioe.getMessage();
+ log.error(error,ioe);
+ throw new ImscpApplicationException(error,ioe);
+ }
+
+ XMLPath xmlPath = new XMLPath("//metadata/*:lom/*:general/*:title/*:langstring");
+ this.title = getMetaValue(xmlPath);
+ if ( this.title == null ) {
+ // try the old root name - untested
+ xmlPath = new XMLPath("//metadata/*:record/*:general/*:title/*:langstring");
+ this.title = getMetaValue(xmlPath);
+ }
+
+ xmlPath = new XMLPath("//metadata/*:lom/*:general/*:description/*:langstring");
+ this.description = getMetaValue(xmlPath);
+ if ( this.description == null ) {
+ // try the old root name - untested
+ xmlPath = new XMLPath("//metadata/*:record/*:general/*:description/*:langstring");
+ this.description = getMetaValue(xmlPath);
+ }
+
+ }
+
+
+ /**
+ * Finds a value at the given xmlPath. If only one element, uses that value.
+ * If more than one element, tries to find an English value.
+ * @param xmlPath
+ * @return Value of the element found at xmlPath.
+ */
+ private String getMetaValue(XMLPath xmlPath) {
+ Element[] elList = manifestDoc.getElements(xmlPath);
+ String value = null;
+ if ( elList != null ) {
+ if ( elList.length == 0 ) {
+ value="Unknown";
+ } else if ( elList.length == 1 ) {
+ value=elList[0].getTextTrim();
+ } else {
+ value = null;
+ // TODO check if it is really testing for english
+ for ( int i=0; value == null && i < elList.length; i++ ) {
+ // grab the first English one
+ Element el = elList[i];
+ String attrValue = el.getAttributeValue("lang", Namespace.XML_NAMESPACE );
+ if ( attrValue != null && attrValue.startsWith("en") ) {
+ value = el.getTextTrim();
+ }
+ }
+ if ( value == null ) {
+ // can't seem to find an English one, just pick the first
+ value=elList[0].getTextTrim();
+ }
+ }
+ }
+ return value;
+ }
+
+ /* Get the text for this element - expect only 1 */
+ private String getText(XMLDocument document, String xmlPathString ) {
+ XMLPath xmlPath = new XMLPath(xmlPathString);
+ Element el = document.getElement(xmlPath);
+ return el != null ? el.getTextTrim() : null;
+ }
+
+ private String debug(XMLDocument document, String param, String xmlPathString ) {
+ XMLPath xmlPath = new XMLPath(xmlPathString);
+ Element[]elList = document.getElements(xmlPath);
+ if ( elList != null ) {
+ log.error(param+" xp: length "+elList.length+" el "+elList);
+ if ( elList.length >= 1 ) {
+ log.error("text is "+elList[0].getTextTrim());
+ return elList[0].getTextTrim();
+ }
+ } else {
+ log.error(param+" xp: el is null");
+ }
+ return null;
+ }
+
+ /**
+ * @param directoryName
+ * @return
+ * @throws JDOMException
+ * @throws IOException
+ */
+ private XMLDocument getDocument(String directoryName) throws IMSManifestException {
+ try {
+ XMLDocument doc = new XMLDocument();
+ doc.loadDocument(new File(directoryName, "imsmanifest.xml"));
+ return doc;
+ } catch (JDOMException je) {
+ String error = "Parsing error occured while loading imsmanifest.xml file. Contents of file may be invalid. "+je.getMessage();
+ log.error(error, je);
+ throw new IMSManifestException(error, je);
+ } catch (FileNotFoundException e) {
+ String error = "Unable to find imsmanifest file in the package."+e.getMessage();
+ log.error(error, e);
+ throw new IMSManifestException(error, e);
+ } catch (IOException ioe) {
+ String error = "IOException occured while loading imsmanifest file. "+ioe.getMessage();
+ log.error(error, ioe);
+ throw new IMSManifestException(error, ioe);
+ }
+ }
+
+ /** Built an XML document which is a list of organisations/resources.
+ */
+ private Document buildOrganisationList( ) throws IMSManifestException {
+
+ Namespace nm = cpCore.getRootManifestElement().getNamespace();
+
+ Element rootElement = cpCore.getRootManifestElement();
+ Element orgsElement = rootElement.getChild(CP_Core.ORGANIZATIONS, nm);
+
+ // set up a list of all the resources
+
+ // now get all the organizations and set up the new XML document, combining
+ // the organization and the resources.
+ Element defaultOrg = cpCore.getDefaultOrganization(orgsElement);
+ String defaultOrgIdentifier = null;
+ if ( defaultOrg != null )
+ defaultOrgIdentifier = defaultOrg.getAttributeValue("identifier");
+
+ log.debug("cpCore default org id: "+defaultOrgIdentifier);
+
+ Element newRootElement = new Element("organizations");
+ setAttribute(newRootElement, "version", "imscp1");
+ Document doc = new Document(newRootElement);
+
+ Element[] orgs = cpCore.getOrganizationsAllowed(orgsElement);
+ Element initOrganizationElement =null;
+ for ( int i=0; i
+
+
+
+
+
+
+
+
+
+
+
+
+
+ org/lamsfoundation/lams/tool/imscp/PackageVO.hbm.xml
+ org/lamsfoundation/lams/tool/imscp/UserPackageVO.hbm.xml
+ org/lamsfoundation/lams/tool/imscp/UserProgressVO.hbm.xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PROPAGATION_REQUIRED,-ImscpApplicationException
+ PROPAGATION_REQUIRED,-ImscpApplicationException
+ PROPAGATION_REQUIRED,-ImscpApplicationException
+ PROPAGATION_REQUIRED,readOnly,-ImscpApplicationException
+ PROPAGATION_REQUIRED,-ImscpApplicationException
+ PROPAGATION_REQUIRED,-ImscpApplicationException
+
+
+
+
+
+
+
+
+
+
+
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/rsrcApplicationContext.xml
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/rsrcApplicationContext.xml (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/rsrcApplicationContext.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,109 @@
+
+
+
+
+ org.lamsfoundation.lams.tool.rsrc.ApplicationResources
+
+
+
+
+
+
+
+
+
+
+
+
+ org/lamsfoundation/lams/tool/rsrc/model/Resource.hbm.xml
+ org/lamsfoundation/lams/tool/rsrc/model/ResourceItem.hbm.xml
+ org/lamsfoundation/lams/tool/rsrc/model/ResourceAttachment.hbm.xml
+ org/lamsfoundation/lams/tool/rsrc/model/ResourceUser.hbm.xml
+ org/lamsfoundation/lams/tool/rsrc/model/ResourceSession.hbm.xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ false
+
+
+
+ PROPAGATION_REQUIRED,-java.lang.Exception
+
+
+
+
+
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/IResourceService.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/IResourceService.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/IResourceService.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,33 @@
+/***************************************************************************
+ * Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+ * =============================================================
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ *
+ * http://www.gnu.org/licenses/gpl.txt
+ * ***********************************************************************/
+
+package org.lamsfoundation.lams.tool.rsrc.service;
+
+/**
+ * @author Dapeng.Ni
+ *
+ * Interface that defines the contract that all ShareResource service provider must follow.
+ */
+public interface IResourceService
+{
+}
+
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,36 @@
+/***************************************************************************
+ * Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+ * =============================================================
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ *
+ * http://www.gnu.org/licenses/gpl.txt
+ * ***********************************************************************/
+
+package org.lamsfoundation.lams.tool.rsrc.service;
+import org.apache.log4j.Logger;
+
+/**
+ *
+ * @author Dapeng.Ni
+ *
+ */
+public class ResourceServiceImpl implements
+ IResourceService
+
+{
+ static Logger logger = Logger.getLogger(ResourceServiceImpl.class.getName());
+}
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceProxy.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceProxy.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceProxy.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,71 @@
+/***************************************************************************
+ * Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+ * =============================================================
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ * USA
+ *
+ * http://www.gnu.org/licenses/gpl.txt
+ * ***********************************************************************/
+
+package org.lamsfoundation.lams.tool.rsrc.service;
+
+import javax.servlet.ServletContext;
+
+import org.springframework.web.context.WebApplicationContext;
+import org.springframework.web.context.support.WebApplicationContextUtils;
+
+
+
+
+/**
+ * @author Dapeng.Ni
+ *
+ * This class act as the proxy between web layer and service layer. It is
+ * designed to decouple the presentation logic and business logic completely.
+ * In this way, the presentation tier will no longer be aware of the changes in
+ * service layer. Therefore we can feel free to switch the business logic
+ * implementation.
+ */
+public class ResourceServiceProxy
+{
+ /**
+ * Return the mc domain service object. It will delegate to the Spring
+ * helper method to retrieve the proper bean from Spring bean factory.
+ * @param servletContext the servletContext for current application
+ * @return mcq service object.
+ */
+ public static final IResourceService getMcService(ServletContext servletContext)
+ {
+ return (IResourceService)getMcDomainService(servletContext);
+ }
+//
+// public static final ToolSessionManager getMcSessionManager(ServletContext servletContext)
+// {
+// return (ToolSessionManager)getMcDomainService(servletContext);
+// }
+//
+// public static final ToolContentManager getMcContentManager(ServletContext servletContext)
+// {
+// return (ToolContentManager)getMcDomainService(servletContext);
+// }
+
+ private static Object getMcDomainService(ServletContext servletContext)
+ {
+ WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext);
+ return wac.getBean("mcService");
+ }
+
+}
\ No newline at end of file
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/action/ApplicationResources.properties
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/action/ApplicationResources.properties (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/action/ApplicationResources.properties (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,62 @@
+# Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA
+#
+# http://www.gnu.org/licenses/gpl.txt
+
+# Resources for parameter 'org.lamsfoundation.lams.tool.imscp.web.ApplicationResources'
+#=========================Error Messages===========================#
+error.field.mandatory={0} must not be empty.
+error.directoryUnavailable=Unable to read directory {0}. It may not exist, may not be readable or may not be a directory.
+error.packageMissing=No content package can be found - have you uploaded the package yet?
+error.zipFileFormat=Unable to extract the zip file that was uploaded. Please check if the file you uploaded is a valid zip file. If it is a valid zip file, please contact your administrator. An error has been written in the logs.
+error.exception.imscpApplication=An internal error has occured with the IMS Content Package tool. If reporting this error, please report:
{0}
+error.exception.imsManifest=An error has occured while processing the imsmanifest.xml file from the content package.
The file may be missing, in an invalid format or may be an unsupported version. Please check that the content package is valid - try opening it using a zip utility and checking that the file imsmanifest.xml exists.
. If reporting this error, please report:
{0}
+error.exception.general=An general error has occured. If reporting this error, please report:
{0}
+
+#=========================UploadAction Look Up Dispatch Token===========================#
+button.basic=Basic
+button.uploadFile=Upload Package
+button.preview=Preview
+button.advanced=Advanced
+button.instructions=Instructions
+button.uploadInstructions=Upload
+button.done=Done
+
+#=========================General Labels===========================#
+label.error=Error
+label.toolContentId.missing=An system error has occured: toolContentId is missing. Unable to continue.
+
+#=========================abasic Labels===========================#
+label.fileHeading=Step 1: Upload a file:
+label.fileEntry=File:
+label.titleHeading=Step 2: Review title and description
+label.titleEntry=Title:
+label.descEntry=Description:
+label.orgEntry=Organization of package:
+label.noPackageYet=No package loaded.
+
+#=========================aadvanced Labels===========================#
+label.lockOnFinish=Lock on Finish?
+
+#=========================ainstructions Labels===========================#
+label.onlineInstructions=Online Instructions
+label.offlineInstructions=Offline Instructions
+
+#=========================Complete Labels===========================#
+label.complete.title=Content Package Configured.
+label.complete.instructions=The content package is configured
+
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/action/AuthoringAction.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,106 @@
+/*
+ *Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org)
+ *
+ *This program is free software; you can redistribute it and/or modify
+ *it under the terms of the GNU General Public License as published by
+ *the Free Software Foundation; either version 2 of the License, or
+ *(at your option) any later version.
+ *
+ *This program is distributed in the hope that it will be useful,
+ *but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ *GNU General Public License for more details.
+ *
+ *You should have received a copy of the GNU General Public License
+ *along with this program; if not, write to the Free Software
+ *Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+ *USA
+ *
+ *http://www.gnu.org/licenses/gpl.txt
+ */
+package org.lamsfoundation.lams.tool.rsrc.web.action;
+
+import java.io.IOException;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.log4j.Logger;
+import org.apache.struts.action.Action;
+import org.apache.struts.action.ActionForm;
+import org.apache.struts.action.ActionForward;
+import org.apache.struts.action.ActionMapping;
+import org.lamsfoundation.lams.tool.rsrc.service.IResourceService;
+
+/**
+ * @author Steve.Ni
+ * @version $Revision$
+ */
+public class AuthoringAction extends Action {
+ private static Logger log = Logger.getLogger(AuthoringAction.class);
+ private IResourceService rsrcService;
+
+ public ActionForward execute(ActionMapping mapping, ActionForm form,
+ HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
+
+// String param = mapping.getParameter();
+// //-----------------------Forum Author function ---------------------------
+// if (param.equals("initPage")) {
+//// request.getSession().setAttribute(ForumConstants.MODE,ForumConstants.AUTHOR_MODE);
+// return initPage(mapping, form, request, response);
+// }
+// if (param.equals("monitoringInitPage")) {
+//// request.getSession().setAttribute(ForumConstants.MODE,ForumConstants.MONITOR_MODE);
+// return initPage(mapping, form, request, response);
+// }
+// if (param.equals("updateContent")) {
+// return updateContent(mapping, form, request, response);
+// }
+// if (param.equals("uploadOnlineFile")) {
+// return uploadOnline(mapping, form, request, response);
+// }
+// if (param.equals("uploadOfflineFile")) {
+// return uploadOffline(mapping, form, request, response);
+// }
+// if (param.equals("deleteOnlineFile")) {
+// return deleteOnlineFile(mapping, form, request, response);
+// }
+// if (param.equals("deleteOfflineFile")) {
+// return deleteOfflineFile(mapping, form, request, response);
+// }
+// //-----------------------Topic function ---------------------------
+// if (param.equals("newTopic")) {
+// return newTopic(mapping, form, request, response);
+// }
+// if (param.equals("createTopic")) {
+// return createTopic(mapping, form, request, response);
+// }
+// if (param.equals("editTopic")) {
+// return editTopic(mapping, form, request, response);
+// }
+// if (param.equals("updateTopic")) {
+// return updateTopic(mapping, form, request, response);
+// }
+// if (param.equals("viewTopic")) {
+// return viewTopic(mapping, form, request, response);
+// }
+// if (param.equals("deleteTopic")) {
+// return deleteTopic(mapping, form, request, response);
+// }
+// if (param.equals("deleteAttachment")) {
+// return deleteAttachment(mapping, form, request, response);
+// }
+// if (param.equals("refreshTopic")) {
+// return refreshTopic(mapping, form, request, response);
+// }
+// if (param.equals("finishTopic")) {
+// return finishTopic(mapping, form, request, response);
+// }
+ return mapping.findForward("error");
+ }
+ //******************************************************************************************************************
+ // Forum Author functions
+ //******************************************************************************************************************
+
+}
Index: lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/form/ResourceForm.java
===================================================================
diff -u
--- lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/form/ResourceForm.java (revision 0)
+++ lams_tool_larsrc/src/org/lamsfoundation/lams/tool/rsrc/web/form/ResourceForm.java (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,18 @@
+package org.lamsfoundation.lams.tool.rsrc.web.form;
+
+import org.apache.log4j.Logger;
+import org.apache.struts.validator.ValidatorForm;
+
+/**
+ *
+ * Message Form.
+ * @struts.form name="resourceForm"
+ *
+ * User: Dapeng.Ni
+ */
+public class ResourceForm extends ValidatorForm {
+ private static final long serialVersionUID = -6054354910960460120L;
+ private static Logger logger = Logger.getLogger(ResourceForm.class.getName());
+
+
+}
Index: lams_tool_larsrc/web/WEB-INF/fckeditor/tlds/FCKeditor.tld
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/fckeditor/tlds/FCKeditor.tld (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/fckeditor/tlds/FCKeditor.tld (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,214 @@
+
+
+
+
+ 2.3
+ 1.1
+ FCKeditor
+ http://fckeditor.net/tags-fckeditor
+ FCKeditor taglib
+
+ editor
+ com.fredck.FCKeditor.tags.FCKeditorTag
+ JSP
+
+ id
+ true
+
+
+ basePath
+ false
+ true
+
+
+ toolbarSet
+ false
+ true
+
+
+ width
+ false
+ true
+
+
+ height
+ false
+ true
+
+
+ customConfigurationsPath
+ false
+ true
+
+
+ editorAreaCSS
+ false
+ true
+
+
+ baseHref
+ false
+ true
+
+
+ skinPath
+ false
+ true
+
+
+ pluginsPath
+ false
+ true
+
+
+ fullPage
+ false
+ true
+
+
+ debug
+ false
+ true
+
+
+ autoDetectLanguage
+ false
+ true
+
+
+ defaultLanguage
+ false
+ true
+
+
+ contentLangDirection
+ false
+ true
+
+
+ enableXHTML
+ false
+ true
+
+
+ enableSourceXHTML
+ false
+ true
+
+
+ fillEmptyBlocks
+ false
+ true
+
+
+ formatSource
+ false
+ true
+
+
+ formatOutput
+ false
+ true
+
+
+ formatIndentator
+ false
+ true
+
+
+ geckoUseSPAN
+ false
+ true
+
+
+ startupFocus
+ false
+ true
+
+
+ forcePasteAsPlainText
+ false
+ true
+
+
+ forceSimpleAmpersand
+ false
+ true
+
+
+ tabSpaces
+ false
+ true
+
+
+ useBROnCarriageReturn
+ false
+ true
+
+
+ toolbarStartExpanded
+ false
+ true
+
+
+ toolbarCanCollapse
+ false
+ true
+
+
+ fontColors
+ false
+ true
+
+
+ fontNames
+ false
+ true
+
+
+ fontSizes
+ false
+ true
+
+
+ fontFormats
+ false
+ true
+
+
+ stylesXmlPath
+ false
+ true
+
+
+ linkBrowserURL
+ false
+ true
+
+
+ imageBrowserURL
+ false
+ true
+
+
+ flashBrowserURL
+ false
+ true
+
+
+ linkUploadURL
+ false
+ true
+
+
+ imageUploadURL
+ false
+ true
+
+
+ flashUploadURL
+ false
+ true
+
+
+
\ No newline at end of file
Index: lams_tool_larsrc/web/WEB-INF/jstl/tlds/c.tld
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/jstl/tlds/c.tld (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/jstl/tlds/c.tld (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,563 @@
+
+
+
+
+ JSTL 1.1 core library
+ JSTL core
+ 1.1
+ c
+ http://java.sun.com/jsp/jstl/core
+
+
+
+ Provides core validation features for JSTL tags.
+
+
+ org.apache.taglibs.standard.tlv.JstlCoreTLV
+
+
+
+
+
+ Catches any Throwable that occurs in its body and optionally
+ exposes it.
+
+ catch
+ org.apache.taglibs.standard.tag.common.core.CatchTag
+ JSP
+
+
+Name of the exported scoped variable for the
+exception thrown from a nested action. The type of the
+scoped variable is the type of the exception thrown.
+
+ var
+ false
+ false
+
+
+
+
+
+ Simple conditional tag that establishes a context for
+ mutually exclusive conditional operations, marked by
+ <when> and <otherwise>
+
+ choose
+ org.apache.taglibs.standard.tag.common.core.ChooseTag
+ JSP
+
+
+
+
+ Simple conditional tag, which evalutes its body if the
+ supplied condition is true and optionally exposes a Boolean
+ scripting variable representing the evaluation of this condition
+
+ if
+ org.apache.taglibs.standard.tag.rt.core.IfTag
+ JSP
+
+
+The test condition that determines whether or
+not the body content should be processed.
+
+ test
+ true
+ true
+ boolean
+
+
+
+Name of the exported scoped variable for the
+resulting value of the test condition. The type
+of the scoped variable is Boolean.
+
+ var
+ false
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Retrieves an absolute or relative URL and exposes its contents
+ to either the page, a String in 'var', or a Reader in 'varReader'.
+
+ import
+ org.apache.taglibs.standard.tag.rt.core.ImportTag
+ org.apache.taglibs.standard.tei.ImportTEI
+ JSP
+
+
+The URL of the resource to import.
+
+ url
+ true
+ true
+
+
+
+Name of the exported scoped variable for the
+resource's content. The type of the scoped
+variable is String.
+
+ var
+ false
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+Name of the exported scoped variable for the
+resource's content. The type of the scoped
+variable is Reader.
+
+ varReader
+ false
+ false
+
+
+
+Name of the context when accessing a relative
+URL resource that belongs to a foreign
+context.
+
+ context
+ false
+ true
+
+
+
+Character encoding of the content at the input
+resource.
+
+ charEncoding
+ false
+ true
+
+
+
+
+
+ The basic iteration tag, accepting many different
+ collection types and supporting subsetting and other
+ functionality
+
+ forEach
+ org.apache.taglibs.standard.tag.rt.core.ForEachTag
+ org.apache.taglibs.standard.tei.ForEachTEI
+ JSP
+
+
+Collection of items to iterate over.
+
+ items
+ false
+ true
+ java.lang.Object
+
+
+
+If items specified:
+Iteration begins at the item located at the
+specified index. First item of the collection has
+index 0.
+If items not specified:
+Iteration begins with index set at the value
+specified.
+
+ begin
+ false
+ true
+ int
+
+
+
+If items specified:
+Iteration ends at the item located at the
+specified index (inclusive).
+If items not specified:
+Iteration ends when index reaches the value
+specified.
+
+ end
+ false
+ true
+ int
+
+
+
+Iteration will only process every step items of
+the collection, starting with the first one.
+
+ step
+ false
+ true
+ int
+
+
+
+Name of the exported scoped variable for the
+current item of the iteration. This scoped
+variable has nested visibility. Its type depends
+on the object of the underlying collection.
+
+ var
+ false
+ false
+
+
+
+Name of the exported scoped variable for the
+status of the iteration. Object exported is of type
+javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested
+visibility.
+
+ varStatus
+ false
+ false
+
+
+
+
+
+ Iterates over tokens, separated by the supplied delimeters
+
+ forTokens
+ org.apache.taglibs.standard.tag.rt.core.ForTokensTag
+ JSP
+
+
+String of tokens to iterate over.
+
+ items
+ true
+ true
+ java.lang.String
+
+
+
+The set of delimiters (the characters that
+separate the tokens in the string).
+
+ delims
+ true
+ true
+ java.lang.String
+
+
+
+Iteration begins at the token located at the
+specified index. First token has index 0.
+
+ begin
+ false
+ true
+ int
+
+
+
+Iteration ends at the token located at the
+specified index (inclusive).
+
+ end
+ false
+ true
+ int
+
+
+
+Iteration will only process every step tokens
+of the string, starting with the first one.
+
+ step
+ false
+ true
+ int
+
+
+
+Name of the exported scoped variable for the
+current item of the iteration. This scoped
+variable has nested visibility.
+
+ var
+ false
+ false
+
+
+
+Name of the exported scoped variable for the
+status of the iteration. Object exported is of
+type
+javax.servlet.jsp.jstl.core.LoopTag
+Status. This scoped variable has nested
+visibility.
+
+ varStatus
+ false
+ false
+
+
+
+
+
+ Like <%= ... >, but for expressions.
+
+ out
+ org.apache.taglibs.standard.tag.rt.core.OutTag
+ JSP
+
+
+Expression to be evaluated.
+
+ value
+ true
+ true
+
+
+
+Default value if the resulting value is null.
+
+ default
+ false
+ true
+
+
+
+Determines whether characters <,>,&,'," in the
+resulting string should be converted to their
+corresponding character entity codes. Default value is
+true.
+
+ escapeXml
+ false
+ true
+
+
+
+
+
+
+ Subtag of <choose> that follows <when> tags
+ and runs only if all of the prior conditions evaluated to
+ 'false'
+
+ otherwise
+ org.apache.taglibs.standard.tag.common.core.OtherwiseTag
+ JSP
+
+
+
+
+ Adds a parameter to a containing 'import' tag's URL.
+
+ param
+ org.apache.taglibs.standard.tag.rt.core.ParamTag
+ JSP
+
+
+Name of the query string parameter.
+
+ name
+ true
+ true
+
+
+
+Value of the parameter.
+
+ value
+ false
+ true
+
+
+
+
+
+ Redirects to a new URL.
+
+ redirect
+ org.apache.taglibs.standard.tag.rt.core.RedirectTag
+ JSP
+
+
+The URL of the resource to redirect to.
+
+ url
+ false
+ true
+
+
+
+Name of the context when redirecting to a relative URL
+resource that belongs to a foreign context.
+
+ context
+ false
+ true
+
+
+
+
+
+ Removes a scoped variable (from a particular scope, if specified).
+
+ remove
+ org.apache.taglibs.standard.tag.common.core.RemoveTag
+ empty
+
+
+Name of the scoped variable to be removed.
+
+ var
+ true
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Sets the result of an expression evaluation in a 'scope'
+
+ set
+ org.apache.taglibs.standard.tag.rt.core.SetTag
+ JSP
+
+
+Name of the exported scoped variable to hold the value
+specified in the action. The type of the scoped variable is
+whatever type the value expression evaluates to.
+
+ var
+ false
+ false
+
+
+
+Expression to be evaluated.
+
+ value
+ false
+ true
+
+
+
+Target object whose property will be set. Must evaluate to
+a JavaBeans object with setter property property, or to a
+java.util.Map object.
+
+ target
+ false
+ true
+
+
+
+Name of the property to be set in the target object.
+
+ property
+ false
+ true
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Creates a URL with optional query parameters.
+
+ url
+ org.apache.taglibs.standard.tag.rt.core.UrlTag
+ JSP
+
+
+Name of the exported scoped variable for the
+processed url. The type of the scoped variable is
+String.
+
+ var
+ false
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+URL to be processed.
+
+ value
+ false
+ true
+
+
+
+Name of the context when specifying a relative URL
+resource that belongs to a foreign context.
+
+ context
+ false
+ true
+
+
+
+
+
+ Subtag of <choose> that includes its body if its
+ condition evalutes to 'true'
+
+ when
+ org.apache.taglibs.standard.tag.rt.core.WhenTag
+ JSP
+
+
+The test condition that determines whether or not the
+body content should be processed.
+
+ test
+ true
+ true
+ boolean
+
+
+
+
Index: lams_tool_larsrc/web/WEB-INF/jstl/tlds/fmt.tld
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/jstl/tlds/fmt.tld (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/jstl/tlds/fmt.tld (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,671 @@
+
+
+
+
+ JSTL 1.1 i18n-capable formatting library
+ JSTL fmt
+ 1.1
+ fmt
+ http://java.sun.com/jsp/jstl/fmt
+
+
+
+ Provides core validation features for JSTL tags.
+
+
+ org.apache.taglibs.standard.tlv.JstlFmtTLV
+
+
+
+
+
+ Sets the request character encoding
+
+ requestEncoding
+ org.apache.taglibs.standard.tag.rt.fmt.RequestEncodingTag
+ empty
+
+
+Name of character encoding to be applied when
+decoding request parameters.
+
+ value
+ false
+ true
+
+
+
+
+
+ Stores the given locale in the locale configuration variable
+
+ setLocale
+ org.apache.taglibs.standard.tag.rt.fmt.SetLocaleTag
+ empty
+
+
+A String value is interpreted as the
+printable representation of a locale, which
+must contain a two-letter (lower-case)
+language code (as defined by ISO-639),
+and may contain a two-letter (upper-case)
+country code (as defined by ISO-3166).
+Language and country codes must be
+separated by hyphen (-) or underscore
+(_).
+
+ value
+ true
+ true
+
+
+
+Vendor- or browser-specific variant.
+See the java.util.Locale javadocs for
+more information on variants.
+
+ variant
+ false
+ true
+
+
+
+Scope of the locale configuration variable.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Specifies the time zone for any time formatting or parsing actions
+ nested in its body
+
+ timeZone
+ org.apache.taglibs.standard.tag.rt.fmt.TimeZoneTag
+ JSP
+
+
+The time zone. A String value is interpreted as
+a time zone ID. This may be one of the time zone
+IDs supported by the Java platform (such as
+"America/Los_Angeles") or a custom time zone
+ID (such as "GMT-8"). See
+java.util.TimeZone for more information on
+supported time zone formats.
+
+ value
+ true
+ true
+
+
+
+
+
+ Stores the given time zone in the time zone configuration variable
+
+ setTimeZone
+ org.apache.taglibs.standard.tag.rt.fmt.SetTimeZoneTag
+ empty
+
+
+The time zone. A String value is interpreted as
+a time zone ID. This may be one of the time zone
+IDs supported by the Java platform (such as
+"America/Los_Angeles") or a custom time zone
+ID (such as "GMT-8"). See java.util.TimeZone for
+more information on supported time zone
+formats.
+
+ value
+ true
+ true
+
+
+
+Name of the exported scoped variable which
+stores the time zone of type
+java.util.TimeZone.
+
+ var
+ false
+ false
+
+
+
+Scope of var or the time zone configuration
+variable.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Loads a resource bundle to be used by its tag body
+
+ bundle
+ org.apache.taglibs.standard.tag.rt.fmt.BundleTag
+ JSP
+
+
+Resource bundle base name. This is the bundle's
+fully-qualified resource name, which has the same
+form as a fully-qualified class name, that is, it uses
+"." as the package component separator and does not
+have any file type (such as ".class" or ".properties")
+suffix.
+
+ basename
+ true
+ true
+
+
+
+Prefix to be prepended to the value of the message
+key of any nested <fmt:message> action.
+
+ prefix
+ false
+ true
+
+
+
+
+
+ Loads a resource bundle and stores it in the named scoped variable or
+ the bundle configuration variable
+
+ setBundle
+ org.apache.taglibs.standard.tag.rt.fmt.SetBundleTag
+ empty
+
+
+Resource bundle base name. This is the bundle's
+fully-qualified resource name, which has the same
+form as a fully-qualified class name, that is, it uses
+"." as the package component separator and does not
+have any file type (such as ".class" or ".properties")
+suffix.
+
+ basename
+ true
+ true
+
+
+
+Name of the exported scoped variable which stores
+the i18n localization context of type
+javax.servlet.jsp.jstl.fmt.LocalizationC
+ontext.
+
+ var
+ false
+ false
+
+
+
+Scope of var or the localization context
+configuration variable.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Maps key to localized message and performs parametric replacement
+
+ message
+ org.apache.taglibs.standard.tag.rt.fmt.MessageTag
+ JSP
+
+
+Message key to be looked up.
+
+ key
+ false
+ true
+
+
+
+Localization context in whose resource
+bundle the message key is looked up.
+
+ bundle
+ false
+ true
+
+
+
+Name of the exported scoped variable
+which stores the localized message.
+
+ var
+ false
+ false
+
+
+
+Scope of var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Supplies an argument for parametric replacement to a containing
+ <message> tag
+
+ param
+ org.apache.taglibs.standard.tag.rt.fmt.ParamTag
+ JSP
+
+
+Argument used for parametric replacement.
+
+ value
+ false
+ true
+
+
+
+
+
+ Formats a numeric value as a number, currency, or percentage
+
+ formatNumber
+ org.apache.taglibs.standard.tag.rt.fmt.FormatNumberTag
+ JSP
+
+
+Numeric value to be formatted.
+
+ value
+ false
+ true
+
+
+
+Specifies whether the value is to be
+formatted as number, currency, or
+percentage.
+
+ type
+ false
+ true
+
+
+
+Custom formatting pattern.
+
+ pattern
+ false
+ true
+
+
+
+ISO 4217 currency code. Applied only
+when formatting currencies (i.e. if type is
+equal to "currency"); ignored otherwise.
+
+ currencyCode
+ false
+ true
+
+
+
+Currency symbol. Applied only when
+formatting currencies (i.e. if type is equal
+to "currency"); ignored otherwise.
+
+ currencySymbol
+ false
+ true
+
+
+
+Specifies whether the formatted output
+will contain any grouping separators.
+
+ groupingUsed
+ false
+ true
+
+
+
+Maximum number of digits in the integer
+portion of the formatted output.
+
+ maxIntegerDigits
+ false
+ true
+
+
+
+Minimum number of digits in the integer
+portion of the formatted output.
+
+ minIntegerDigits
+ false
+ true
+
+
+
+Maximum number of digits in the
+fractional portion of the formatted output.
+
+ maxFractionDigits
+ false
+ true
+
+
+
+Minimum number of digits in the
+fractional portion of the formatted output.
+
+ minFractionDigits
+ false
+ true
+
+
+
+Name of the exported scoped variable
+which stores the formatted result as a
+String.
+
+ var
+ false
+ false
+
+
+
+Scope of var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Parses the string representation of a number, currency, or percentage
+
+ parseNumber
+ org.apache.taglibs.standard.tag.rt.fmt.ParseNumberTag
+ JSP
+
+
+String to be parsed.
+
+ value
+ false
+ true
+
+
+
+Specifies whether the string in the value
+attribute should be parsed as a number,
+currency, or percentage.
+
+ type
+ false
+ true
+
+
+
+Custom formatting pattern that determines
+how the string in the value attribute is to be
+parsed.
+
+ pattern
+ false
+ true
+
+
+
+Locale whose default formatting pattern (for
+numbers, currencies, or percentages,
+respectively) is to be used during the parse
+operation, or to which the pattern specified
+via the pattern attribute (if present) is
+applied.
+
+ parseLocale
+ false
+ true
+
+
+
+Specifies whether just the integer portion of
+the given value should be parsed.
+
+ integerOnly
+ false
+ true
+
+
+
+Name of the exported scoped variable which
+stores the parsed result (of type
+java.lang.Number).
+
+ var
+ false
+ false
+
+
+
+Scope of var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Formats a date and/or time using the supplied styles and pattern
+
+ formatDate
+ org.apache.taglibs.standard.tag.rt.fmt.FormatDateTag
+ empty
+
+
+Date and/or time to be formatted.
+
+ value
+ true
+ true
+
+
+
+Specifies whether the time, the date, or both
+the time and date components of the given
+date are to be formatted.
+
+ type
+ false
+ true
+
+
+
+Predefined formatting style for dates. Follows
+the semantics defined in class
+java.text.DateFormat. Applied only
+when formatting a date or both a date and
+time (i.e. if type is missing or is equal to
+"date" or "both"); ignored otherwise.
+
+ dateStyle
+ false
+ true
+
+
+
+Predefined formatting style for times. Follows
+the semantics defined in class
+java.text.DateFormat. Applied only
+when formatting a time or both a date and
+time (i.e. if type is equal to "time" or "both");
+ignored otherwise.
+
+ timeStyle
+ false
+ true
+
+
+
+Custom formatting style for dates and times.
+
+ pattern
+ false
+ true
+
+
+
+Time zone in which to represent the formatted
+time.
+
+ timeZone
+ false
+ true
+
+
+
+Name of the exported scoped variable which
+stores the formatted result as a String.
+
+ var
+ false
+ false
+
+
+
+Scope of var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Parses the string representation of a date and/or time
+
+ parseDate
+ org.apache.taglibs.standard.tag.rt.fmt.ParseDateTag
+ JSP
+
+
+Date string to be parsed.
+
+ value
+ false
+ true
+
+
+
+Specifies whether the date string in the
+value attribute is supposed to contain a
+time, a date, or both.
+
+ type
+ false
+ true
+
+
+
+Predefined formatting style for days
+which determines how the date
+component of the date string is to be
+parsed. Applied only when formatting a
+date or both a date and time (i.e. if type
+is missing or is equal to "date" or "both");
+ignored otherwise.
+
+ dateStyle
+ false
+ true
+
+
+
+Predefined formatting styles for times
+which determines how the time
+component in the date string is to be
+parsed. Applied only when formatting a
+time or both a date and time (i.e. if type
+is equal to "time" or "both"); ignored
+otherwise.
+
+ timeStyle
+ false
+ true
+
+
+
+Custom formatting pattern which
+determines how the date string is to be
+parsed.
+
+ pattern
+ false
+ true
+
+
+
+Time zone in which to interpret any time
+information in the date string.
+
+ timeZone
+ false
+ true
+
+
+
+Locale whose predefined formatting styles
+for dates and times are to be used during
+the parse operation, or to which the
+pattern specified via the pattern
+attribute (if present) is applied.
+
+ parseLocale
+ false
+ true
+
+
+
+Name of the exported scoped variable in
+which the parsing result (of type
+java.util.Date) is stored.
+
+ var
+ false
+ false
+
+
+
+Scope of var.
+
+ scope
+ false
+ false
+
+
+
+
Index: lams_tool_larsrc/web/WEB-INF/jstl/tlds/fn.tld
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/jstl/tlds/fn.tld (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/jstl/tlds/fn.tld (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,207 @@
+
+
+
+
+ JSTL 1.1 functions library
+ JSTL functions
+ 1.1
+ fn
+ http://java.sun.com/jsp/jstl/functions
+
+
+
+ Tests if an input string contains the specified substring.
+
+ contains
+ org.apache.taglibs.standard.functions.Functions
+ boolean contains(java.lang.String, java.lang.String)
+
+ <c:if test="${fn:contains(name, searchString)}">
+
+
+
+
+
+ Tests if an input string contains the specified substring in a case insensitive way.
+
+ containsIgnoreCase
+ org.apache.taglibs.standard.functions.Functions
+ boolean containsIgnoreCase(java.lang.String, java.lang.String)
+
+ <c:if test="${fn:containsIgnoreCase(name, searchString)}">
+
+
+
+
+
+ Tests if an input string ends with the specified suffix.
+
+ endsWith
+ org.apache.taglibs.standard.functions.Functions
+ boolean endsWith(java.lang.String, java.lang.String)
+
+ <c:if test="${fn:endsWith(filename, ".txt")}">
+
+
+
+
+
+ Escapes characters that could be interpreted as XML markup.
+
+ escapeXml
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String escapeXml(java.lang.String)
+
+ ${fn:escapeXml(param:info)}
+
+
+
+
+
+ Returns the index withing a string of the first occurrence of a specified substring.
+
+ indexOf
+ org.apache.taglibs.standard.functions.Functions
+ int indexOf(java.lang.String, java.lang.String)
+
+ ${fn:indexOf(name, "-")}
+
+
+
+
+
+ Joins all elements of an array into a string.
+
+ join
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String join(java.lang.String[], java.lang.String)
+
+ ${fn:join(array, ";")}
+
+
+
+
+
+ Returns the number of items in a collection, or the number of characters in a string.
+
+ length
+ org.apache.taglibs.standard.functions.Functions
+ int length(java.lang.Object)
+
+ You have ${fn:length(shoppingCart.products)} in your shopping cart.
+
+
+
+
+
+ Returns a string resulting from replacing in an input string all occurrences
+ of a "before" string into an "after" substring.
+
+ replace
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String replace(java.lang.String, java.lang.String, java.lang.String)
+
+ ${fn:replace(text, "-", "")}
+
+
+
+
+
+ Splits a string into an array of substrings.
+
+ split
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String[] split(java.lang.String, java.lang.String)
+
+ ${fn:split(customerNames, ";")}
+
+
+
+
+
+ Tests if an input string starts with the specified prefix.
+
+ startsWith
+ org.apache.taglibs.standard.functions.Functions
+ boolean startsWith(java.lang.String, java.lang.String)
+
+ <c:if test="${fn:startsWith(product.id, "100-")}">
+
+
+
+
+
+ Returns a subset of a string.
+
+ substring
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String substring(java.lang.String, int, int)
+
+ P.O. Box: ${fn:substring(zip, 6, -1)}
+
+
+
+
+
+ Returns a subset of a string following a specific substring.
+
+ substringAfter
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String substringAfter(java.lang.String, java.lang.String)
+
+ P.O. Box: ${fn:substringAfter(zip, "-")}
+
+
+
+
+
+ Returns a subset of a string before a specific substring.
+
+ substringBefore
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String substringBefore(java.lang.String, java.lang.String)
+
+ Zip (without P.O. Box): ${fn:substringBefore(zip, "-")}
+
+
+
+
+
+ Converts all of the characters of a string to lower case.
+
+ toLowerCase
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String toLowerCase(java.lang.String)
+
+ Product name: ${fn.toLowerCase(product.name)}
+
+
+
+
+
+ Converts all of the characters of a string to upper case.
+
+ toUpperCase
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String toUpperCase(java.lang.String)
+
+ Product name: ${fn.UpperCase(product.name)}
+
+
+
+
+
+ Removes white spaces from both ends of a string.
+
+ trim
+ org.apache.taglibs.standard.functions.Functions
+ java.lang.String trim(java.lang.String)
+
+ Name: ${fn.trim(name)}
+
+
+
+
Index: lams_tool_larsrc/web/WEB-INF/jstl/tlds/x.tld
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/jstl/tlds/x.tld (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/jstl/tlds/x.tld (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,448 @@
+
+
+
+
+ JSTL 1.1 XML library
+ JSTL XML
+ 1.1
+ x
+ http://java.sun.com/jsp/jstl/xml
+
+
+
+ Provides validation features for JSTL XML tags.
+
+
+ org.apache.taglibs.standard.tlv.JstlXmlTLV
+
+
+
+
+
+ Simple conditional tag that establishes a context for
+ mutually exclusive conditional operations, marked by
+ <when> and <otherwise>
+
+ choose
+ org.apache.taglibs.standard.tag.common.core.ChooseTag
+ JSP
+
+
+
+
+ Like <%= ... >, but for XPath expressions.
+
+ out
+ org.apache.taglibs.standard.tag.rt.xml.ExprTag
+ empty
+
+
+XPath expression to be evaluated.
+
+ select
+ true
+ false
+
+
+
+Determines whether characters <,>,&,'," in the
+resulting string should be converted to their
+corresponding character entity codes. Default
+value is true.
+
+ escapeXml
+ false
+ true
+
+
+
+
+
+ XML conditional tag, which evalutes its body if the
+ supplied XPath expression evalutes to 'true' as a boolean
+
+ if
+ org.apache.taglibs.standard.tag.common.xml.IfTag
+ JSP
+
+
+The test condition that tells whether or not the
+body content should be processed.
+
+ select
+ true
+ false
+
+
+
+Name of the exported scoped variable for the
+resulting value of the test condition. The type
+of the scoped variable is Boolean.
+
+ var
+ false
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ XML iteration tag.
+
+ forEach
+ org.apache.taglibs.standard.tag.common.xml.ForEachTag
+ JSP
+
+
+Name of the exported scoped variable for the
+current item of the iteration. This scoped variable
+has nested visibility. Its type depends on the
+result of the XPath expression in the select
+attribute.
+
+ var
+ false
+ false
+
+
+
+XPath expression to be evaluated.
+
+ select
+ true
+ false
+
+
+
+Iteration begins at the item located at the
+specified index. First item of the collection has
+index 0.
+
+ begin
+ false
+ true
+ int
+
+
+
+Iteration ends at the item located at the specified
+index (inclusive).
+
+ end
+ false
+ true
+ int
+
+
+
+Iteration will only process every step items of
+the collection, starting with the first one.
+
+ step
+ false
+ true
+ int
+
+
+
+Name of the exported scoped variable for the
+status of the iteration. Object exported is of type
+javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped variable has nested visibility.
+
+ varStatus
+ false
+ false
+
+
+
+
+
+ Subtag of <choose> that follows <when> tags
+ and runs only if all of the prior conditions evaluated to
+ 'false'
+
+ otherwise
+ org.apache.taglibs.standard.tag.common.core.OtherwiseTag
+ JSP
+
+
+
+
+ Adds a parameter to a containing 'transform' tag's Transformer
+
+ param
+ org.apache.taglibs.standard.tag.rt.xml.ParamTag
+ JSP
+
+
+Name of the transformation parameter.
+
+ name
+ true
+ true
+
+
+
+Value of the parameter.
+
+ value
+ false
+ true
+
+
+
+
+
+ Parses XML content from 'source' attribute or 'body'
+
+ parse
+ org.apache.taglibs.standard.tag.rt.xml.ParseTag
+ org.apache.taglibs.standard.tei.XmlParseTEI
+ JSP
+
+
+Name of the exported scoped variable for
+the parsed XML document. The type of the
+scoped variable is implementation
+dependent.
+
+ var
+ false
+ false
+
+
+
+Name of the exported scoped variable for
+the parsed XML document. The type of the
+scoped variable is
+org.w3c.dom.Document.
+
+ varDom
+ false
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+Scope for varDom.
+
+ scopeDom
+ false
+ false
+
+
+
+Deprecated. Use attribute 'doc' instead.
+
+ xml
+ false
+ true
+
+
+
+Source XML document to be parsed.
+
+ doc
+ false
+ true
+
+
+
+The system identifier (URI) for parsing the
+XML document.
+
+ systemId
+ false
+ true
+
+
+
+Filter to be applied to the source
+document.
+
+ filter
+ false
+ true
+
+
+
+
+
+ Saves the result of an XPath expression evaluation in a 'scope'
+
+ set
+ org.apache.taglibs.standard.tag.common.xml.SetTag
+ empty
+
+
+Name of the exported scoped variable to hold
+the value specified in the action. The type of the
+scoped variable is whatever type the select
+expression evaluates to.
+
+ var
+ true
+ false
+
+
+
+XPath expression to be evaluated.
+
+ select
+ false
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+
+
+ Conducts a transformation given a source XML document
+ and an XSLT stylesheet
+
+ transform
+ org.apache.taglibs.standard.tag.rt.xml.TransformTag
+ org.apache.taglibs.standard.tei.XmlTransformTEI
+ JSP
+
+
+Name of the exported
+scoped variable for the
+transformed XML
+document. The type of the
+scoped variable is
+org.w3c.dom.Document.
+
+ var
+ false
+ false
+
+
+
+Scope for var.
+
+ scope
+ false
+ false
+
+
+
+Result
+Object that captures or
+processes the transformation
+result.
+
+ result
+ false
+ true
+
+
+
+Deprecated. Use attribute
+'doc' instead.
+
+ xml
+ false
+ true
+
+
+
+Source XML document to be
+transformed. (If exported by
+<x:set>, it must correspond
+to a well-formed XML
+document, not a partial
+document.)
+
+ doc
+ false
+ true
+
+
+
+Deprecated. Use attribute
+'docSystemId' instead.
+
+ xmlSystemId
+ false
+ true
+
+
+
+The system identifier (URI)
+for parsing the XML
+document.
+
+ docSystemId
+ false
+ true
+
+
+
+javax.xml.transform.Source
+Transformation stylesheet as
+a String, Reader, or
+Source object.
+
+ xslt
+ false
+ true
+
+
+
+The system identifier (URI)
+for parsing the XSLT
+stylesheet.
+
+ xsltSystemId
+ false
+ true
+
+
+
+
+
+ Subtag of <choose> that includes its body if its
+ expression evalutes to 'true'
+
+ when
+ org.apache.taglibs.standard.tag.common.xml.WhenTag
+ JSP
+
+
+The test condition that tells whether or
+not the body content should be
+processed
+
+ select
+ true
+ false
+
+
+
+
Index: lams_tool_larsrc/web/WEB-INF/lams.tld
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/lams.tld (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/lams.tld (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,269 @@
+
+
+
+
+ 1.0
+ lams
+
+ LAMSTags
+
+
+
+
+ Output the Server URL as defined in the lams.xml configuration file.
+ LAMS URL
+
+
+ LAMSURL
+ org.lamsfoundation.lams.web.tag.LAMSURLTag
+ empty
+
+
+
+
+ Output details from the shared session UserDTO object
+ user details
+
+
+ user
+ org.lamsfoundation.lams.web.tag.UserTag
+ empty
+
+
+ Output details from the shared session UserDTO object
+ property
+ true
+
+ true
+
+
+
+
+
+
+ Output the basic URL for the current webapp. e.g. http://server/lams/tool/nb11/
+ Base URL for the current web app
+
+
+ WebAppURL
+ org.lamsfoundation.lams.web.tag.WebAppURLTag
+ empty
+
+
+
+
+ Output stylesheet based on the user preferences.
+ User's chosen stylesheet
+
+
+ css
+ org.lamsfoundation.lams.web.tag.CssTag
+ empty
+
+
+
+
+ STRUTS-textarea
+ org.lamsfoundation.lams.web.tag.MultiLinesTextareaTag
+ empty
+
+ accesskey
+ false
+ true
+
+
+ alt
+ false
+ true
+
+
+ altKey
+ false
+ true
+
+
+ bundle
+ false
+ true
+
+
+ cols
+ false
+ true
+
+
+ disabled
+ false
+ true
+
+
+ errorKey
+ false
+ true
+
+
+ errorStyle
+ false
+ true
+
+
+ errorStyleClass
+ false
+ true
+
+
+ errorStyleId
+ false
+ true
+
+
+ indexed
+ false
+ true
+
+
+ name
+ false
+ true
+
+
+ onblur
+ false
+ true
+
+
+ onchange
+ false
+ true
+
+
+ onclick
+ false
+ true
+
+
+ ondblclick
+ false
+ true
+
+
+ onfocus
+ false
+ true
+
+
+ onkeydown
+ false
+ true
+
+
+ onkeypress
+ false
+ true
+
+
+ onkeyup
+ false
+ true
+
+
+ onmousedown
+ false
+ true
+
+
+ onmousemove
+ false
+ true
+
+
+ onmouseout
+ false
+ true
+
+
+ onmouseover
+ false
+ true
+
+
+ onmouseup
+ false
+ true
+
+
+ property
+ true
+ true
+
+
+ readonly
+ false
+ true
+
+
+ rows
+ false
+ true
+
+
+ style
+ false
+ true
+
+
+ styleClass
+ false
+ true
+
+
+ styleId
+ false
+ true
+
+
+ tabindex
+ false
+ true
+
+
+ title
+ false
+ true
+
+
+ titleKey
+ false
+ true
+
+
+ value
+ false
+ true
+
+
+
+ Tab
+ /WEB-INF/tags/Tab.tag
+
+
+ Tabs
+ /WEB-INF/tags/Tabs.tag
+
+
+ TabBody
+ /WEB-INF/tags/TabBody.tag
+
+
+ HTMLEditor
+ /WEB-INF/tags/HTMLEditor.tag
+
+
+ SetEditor
+ /WEB-INF/tags/SetEditor.tag
+
+
+
Index: lams_tool_larsrc/web/WEB-INF/struts/.cvsignore
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/struts/.cvsignore (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/struts/.cvsignore (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1 @@
+tlds
Index: lams_tool_larsrc/web/WEB-INF/struts/tiles-defs.xml
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/struts/tiles-defs.xml (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/struts/tiles-defs.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,163 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: lams_tool_larsrc/web/WEB-INF/web.xml
===================================================================
diff -u
--- lams_tool_larsrc/web/WEB-INF/web.xml (revision 0)
+++ lams_tool_larsrc/web/WEB-INF/web.xml (revision 0a704617c31a5847217132f6b7cd73a4b9b43c9f)
@@ -0,0 +1,228 @@
+
+
+
+ forum
+
+ Forum tool
+
+
+ javax.servlet.jsp.jstl.fmt.localizationContext
+ org.lamsfoundation.lams.tool.rsrc.ApplicationResources
+
+
+ contextConfigLocation
+
+ classpath:/org/lamsfoundation/lams/applicationContext.xml
+ classpath:/org/lamsfoundation/lams/contentrepository/applicationContext.xml
+ classpath:/org/lamsfoundation/lams/tool/toolApplicationContext.xml
+ classpath:/org/lamsfoundation/lams/lesson/lessonApplicationContext.xml
+ classpath:/org/lamsfoundation/lams/learning/learningApplicationContext.xml
+ classpath:/org/lamsfoundation/lams/tool/rsrc/rsrcApplicationContext.xml
+
+
+
+
+
+ org.springframework.web.context.ContextLoaderListener
+
+
+
+
+ hibernateFilter
+
+ org.lamsfoundation.lams.util.CustomizedOpenSessionInViewFilter
+
+
+ sessionFactoryBeanName
+ resourceSessionFactory
+
+
+
+
+ SystemSessionFilter
+
+ org.lamsfoundation.lams.web.session.SystemSessionFilter
+
+
+
+ LocaleFilter
+
+ org.lamsfoundation.lams.web.filter.LocaleFilter
+
+
+ encoding
+ UTF-8
+
+
+
+
+ hibernateFilter
+ /*
+
+
+ SystemSessionFilter
+ /*
+
+
+ LocaleFilter
+ /*
+
+
+
+
+
+ context
+ org.springframework.web.context.ContextLoaderServlet
+ 1
+
+
+
+ exportPortfolio
+ org.lamsfoundation.lams.tool.rsrc.web.action.ExportServlet
+
+
+
+ action
+ org.apache.struts.action.ActionServlet
+
+ config
+ /WEB-INF/struts-config.xml
+
+
+ debug
+ 999
+
+
+ detail
+ 2
+
+
+ validate
+ true
+
+ 2
+
+
+
+ Connector
+ com.fredck.FCKeditor.connector.ConnectorServlet
+
+ baseDir
+ /UserFiles/
+
+
+ debug
+ false
+
+ 1
+
+
+
+
+ Instructions Download
+ Instructions Download
+ download
+ org.lamsfoundation.lams.contentrepository.client.ToolDownload
+
+ toolContentHandlerBeanName
+ resourceToolContentHandler
+
+ 3
+
+
+
+ action
+ *.do
+
+
+
+ Connector
+ /editor/filemanager/browser/default/connectors/jsp/connector
+
+
+
+ download
+ /download/*
+
+
+
+ exportPortfolio
+ /exportPortfolio
+
+
+
+ 120
+
+
+
+
+
+ 403
+ /403.html
+
+
+
+
+
+
+
+ tags-bean
+ /WEB-INF/struts/tlds/struts-bean.tld
+
+
+ tags-html
+ /WEB-INF/struts/tlds/struts-html.tld
+
+
+ tags-logic
+ /WEB-INF/struts/tlds/struts-logic.tld
+
+
+ tags-tiles
+ /WEB-INF/struts/tlds/struts-tiles.tld
+
+
+
+
+
+ tags-fmt
+ /WEB-INF/jstl/tlds/fmt.tld
+
+
+ tags-core
+ /WEB-INF/jstl/tlds/c.tld
+
+
+ tags-function
+ /WEB-INF/jstl/tlds/fn.tld
+
+
+ tags-xml
+ /WEB-INF/jstl/tlds/x.tld
+
+
+
+
+
+ fck-editor
+ /WEB-INF/fckeditor/tlds/FCKeditor.tld
+
+
+
+
+
+ tags-lams
+ /WEB-INF/lams.tld
+
+
+
+