'text', 'attribs' => [ 'placeholder' => 'Company name', 'required' => true ], 'description' => static::get_company_name_description(), ]; $fields['company_street'] = [ 'type' => 'text', 'attribs' => [ 'placeholder' => 'Street', //'required' => true ], 'description' => static::get_company_street_description(), ]; $fields['company_zip'] = [ 'type' => 'text', 'attribs' => [ 'placeholder' => 'Zip', 'required' => true, 'autocomplete' => 'autocomplete_off_hack_xfr4!k' ], ]; $fields['company_city'] = [ 'type' => 'text', 'attribs' => [ 'placeholder' => 'City', //'required' => true ], ]; $fields['company_canton'] = [ 'type' => 'hidden', 'attribs' => [], ]; static::$fields['col1'] = $fields; } return static::$fields['col1']; } public static function get_fields_col2() { if ( empty( static::$fields['col2'] ) ) { $fields = []; $fields['company_purpose'] = [ 'type' => 'textarea', 'attribs' => [ 'placeholder' => 'EN Firmenzweck erfassen', 'maxlength' => 2000, //'required' => true ], 'description' => static::get_company_purpose_description(), ]; static::$fields['col2'] = $fields; } return static::$fields['col2']; } public static function get_fields( $col = 'col1' ) { $method = "get_fields_{$col}"; return static::{$method}(); } public static function sanitize_data( &$data ) { if ( !is_array( $data ) ) { $data = []; } $errors = []; $required_msg = fqp__( '%s is required' ); $wrong_format = fqp__('%s is in wrong format'); foreach ( [ 'col1', 'col2' ] as $col ) { $fields = static::get_fields( $col ); foreach ( $fields as $name => $specs ) { $title = ( ! empty( $specs['label'] ) ) ? $specs['label'] : $specs['attribs']['placeholder']; if ( @$specs['attribs']['required'] && empty( $data[$name] ) ) { $errors[] = esc_html( sprintf( $required_msg, fqp__( $title ) ) ); } else if ( 'company_zip' == $name && ! empty( $data[$name] ) ) { if ( !preg_match( FQP\FQP::NUMERIC_REGEX, $data[$name] ) ) { $errors[] = esc_html( sprintf( $wrong_format, fqp__( $title ) ) ); } else { if ( ! FQP\DB::get_canton_by_zip( $data['company_zip'] ) ) { $errors[] = esc_html( fqp__('Unknown zip code') ); } } } } } return ( empty( $errors ) ) ? true : $errors; } public static function get_filter_fields() { $fields = static::get_fields( 'col1' ) + static::get_fields( 'col2' ); return $fields; } public static function get_company_name_description() { if ( \FQP\FQP::ENTRY_TYPE_SINGLE_COMPANY == static::$entry_type ) { $msg = 'EN Der Familienname der Inhaberin oder des Inhabers bildet zwingend den Hauptbestandteil der Firma (Art. 945 Abs. 1 OR). Jeder Firmenname darf, neben dem vom Gesetz vorgeschriebenen wesentlichen Inhalt, Angaben enthalten, die zur näheren Umschreibung der darin erwähnten Personen dienen, auf die Natur des Unternehmens hinweisen oder eine Fantasiebezeichnung darstellen. Voraussetzung ist, dass der Inhalt des Firmennamens der Wahrheit entspricht, keine Täuschung verursachen kann und keinem öffentlichen Interesse widerspricht (Art. 944 Abs. 1 OR).'; } else { $msg = 'EN Jeder Firmenname darf, neben dem vom Gesetz vorgeschriebenen wesentlichen Inhalt, Angaben enthalten, die zur näheren Umschreibung der darin erwähnten Personen dienen, auf die Natur des Unternehmens hinweisen oder eine Fantasiebezeichnung darstellen. Voraussetzung ist, dass der Inhalt des Firmennamens der Wahrheit entspricht, keine Täuschung verursachen kann und keinem öffentlichen Interesse widerspricht (Art. 944 Abs. 1 OR).'; } return $msg; } public static function get_company_street_description() { $msg = "EN Bitte erfassen Sie die Adresse Ihres in Gründung bestehenden Unternehmens. Die Adresse muss im Zeitpunkt der Handelsregistereintragung bereits existieren und Briefpost ans Unternehmen über dies Adresse muss zustellbar sein. Sofern Sie den Briefkasten nicht mit dem Firmennamen beschriften können müssen Sie eine c/o-Adresse anmelden. Geben Sie in diesem Fall die Adresse bitte analog zum unten stehenden Beispiel an: c/o Muster AG, Teststrasse 1"; return $msg; } public static function get_company_purpose_description() { $msg = 'EN Bitte erfassen Sie die Tätigkeit Ihres Unternehmens. Sie können die Tätigkeit auch stichwortartig erfassen, wir helfen Ihnen gerne bei der Ausformulierung weiter.'; return $msg; } public static function get_company_secondary_purpose() { $msg = ''; if ( ! in_array( static::$entry_type, [ FQP\FQP::ENTRY_TYPE_SINGLE_COMPANY, FQP\FQP::ENTRY_TYPE_COLLECTIVE_COMPANY ] ) ) { $msg = 'EN Die Gesellschaft kann Zweigniederlassungen und Tochtergesellschaften im In- und Ausland errichten und sich an anderen Unternehmen im In- und Ausland beteiligen sowie alle Geschäfte tätigen, die direkt oder indirekt mit ihrem Zweck in Zusammenhang stehen. Die Gesellschaft kann im In- und Ausland Grundeigentum erwerben, belasten, veräussern und verwalten. Sie kann auch Finanzierungen für eigene oder fremde Rechnung vornehmen sowie Garantien und Bürgschaften für Tochtergesellschaften und Dritte eingehen.'; } return $msg; } public static function get_company_secondary_purpose_description() { $msg = 'EN Der Nebenzweck ergibt zusammen mit dem Hauptzweck den Firmenzweck und wird in den Statuten entsprechend wiedergegeben. Der Nebenzweck ergänzt den Hauptzweck (das Tätigkeitsfeld der Gesellschaft) im Hinblick auf allfällige Vorschriften von ausländischen Rechtsordnungen.'; return $msg; } }