/* * Перед рендерингом формы свойств поля добавляем в нее требуемый checkbox * */ function i18ncck_form_alter(&$form, $form_state, $form_id) { if (($form['form_id']['#value'] == 'content_field_edit_form') && (variable_get('i18n_node_' . $form['type_name']['#value'], FALSE))) { $i18ncck = array( '#type' => 'checkbox', '#title' => t('Language independent values'), '#default_value' => variable_get('i18ncck_' . $form['field_name']['#value'] , FALSE), ); /* * Указываем дополнительный обработчик формы функцию _i18ncck_field_submit() * */ if(isset($form['field'])) { $form['field'] = array_merge(array('i18ncck' => $i18ncck), $form['field']); $form['#submit'][] = '_i18ncck_field_submit'; } } } function _i18ncck_field_submit($form, &$form_state) { /* * Если флажок выставлен сохраняем уникальную переменную для каждого поля, * если нет – удаляем ее. * */ if (isset($form_state['values']['i18ncck']) && $form_state['values']['i18ncck']) { variable_set('i18ncck_' . $form_state['values']['field_name'], TRUE); } else { variable_del( 'i18ncck_' . $form_state['values']['field_name']); } } /* * При подтверждении формы редактирования материала обрабатываются * два случая: вставка и обновление. * */ function i18ncck_nodeapi(&$node, $op, $a3, $a4) { if ( variable_get('i18n_node_' . $node->type, FALSE)) { switch ($op){ /* * Получаем исходный по языку материал и все его переводы. * Проходим по циклу все поля, если для него указана многоязычность - * загружаем все переводы, присваиваем введенное значение поля и сохраняем их. * */ case 'update': $translations = translation_node_get_translations($node->tnid); foreach( content_fields() as $field) { $field = $field['field_name']; if ( variable_get('i18ncck_' . $field, FALSE) && isset($node->tnid)) { foreach($translations as $lang){ if($node->nid!=$lang->nid) { $i18n_node = node_load($lang->nid); $i18n_node->$field = $node->$field; node_save($i18n_node); unset($i18n_node); } } } } break; /* * От случая обновления отличается только способом получения NID исходного перевода * */ case 'insert': if(isset($node->translation_source->nid)) { $translations = translation_node_get_translations($node->translation_source->nid); foreach(content_fields() as $field) { $field = $field['field_name']; foreach( $translations as $translation) { $i18n_node = node_load($translation->nid); $i18n_node->$field = $node->$field; node_save($i18n_node); unset($i18n_node); } } } break; } } } Registrado | Tutmonda Esperanto-adresaro

Registrado

Dankon, ke vi volas registriĝi. Nun ekzistas du eblecoj. Vi povas registriĝi kiel „Simpatianto de Esperanto Internacia“ (senkoste) aŭ kiel „Amiko“. Se vi volas registriĝi kiel „Simpatianto“ tio estas tute senkosta kaj vi povas plene uzi la adresaron. Esti „Amiko de la fondaĵo Esperanto Internacia“ tamen donas kelkajn avantaĝojn:
  • Vi povas plene vidi ĉiujn kontaktinformojn (se la uzantoj tion permesas), kiel ekz. stratadreson, telefonon, skajpkonton kaj aliajn.
  • Vi havos aliron al speciala sekcio por “Amikoj” (nun ankoraŭ ne kreita).
  • Vi povas vidi kaj kontakti personojn, kiuj ne parolas Esperanton, sed donas servojn, kiel ekzemple senkostajn tranokteblecojn aŭ urbogvidadon.
  • Vi subtenas la agadon de Esperanto Internacia, do ĉefe la Esperanto-informadon kaj la Esperanto-instruadon.
  • Vi fariĝos plena membro de internacia komunumo.
  • La kotizoj de Esperanto Internacia estas tre moderaj. Se vi loĝas en Aŭstralio, Eŭropa Unio (ĉiuj landoj sen Bulgario, Rumanio), Islando, Israelo, Japanio, Kanado, Norvegio, Novzelando, Suda Koreio, Svislando, Usono vi en la baza kategorio A nur pagas 25,00 EUR jare (por 12 monatoj).

    La kotizo B (por aliaj landoj krom afrikaj landoj) estas: 15,00 EUR. La kotizo por afrikaj landoj C estas: 10,00 EUR. Tamen personoj el ĉiuj landoj povas peti aliĝon je reduktita tarifo aŭ eĉ senkostan. Pri detaloj kontaktu la adminstran fakon de Esperanto Internacia je la adreso: administrado@adresaro.org

    Daŭrigu la registriĝon