head	1.12;
access;
symbols
	TIGRIS_1_1_0RC2:1.7
	TIGRIS_1_1_0RC1:1.7
	TIGRIS_1_1:1.7.0.4
	TIGRIS_1_0_8:1.7
	TIGRIS_1_0_8RC3:1.7
	TIGRIS_1_0_8RC2:1.7
	TIGRIS_1_0_8RC1:1.7
	TIGRIS_1_0_7:1.7
	TIGRIS_1_0_7RC3:1.7
	TIGRIS_1_0_7RC2:1.7
	TIGRIS_1_0_7RC1:1.7
	TIGRIS_1_0_6:1.7
	TIGRIS_1_0_6RC5:1.7
	TIGRIS_1_0_6RC4:1.7
	TIGRIS_1_0_6RC3:1.7
	TIGRIS_1_0_6RC2:1.7
	TIGRIS_1_0_6RC1:1.7
	TIGRIS_1_0_5:1.7
	TIGRIS_1_0_5RC6:1.7
	TIGRIS_1_0_5RC5:1.7
	TIGRIS_1_0_5RC4:1.7
	TIGRIS_1_0_5RC3:1.7
	TIGRIS_1_0_5RC2:1.7
	TIGRIS_1_0_5RC1:1.7
	TIGRIS_1_0_4:1.7
	TIGRIS_1_0_3:1.7
	TIGRIS_1_0_2:1.7
	TIGRIS_1_0_1:1.7
	TIGRIS_1_0:1.7.0.6
	TIGRIS_1_0_0:1.7
	TIGRIS_1_0_0_RC1:1.7.0.2
	dlr:1.1.1
	TIGRIS_0_9_2_4:1.6
	TIGRIS_0_9_2_3:1.6
	HELM_PEER_PORT_BRANCH:1.1.1.2
	TURBINE_PEER:1.6
	TIGRIS_0_9_2_1:1.6
	TIGRIS_0_9_2:1.6.0.6
	TIGRIS_0_9_0:1.6.0.4
	TIGRIS_0_8_4:1.6.0.2
	NEWHELM:1.1.1.1
	TIGRIS_NOV_12_2000:1.1.1;
locks; strict;
comment	@# @;


1.12
date	2001.07.05.22.21.40;	author leonardr;	state Exp;
branches;
next	1.11;

1.11
date	2001.06.18.22.12.21;	author leonardr;	state Exp;
branches;
next	1.10;

1.10
date	2001.05.11.19.38.56;	author leonardr;	state Exp;
branches;
next	1.9;

1.9
date	2001.04.27.22.45.35;	author leonardr;	state Exp;
branches;
next	1.8;

1.8
date	2001.04.27.22.01.31;	author leonardr;	state Exp;
branches;
next	1.7;

1.7
date	2001.02.21.01.08.28;	author dlr;	state Exp;
branches;
next	1.6;

1.6
date	2000.12.03.19.27.33;	author edk;	state Exp;
branches
	1.6.8.1;
next	1.5;

1.5
date	2000.12.02.00.49.46;	author edk;	state Exp;
branches;
next	1.4;

1.4
date	2000.11.22.08.46.14;	author jrobbins;	state Exp;
branches;
next	1.3;

1.3
date	2000.11.15.19.11.49;	author dlr;	state Exp;
branches;
next	1.2;

1.2
date	2000.11.13.02.33.56;	author dlr;	state Exp;
branches;
next	1.1;

1.1
date	2000.11.12.21.17.54;	author dlr;	state Exp;
branches
	1.1.1.1;
next	;

1.1.1.1
date	2000.11.12.21.17.54;	author dlr;	state Exp;
branches;
next	1.1.1.2;

1.1.1.2
date	2001.02.21.00.36.30;	author dlr;	state Exp;
branches;
next	;

1.6.8.1
date	2001.01.31.17.47.04;	author leonardr;	state Exp;
branches;
next	;


desc
@@


1.12
log
@Licenses are now contained in a database-managed table rather than in a custom Java class (yay!)
@
text
@

####################################################
##
## Create a temp table to hold the non-keyed values
##
##

drop table if exists xxxx_populate_Project;
create table xxxx_populate_Project (
  NAME              varchar(64) DEFAULT '' NOT NULL,  
  LICENSE_NAME       varchar(64),
  IS_PUBLIC         char(1),
  SHORT_DESCRIPTION varchar(128),
  LONG_DESCRIPTION  text,
  STATUS            text,
  PROFILE           varchar(11),
  TYPE              varchar(8),
  ALIAS_URL         varchar(128),
  MEMBER_POLICY     integer,
  PROPOSED_BY       varchar(32) NOT NULL,
  APPROVED_BY       varchar(32) NOT NULL
);

