Index: /gli/trunk/src/org/greenstone/gatherer/collection/BasicCollectionConfiguration.java
===================================================================
--- /gli/trunk/src/org/greenstone/gatherer/collection/BasicCollectionConfiguration.java	(revision 16266)
+++ /gli/trunk/src/org/greenstone/gatherer/collection/BasicCollectionConfiguration.java	(revision 16267)
@@ -56,4 +56,5 @@
     private String name = "";
     private String is_public = "";
+    private String collectgroup = "false";
     
     private String site = null; // used for gs3 colls
@@ -95,4 +96,7 @@
 			else if(command_type_str.equals(StaticStrings.COLLECTIONMETADATA_MAINTAINER_STR)) {
 			    maintainer = tokenizer.nextToken();
+			}
+			else if(command_type_str.equals(StaticStrings.COLLECTIONMETADATA_COLLECTGROUP_STR)) {
+			    collectgroup = tokenizer.nextToken();
 			}
 			else if(command_type_str.equalsIgnoreCase(StaticStrings.COLLECTIONMETADATA_STR)) {
@@ -228,4 +232,8 @@
 	return is_public;
     }
+
+    public String getCollectGroup() {
+	return collectgroup;
+    }
     
     /** Retrieve the short name for this collection which, given this current file is in <col_name>/etc/collect.cfg, is the name of this file's parent file's parent.
Index: /gli/trunk/src/org/greenstone/gatherer/collection/ScriptOptions.java
===================================================================
--- /gli/trunk/src/org/greenstone/gatherer/collection/ScriptOptions.java	(revision 16266)
+++ /gli/trunk/src/org/greenstone/gatherer/collection/ScriptOptions.java	(revision 16267)
@@ -252,10 +252,10 @@
 		Process process = runtime.exec(args);
 
-		/*
+		
 		for (int i=0; i<args.length; i++) { 
 		    System.err.print(args[i] + " ");
 		}
 		System.err.println("");
-		*/
+		
 
 
Index: /gli/trunk/src/org/greenstone/gatherer/gui/OpenCollectionDialog.java
===================================================================
--- /gli/trunk/src/org/greenstone/gatherer/gui/OpenCollectionDialog.java	(revision 16266)
+++ /gli/trunk/src/org/greenstone/gatherer/gui/OpenCollectionDialog.java	(revision 16267)
@@ -253,8 +253,18 @@
 		return;
 	    }
+
+	    load_collection_configs(data,collect_directory);
+
+	}
+
+
+	protected void load_collection_configs(TreeSet data, File collect_directory) {
+
  	    File[] collection_folders = collect_directory.listFiles();
+
 	    for(int i = 0; i < collection_folders.length; i++) {
 		File collection_folder = collection_folders[i];
 		String collection_foldername = collection_folder.getName();
+
 		if(collection_folder.isDirectory() && !collection_foldername.equals(StaticStrings.MODEL_COLLECTION_NAME)) {
 		    // this 'file_name' has already been prefixed by 'etc'
@@ -267,10 +277,18 @@
 		    }
 		    
-		    //String file_name = (Gatherer.GS3)? Utility.CONFIG_GS3_FILE : Utility.CONFIG_FILE;
 		    File config_file = new File(collection_folder, file_name);
 		    File collection_metadata_directory = new File(collection_folder, "metadata");
 		    if (collection_metadata_directory.exists() && config_file.exists()) {
 			BasicCollectionConfiguration collection_configuration = new BasicCollectionConfiguration(config_file);
-			data.add(collection_configuration);
+
+			// look to see if group set?
+			// => if it is, don't add, but recurse to look for child collections in collect-group
+
+			if (collection_configuration.getCollectGroup().equals("true")) {
+			    load_collection_configs(data, collection_folder);
+			}
+			else {
+			    data.add(collection_configuration);
+			}
 		    }
 		    config_file = null;
@@ -282,4 +300,6 @@
 	    collect_directory = null;
 	}
+
+
 
 	public Object getElementAt(int index) {
Index: /gli/trunk/src/org/greenstone/gatherer/util/StaticStrings.java
===================================================================
--- /gli/trunk/src/org/greenstone/gatherer/util/StaticStrings.java	(revision 16266)
+++ /gli/trunk/src/org/greenstone/gatherer/util/StaticStrings.java	(revision 16267)
@@ -73,4 +73,5 @@
     static final public String COLLECTIONMETADATA_PUBLIC_ELEMENT = "Public";
     static final public String COLLECTIONMETADATA_PUBLIC_STR = "public";
+    static final public String COLLECTIONMETADATA_COLLECTGROUP_STR = "collectgroup";
     static final public String COLLECTIONMETADATA_STR = "collectionmeta";
     static final public String COLON_CHARACTER = ":";
