+ Verantwortlich für die Datenverarbeitung ist die {COOP_NAME},{" "} + {COOP_STREET}, {COOP_PLACE}. Erreichbar unter contact@supercoop.de. Der + Name, die Anschrift und das Geburtsdatum werden für die Mitgliederliste + der Genossenschaft benötigt (Art. 6 Absatz 1 c DS-GVO i.V.m. §30 Absatz + 2 Satz 1 Nr.1 GenG). Über die Adresse oder die E-Mail-Adresse werden Sie + von der Genossenschaft zu Versammlungen eingeladen (Art. 6 Absatz 1c + DS-GVO i.V.m §46 Absatz 1 Satz 1 GenG i.V.m. §6 Nr.4 GenG) und im Rahmen + der Mitgliedschaft über Angebote der Genossenschaft informiert (Art.6 + Absatz 1 b DS-GVO i.V.m. §1 Absatz 1 GenG i.V.m. der Satzung). Die + Genossenschaft hat ein berechtigtes Interesse an einer unkomplizierten + und rechtssicheren Erfüllung ihrer Verbindlichkeiten. Die Bereitstellung + der personenbezogenen Daten ist gesetzlich bzw. durch die Satzung + vorgeschrieben, die Nichtbereitstellung hätte zur Folge, dass die + Mitgliedschaft nicht zustande kommen kann. +
++ Die personenbezogenen Daten werden nicht an Dritte weitergeleitet, + soweit nicht im Einzelfall dafür eine Einwilligung erteilt wird. Wir + sind allerdings gesetzlich verpflichtet, in einigen Fällen Dritten die + Einsicht in die personenbezogenen Daten zu gewähren. Das betrifft zum + Beispiel andere Mitglieder, den gesetzlichen Prüfungsverband oder + Behörden, insbesondere das Finanzamt. Die Daten werden unterschiedlich + aufbewahrt: Alle steuerlich relevanten Informationen werden zehn Jahre + aufbewahrt (§147 AO). Die Daten in der Mitgliederliste (Name und + Anschrift nach §30 Absatz 2 Satz 1 Nr. 1 GenG) werden auch nach dem + Ausscheiden nicht gelöscht (§30 Absatz 2 Satz 1 Nr. 3 GenG). Sie haben + das Recht auf Auskunft seitens des Verantwortlichen über die + betreffenden personenbezogenen Daten sowie auf Berichtigung oder + Löschung oder auf Einschränkung der Verarbeitung (soweit dem nicht eine + gesetzliche Regelung entgegensteht). Auch kann eine Datenübertragung + angefordert werden, sollte der Unterzeichnende eine Übertragung seiner + Daten an eine dritte Stelle wünschen. Darüber hinaus haben Sie das Recht + auf Beschwerde bei einer Aufsichtsbehörde (Landesbeauftragte für + Datenschutz). +
++ {gettext( + "In accordance with the bylaws and the law, I agree to purchase shares at a price of", + )}{" "} + {SHARE_PRICE}€ + {gettext(" per share, as well as the membership fee of ")} + {MEMBERSHIP_FEE}€ + {gettext( + ", which will be used to cover administrative costs. I agree to transfer ", + )}{" "} + {paymentTotal}€ + {gettext(" in total")}. +
+
+ {gettext("Account Owner")}: {COOP_NAME}
+
+ IBAN: DE98 4306 0967 1121 3790 00
+
+ BIC: GENODEM1GLS
+
+ {gettext("Subject")}:{" "}
+ {[firstName, lastName].join(" ")}: Anteil und Eintrittsgeld
+
+ {gettext("Amount")}: {paymentTotal}€
+
+
+ {gettext( + `Please try again later. If you keep having issues, please contact the Members Office at`, + )}{" "} + + {EMAIL_ADDRESS_MEMBER_OFFICE} + +
+ > + ); +} diff --git a/src/member_registration/Intro.tsx b/src/member_registration/Intro.tsx new file mode 100644 index 000000000..4541838e7 --- /dev/null +++ b/src/member_registration/Intro.tsx @@ -0,0 +1,21 @@ +declare let gettext: (english_text: string) => string; + +export default function Intro() { + return ( +
+
+
+ {gettext(` +Welcome to SuperCoop! We're excited to welcome you as a new member of our cooperative. +Please fill out the form below so we can process your application. +`)} +
++ {gettext( + `We have received your application and will let you know via e-mail once it has been processed. + Should you have any questions about your membership, please write to`, + )}{" "} + + {EMAIL_ADDRESS_MEMBER_OFFICE} + +
+ > + ); +} diff --git a/src/member_registration/constants.ts b/src/member_registration/constants.ts new file mode 100644 index 000000000..c2acdb3ea --- /dev/null +++ b/src/member_registration/constants.ts @@ -0,0 +1,255 @@ +export const SHARE_PRICE = 100; +export const MEMBERSHIP_FEE = 10; +export const COOP_NAME = "SuperCoop Berlin eG"; +export const COOP_STREET = "Oudenarder Straße 16"; +export const COOP_PLACE = "13347 Berlin"; +export const MIN_REGISTRATION_AGE = 18; +export const EMAIL_ADDRESS_MEMBER_OFFICE = "mitglied@supercoop.de"; +export const OTHER_COMMENTS_MAX_LENGTH = 10_000; + +export enum PreferredLanguage { + ENGLISH = "en", + GERMAN = "de", +} + +export const countries = [ + "AD", // "Andorra", + "AE", // "United Arab Emirates", + "AF", // "Afghanistan", + "AG", // "Antigua & Barbuda", + "AI", // "Anguilla", + "AL", // "Albania", + "AM", // "Armenia", + "AN", // "Netherlands Antilles", + "AO", // "Angola", + "AQ", // "Antarctica", + "AR", // "Argentina", + "AS", // "American Samoa", + "AT", // "Austria", + "AU", // "Australia", + "AW", // "Aruba", + "AZ", // "Azerbaijan", + "BA", // "Bosnia and Herzegovina", + "BB", // "Barbados", + "BD", // "Bangladesh", + "BE", // "Belgium", + "BF", // "Burkina Faso", + "BG", // "Bulgaria", + "BH", // "Bahrain", + "BI", // "Burundi", + "BJ", // "Benin", + "BM", // "Bermuda", + "BN", // "Brunei Darussalam", + "BO", // "Bolivia", + "BR", // "Brazil", + "BS", // "Bahama", + "BT", // "Bhutan", + "BV", // "Bouvet Island", + "BW", // "Botswana", + "BY", // "Belarus", + "BZ", // "Belize", + "CA", // "Canada", + "CC", // "Cocos (Keeling) Islands", + "CF", // "Central African Republic", + "CG", // "Congo", + "CH", // "Switzerland", + "CI", // "Ivory Coast", + "CK", // "Cook Iislands", + "CL", // "Chile", + "CM", // "Cameroon", + "CN", // "China", + "CO", // "Colombia", + "CR", // "Costa Rica", + "CU", // "Cuba", + "CV", // "Cape Verde", + "CX", // "Christmas Island", + "CY", // "Cyprus", + "CZ", // "Czech Republic", + "DE", // "Germany", + "DJ", // "Djibouti", + "DK", // "Denmark", + "DM", // "Dominica", + "DO", // "Dominican Republic", + "DZ", // "Algeria", + "EC", // "Ecuador", + "EE", // "Estonia", + "EG", // "Egypt", + "EH", // "Western Sahara", + "ER", // "Eritrea", + "ES", // "Spain", + "ET", // "Ethiopia", + "FI", // "Finland", + "FJ", // "Fiji", + "FK", // "Falkland Islands (Malvinas)", + "FM", // "Micronesia", + "FO", // "Faroe Islands", + "FR", // "France", + "FX", // "France, Metropolitan", + "GA", // "Gabon", + "GB", // "United Kingdom (Great Britain)", + "GD", // "Grenada", + "GE", // "Georgia", + "GF", // "French Guiana", + "GH", // "Ghana", + "GI", // "Gibraltar", + "GL", // "Greenland", + "GM", // "Gambia", + "GN", // "Guinea", + "GP", // "Guadeloupe", + "GQ", // "Equatorial Guinea", + "GR", // "Greece", + "GS", // "South Georgia and the South Sandwich Islands", + "GT", // "Guatemala", + "GU", // "Guam", + "GW", // "Guinea-Bissau", + "GY", // "Guyana", + "HK", // "Hong Kong", + "HM", // "Heard & McDonald Islands", + "HN", // "Honduras", + "HR", // "Croatia", + "HT", // "Haiti", + "HU", // "Hungary", + "ID", // "Indonesia", + "IE", // "Ireland", + "IL", // "Israel", + "IN", // "India", + "IO", // "British Indian Ocean Territory", + "IQ", // "Iraq", + "IR", // "Islamic Republic of Iran", + "IS", // "Iceland", + "IT", // "Italy", + "JM", // "Jamaica", + "JO", // "Jordan", + "JP", // "Japan", + "KE", // "Kenya", + "KG", // "Kyrgyzstan", + "KH", // "Cambodia", + "KI", // "Kiribati", + "KM", // "Comoros", + "KN", // "St. Kitts and Nevis", + "KP", // "Korea, Democratic People's Republic of", + "KR", // "Korea, Republic of", + "KW", // "Kuwait", + "KY", // "Cayman Islands", + "KZ", // "Kazakhstan", + "LA", // "Lao People's Democratic Republic", + "LB", // "Lebanon", + "LC", // "Saint Lucia", + "LI", // "Liechtenstein", + "LK", // "Sri Lanka", + "LR", // "Liberia", + "LS", // "Lesotho", + "LT", // "Lithuania", + "LU", // "Luxembourg", + "LV", // "Latvia", + "LY", // "Libyan Arab Jamahiriya", + "MA", // "Morocco", + "MC", // "Monaco", + "MD", // "Moldova, Republic of", + "MG", // "Madagascar", + "MH", // "Marshall Islands", + "ML", // "Mali", + "MN", // "Mongolia", + "MM", // "Myanmar", + "MO", // "Macau", + "MP", // "Northern Mariana Islands", + "MQ", // "Martinique", + "MR", // "Mauritania", + "MS", // "Monserrat", + "MT", // "Malta", + "MU", // "Mauritius", + "MV", // "Maldives", + "MW", // "Malawi", + "MX", // "Mexico", + "MY", // "Malaysia", + "MZ", // "Mozambique", + "NA", // "Namibia", + "NC", // "New Caledonia", + "NE", // "Niger", + "NF", // "Norfolk Island", + "NG", // "Nigeria", + "NI", // "Nicaragua", + "NL", // "Netherlands", + "NO", // "Norway", + "NP", // "Nepal", + "NR", // "Nauru", + "NU", // "Niue", + "NZ", // "New Zealand", + "OM", // "Oman", + "PA", // "Panama", + "PE", // "Peru", + "PF", // "French Polynesia", + "PG", // "Papua New Guinea", + "PH", // "Philippines", + "PK", // "Pakistan", + "PL", // "Poland", + "PM", // "St. Pierre & Miquelon", + "PN", // "Pitcairn", + "PR", // "Puerto Rico", + "PT", // "Portugal", + "PW", // "Palau", + "PY", // "Paraguay", + "QA", // "Qatar", + "RE", // "Reunion", + "RO", // "Romania", + "RU", // "Russian Federation", + "RW", // "Rwanda", + "SA", // "Saudi Arabia", + "SB", // "Solomon Islands", + "SC", // "Seychelles", + "SD", // "Sudan", + "SE", // "Sweden", + "SG", // "Singapore", + "SH", // "St. Helena", + "SI", // "Slovenia", + "SJ", // "Svalbard & Jan Mayen Islands", + "SK", // "Slovakia", + "SL", // "Sierra Leone", + "SM", // "San Marino", + "SN", // "Senegal", + "SO", // "Somalia", + "SR", // "Suriname", + "ST", // "Sao Tome & Principe", + "SV", // "El Salvador", + "SY", // "Syrian Arab Republic", + "SZ", // "Swaziland", + "TC", // "Turks & Caicos Islands", + "TD", // "Chad", + "TF", // "French Southern Territories", + "TG", // "Togo", + "TH", // "Thailand", + "TJ", // "Tajikistan", + "TK", // "Tokelau", + "TM", // "Turkmenistan", + "TN", // "Tunisia", + "TO", // "Tonga", + "TP", // "East Timor", + "TR", // "Turkey", + "TT", // "Trinidad & Tobago", + "TV", // "Tuvalu", + "TW", // "Taiwan, Province of China", + "TZ", // "Tanzania, United Republic of", + "UA", // "Ukraine", + "UG", // "Uganda", + "UM", // "United States Minor Outlying Islands", + "US", // "United States of America", + "UY", // "Uruguay", + "UZ", // "Uzbekistan", + "VA", // "Vatican City State (Holy See)", + "VC", // "St. Vincent & the Grenadines", + "VE", // "Venezuela", + "VG", // "British Virgin Islands", + "VI", // "United States Virgin Islands", + "VN", // "Viet Nam", + "VU", // "Vanuatu", + "WF", // "Wallis & Futuna Islands", + "WS", // "Samoa", + "YE", // "Yemen", + "YT", // "Mayotte", + "YU", // "Yugoslavia", + "ZA", // "South Africa", + "ZM", // "Zambia", + "ZR", // "Zaire", + "ZW", // "Zimbabwe", + "ZZ", // "Unknown or unspecified country", +]; diff --git a/src/member_registration/form_parts/CompanyInfo.tsx b/src/member_registration/form_parts/CompanyInfo.tsx new file mode 100644 index 000000000..a08ea7662 --- /dev/null +++ b/src/member_registration/form_parts/CompanyInfo.tsx @@ -0,0 +1,27 @@ +import { Form } from "react-bootstrap"; + +declare let gettext: (english_text: string) => string; + +type Props = { + companyName: string; + setCompanyName: React.Dispatch+ {% translate "Not a member yet?" %} {% translate "Become part of SuperCoop" %} +