insert into xxxx_populate_Project
          ( NAME, 
            LICENSE_NAME, 
            IS_PUBLIC,
            SHORT_DESCRIPTION,
            LONG_DESCRIPTION,
            STATUS, 
            PROFILE,
            TYPE,
            ALIAS_URL,
            MEMBER_POLICY, 
            PROPOSED_BY, 
            APPROVED_BY
          )
VALUES
##########################################################################
# Base projects.
        ( "testproject", #Name
           "GNU GPL",          #License
           "Y",            #Is public
           "Test project for beta test", #short desc
           "This project is a test project in which the test users have various roles.", #longdesc
           "Testing.", #Status
       "development",  #Profile
           "base",         #Type         
           "",             #Alias URL
           2,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

       , ( "www",     #Name
            NULL,          #License
           "N",            #Is public
           "A project for HTML documents and information", #short desc
           "This project contains HTML information for visitors to the site", #longdesc
           "Testing.", #Status
       "development",  #Profile
           "base",         #Type         
           "",             #Alias URL
           2,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

       , ( "look",     #Name
           NULL,          #License
           "N",            #Is public
           "A project for HTML documents and information", #short desc
           "This project branding information used to affect the appearance of the site", #longdesc
           "Initial content.", #Status
       "development",  #Profile
           "base",         #Type         
           "",             #Alias URL
           2,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By
;

##
## now insert the values into the correct table replacing
## names with ids from the corresponding tables
##

#For null licenses
insert into HELM_PROJECT 
          ( NAME,
            LICENSE_ID,
            IS_PUBLIC,
            SHORT_DESCRIPTION,
            LONG_DESCRIPTION,
            STATUS,
            PROFILE,
            TYPE,
            ALIAS_URL,
            MEMBER_POLICY,
            PROPOSED_BY,
            APPROVED_BY
           )
   select Tmp.NAME, 
          NULL,
          Tmp.IS_PUBLIC,
          Tmp.SHORT_DESCRIPTION,
          Tmp.LONG_DESCRIPTION, 
          Tmp.STATUS, 
          Tmp.PROFILE, 
          Tmp.TYPE, 
          Tmp.ALIAS_URL,
      Tmp.MEMBER_POLICY, 
          Proposed.USER_ID, 
          Appoved.USER_ID
     from xxxx_populate_Project as Tmp,
          HELM_USER as Proposed,
          HELM_USER as Appoved
     where Tmp.PROPOSED_BY = Proposed.LOGIN_NAME
       and Tmp.APPROVED_BY = Appoved.LOGIN_NAME
       and Tmp.LICENSE_NAME IS NULL
;

#And for non-null licenses.
insert into HELM_PROJECT 
          ( NAME,
            LICENSE_ID,
            IS_PUBLIC,
            SHORT_DESCRIPTION,
            LONG_DESCRIPTION,
            STATUS,
            PROFILE,
            TYPE,
            ALIAS_URL,
            MEMBER_POLICY,
            PROPOSED_BY,
            APPROVED_BY
           )
   select Tmp.NAME, 
          HELM_LICENSE.LICENSE_ID, 
          Tmp.IS_PUBLIC,
          Tmp.SHORT_DESCRIPTION,
          Tmp.LONG_DESCRIPTION, 
          Tmp.STATUS, 
          Tmp.PROFILE, 
          Tmp.TYPE, 
          Tmp.ALIAS_URL,
      Tmp.MEMBER_POLICY, 
          Proposed.USER_ID, 
          Appoved.USER_ID
     from xxxx_populate_Project as Tmp,
	  HELM_LICENSE,
          HELM_USER as Proposed,
          HELM_USER as Appoved
     where Tmp.PROPOSED_BY = Proposed.LOGIN_NAME
       and Tmp.APPROVED_BY = Appoved.LOGIN_NAME
       and HELM_LICENSE.NAME = Tmp.LICENSE_NAME
;

#drop table xxxx_populate_Project;

@


1.11
log
@Huge patch of the day: Got rid of redundant HELM_DOMAIN table. The project representation of the domain and the host is now the canonical one. Host and Domain now subclass ProjectGroup. The canonical representation of a project's membership in a domain group is now the corresponding mapping in HELM_PROJECT_PROJECTGROUP. Schema changes: No more HELM_DOMAIN table (obviously); no more DOMAIN_ID in HELM_PROJECT; HELM_USER and HELM_VC_VIEW now have foreign keys in HELM_PROJECT instead of HELM_DOMAIN.
@
text
@d12 1
a12 1
  LICENSE           varchar(64),
d27 1
a27 1
            LICENSE, 
d39 1
a39 28
##########################################################################
# Special projects.
  values ( "**HOST",       #Name
           "None",         #License
           "N",            #Is public
           "The host",     #short desc
           "The entire host", #longdesc
           "",             #Status
           "special",      #Profile
           "host",         #Type         
           "",             #Alias URL
           1,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

       , ( "__DOMAIN__",   #Name
           "None",         #License
           "N",            #Is public
           "The __DOMAIN__ domain", #short desc
           "The entire __DOMAIN__ domain", #longdesc
           "",             #Status
           "special",      #Profile
           "domain",       #Type         
           "",             #Alias URL
           2,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

d42 2
a43 2
       , ( "testproject", #Name
           "GPL",          #License
d56 1
a56 1
           "GPL",          #License
d69 1
a69 1
           "GPL",          #License
d86 37
d125 1
a125 1
            LICENSE,
d138 1
a138 1
          Tmp.LICENSE, 
d150 1
d155 1
d158 1
a158 1
drop table xxxx_populate_Project;
@


1.10
log
@A Heartbreaking Patch of Staggering Genius: adds capacity (but no interface) for deeply nested projects, categories, and project groups. As a side effect, gets rid of the hacky special 'all public projects in domain' group. There are probably bugs in this, and some of those bugs are probably security holes, so watch out.
@
text
@a10 1
  DOMAIN_NAME       varchar(255) NOT NULL,
d13 1
a13 1
  IS_PUBLIC        char(1),
d17 2
a18 2
  PROFILE           enum('development', 'discussion', 'category', 'clone', 'special'),
  TYPE              enum('base', 'group', 'category', 'domain', 'host'),
d26 1
a26 2
          ( DOMAIN_NAME, 
            NAME, 
d28 1
a28 1
        IS_PUBLIC,
d32 1
a32 1
        PROFILE,
d41 1
a41 2
  values ( "**HOST",            #Domain
           "**All projects on host",  #Name
d44 2
a45 2
           "All projects on host", #short desc
           "The group holding all projects on this host", #longdesc
d47 1
a47 1
       "special",      #Profile
d54 1
a54 2
       , ( "__DOMAIN__",   #Domain
           "*All projects in domain",  #Name
d57 2
a58 2
           "All projects in __DOMAIN__", #short desc
           "The group holding all projects in __DOMAIN__", #longdesc
d60 1
a60 1
       "special",      #Profile
d69 1
a69 2
       , ( "__DOMAIN__",   #Domain
           "testproject", #Name
d82 1
a82 2
       , ( "__DOMAIN__",   #project for docs and the "default" project (??)
           "www",     #Name
d95 1
a95 2
       , ( "__DOMAIN__",   #project for docs and the "default" project (??)
           "look",     #Name
d114 1
a114 2
          ( DOMAIN_ID,
            NAME,
d120 2
a121 2
        PROFILE,
        TYPE,
d127 1
a127 2
   select Domain.DOMAIN_ID,
          Tmp.NAME, 
a139 1
          HELM_DOMAIN as Domain,
d142 1
a142 2
     where Tmp.DOMAIN_NAME = Domain.NAME 
       and Tmp.PROPOSED_BY = Proposed.LOGIN_NAME
@


1.9
log
@Tabs begone!
@
text
@a70 14
       , ( "__DOMAIN__",   #Domain
           "*All public projects in domain",   #Name
           "None",         #License
           "Y",            #Is public
           "All the public projects in __DOMAIN__", #short desc
           "The group holding all projects in __DOMAIN__", #longdesc
           "",             #Status
       "special",      #Profile
           "domain",       #Type         
           "",             #Alias URL
           2,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

@


1.8
log
@Changes to make use of new IS_PUBLIC field.
@
text
@d30 1
a30 1
	    IS_PUBLIC,
d34 1
a34 1
	    PROFILE,
d50 1
a50 1
	   "special",      #Profile
d64 1
a64 1
	   "special",      #Profile
d78 1
a78 1
	   "special",      #Profile
d94 1
a94 1
	   "development",  #Profile
d108 1
a108 1
	   "development",  #Profile
d122 1
a122 1
	   "development",  #Profile
d142 2
a143 2
	    PROFILE,
	    TYPE,
d159 1
a159 1
	  Tmp.MEMBER_POLICY, 
@


1.7
log
@This is the highest revision from the HELM_PEER_PORT_BRANCH.  The previous import caused too many conflicts to resolve manually
@
text
@d14 1
d30 1
d46 1
d56 1
d60 1
d70 1
d74 1
d90 1
d100 1
d104 1
d114 1
d118 1
d138 1
d152 1
@


1.6
log
@* create look project (needed since site admin needs to be able to control
  access to it to change branding)
* add admin@@{domain} ( or admin@@www.{domain} ) mailing list
* change all default addresses to admin@@{domain}
* add webmaster, postmaster, and mailer-daemon addresses
@
text
@d146 2
a147 2
          Proposed.userID, 
          Appoved.userID
d150 2
a151 2
          User as Proposed,
          User as Appoved
d153 2
a154 2
       and Tmp.PROPOSED_BY = Proposed.loginID
       and Tmp.APPROVED_BY = Appoved.loginID
@


1.6.8.1
log
@correctly capitalized autoIncrement
@
text
@d146 2
a147 2
          Proposed.USER_ID, 
          Appoved.USER_ID
d150 2
a151 2
          HELM_USER as Proposed,
          HELM_USER as Appoved
d153 2
a154 2
       and Tmp.PROPOSED_BY = Proposed.LOGIN_NAME
       and Tmp.APPROVED_BY = Appoved.LOGIN_NAME
@


1.5
log
@remove categories from helm -- they should be in each instanciation
@
text
@d104 12
@


1.4
log
@removed categories that are not generic, games and productivity relate to a specific site build with helm and may not be in others
@
text
@a78 15
# Category projects.
       , ( "__DOMAIN__",   #Domain
           "other",        #Name
           "",             #License
           "Miscellaneous programs.", #short desc
	   "",             #Long desc
           "",             #Status
	   "category",     #Profile
           "category",     #Type         
           "",             #Alias URL
           3,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

##########################################################################
@


1.3
log
@Spelled out the word "document"--looks cleaner in the description
field.
@
text
@a80 26
           "games",        #Name
           "",             #License
           "Games of skill and chance.", #short desc
	   "",             #Long desc
           "",             #Status
	   "category",     #Profile
           "category",     #Type         
           "",             #Alias URL
           3,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

       , ( "__DOMAIN__",   #Domain
           "productivity", #Name
           "",             #License
           "Get work done.", #short desc
	   "",             #Long desc
           "",             #Status
	   "category",     #Profile
           "category",     #Type         
           "",             #Alias URL
           3,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By

       , ( "__DOMAIN__",   #Domain
@


1.2
log
@Removed unnecessary text.
@
text
@d136 1
a136 1
           "A project for HTML docs and information", #short desc
@


1.1
log
@Initial revision
@
text
@d124 1
a124 1
           "Test project for Sourcecast beta test", #short desc
@


1.1.1.1
log
@Merging newhelm tree into helm, as per IZ issue #557.  Previous major version of helm is tagged TIGRIS_NOV_11_2000.
@
text
@@


1.1.1.2
log
@Replacing the HEAD with the HELM_PEER_PORT_BRANCH.
@
text
@d79 41
d124 1
a124 1
           "Test project for beta test", #short desc
d136 1
a136 1
           "A project for HTML documents and information", #short desc
a144 12
       , ( "__DOMAIN__",   #project for docs and the "default" project (??)
           "look",     #Name
           "GPL",          #License
           "A project for HTML documents and information", #short desc
           "This project branding information used to affect the appearance of the site", #longdesc
           "Initial content.", #Status
	   "development",  #Profile
           "base",         #Type         
           "",             #Alias URL
           2,              #Member Policy
           "root",         #Proposed By
           "root")         #Appoved By
d175 2
a176 2
          Proposed.USER_ID, 
          Appoved.USER_ID
d179 2
a180 2
          HELM_USER as Proposed,
          HELM_USER as Appoved
d182 2
a183 2
       and Tmp.PROPOSED_BY = Proposed.LOGIN_NAME
       and Tmp.APPROVED_BY = Appoved.LOGIN_NAME
@

