Ma van Budapesten a híres Ez ez a nap! Én itthon vagyok, most kivételesen nem mentem el rá.
Bocsánat, kedves Barátaim és fenntartók, ha ez most kicsit technikai lesz, de most ilyet csinálok az evangelizációért. :)
Csütörtökön, amint írtam előzőleg tehát nekiestem a CRM Core modul tanulmányozásának. Egész megörültem neki, mert nagyon kis ügyes dolog, de délutánra rájöttem, hogy nem fogom tudni alkalmazni. Egyedül a kapcsolatok modult tudtam volna belőle használni, a többi két típus nem jó arra, amire nekünk kellene. Úgyhogy este elkezdtem egy másik csomagot tesztelni a RedHen-t. Este már úgy feküdtem le közi után, hogy talán ebből lesz valami.
Pénteken tehát a RedHen-t teszteltem. Egész jó. Lehet vele kezelni a résztevevőket, munkatársakat. A jelentkezést is pöpecül meg lehet vele oldani. Kapcsolatokat lehet létrehozni a csoportok és a személyek között (iskolaközösség és munkatárs) és a tagságot is lehet vele kezelni, amely lejártjával a jogkör is megváltozik. Ezen kívül plusz jó, hogy támogatja a kötegelt importálást. Mivel entitás alapú simán lehet belőle exportálni is adat. Automatikusan összekapcsolja a Drupal felhasználókat a személyekkel (contact) az email címük alapján. Szóval, 90%, hogy ezt fogom használni. :)
Tegnap két hiányosságot fedeztem fel. Szóltam a fejlesztőknek, az egyiket már sikerült is megoldani. Regisztrációor automatikusan hozzon létre felhasználói adatlapot és kapcsolja össze a Drupal felhasználóval. Rules modul. Ma tanultam. Reggel úgy néztem a modulra, mint akihez kínaiul beszélnek, de aztán csak összehoztam. Logikus:
{ "rules_auto_create_contact" : { "LABEL" : "Create contact on create new account", "PLUGIN" : "reaction rule", "TAGS" : [ "contact" ], "REQUIRES" : [ "rules" ], "ON" : [ "user_insert" ], "IF" : [ { "data_is" : { "data" : [ "account:field-auto-create-account" ], "value" : 1 } } ], "DO" : [ { "entity_create" : { "USING" : { "type" : "redhen_contact", "param_type" : "volunteer", "param_first_name" : "[account:name]", "param_last_name" : "[account:name]", "param_redhen_state" : "1" }, "PROVIDE" : { "entity_created" : { "entity_created" : "Created entity" } } } }, { "data_set" : { "data" : [ "entity-created:redhen-contact-email:0:value" ], "value" : "[account:mail]" } }, { "data_set" : { "data" : [ "entity-created:user" ], "value" : [ "account" ] } } ] } }
Vagyis, ha regisztráció történik (on user_insert) és a regisztráció folyamán a regisztráló még nem volt kurzuson (field-auto-create-account értéke 1), akkor hozzon létre egy új kontaktot (itt önkéntes a típusa), a nevét adja meg a felhasználói névből az email címét a regisztrációkor megadottból, végül a kontakt felhasználói mezőjébe írja be a regisztrált felhasználó azonosítóját.
Még meg kell oldanom a másik problémát is, ami a nevekkel kapcsolatos.
Tegnap este meghoztam a döntést: a Bandisták megy a kukába. Vagyis a munkatársi adatokat nem ott fogom létrehozni, hanem a Szent András oldalon. A Bandisták addig él, amíg az adatait át nem hozom emide. Szóval tegnap elkezdtem felkészíteni az oldalt a változásokra, vagyis megcsináltam, amit nem sikerült tavaly befejezni: új ikonokat készítettem, mert néhány hiányzott, elkészítettem a címkék szép megjelenítését (egy mezőbe összegyűjteni három taxonómia kifejezéseit), aztán a megjegyzések lettek még szépek és a beküldő űrlapok is kicsit szebbek lettek. Jön egy biztonsági mentés és kezdem az RedHen bekötését. Ha valamit elszúrok, azt észre fogjátok venni :).
Valahol mindig bántott, hogy ebbe a projektbe kétszer is beletört a bicskám, sohasem készült el. Most nagyon remélem, sikerül összehozni. Az öröm az, hogy amikor először megírtam a dokumentációt hozzá, sehol se voltak ezek a modulok. Most vannak, ma van esély rá. Úgy élem meg: Isten kerülő utat választott, hogy megvalósulhasson az egységes elektronikus adminisztráció.
Végül, itt az taxonómia kifejezéseket összegyűjtő EVA views mező kódja (Views modul):
$view = new view(); $view->name = 'teszt_taxonomia'; $view->description = ''; $view->tag = 'default'; $view->base_table = 'node'; $view->human_name = 'Taxonómia kifejezések összegyűjtése egy mezőbe (Kurzusmeghívó, Írás, Tanúságtétel)'; $view->core = 7; $view->api_version = '3.0'; $view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */ /* Display: Master */ $handler = $view->new_display('default', 'Master', 'default'); $handler->display->display_options['title'] = 'Kapcsolódó taxonómia kifejezések'; $handler->display->display_options['use_more_always'] = FALSE; $handler->display->display_options['use_more_text'] = 'tovább'; $handler->display->display_options['access']['type'] = 'perm'; $handler->display->display_options['cache']['type'] = 'none'; $handler->display->display_options['query']['type'] = 'views_query'; $handler->display->display_options['exposed_form']['type'] = 'basic'; $handler->display->display_options['exposed_form']['options']['submit_button'] = 'Alkalmazás'; $handler->display->display_options['exposed_form']['options']['reset_button_label'] = 'Alaphelyzet'; $handler->display->display_options['exposed_form']['options']['exposed_sorts_label'] = 'Rendezés'; $handler->display->display_options['exposed_form']['options']['sort_asc_label'] = 'Növekvő'; $handler->display->display_options['exposed_form']['options']['sort_desc_label'] = 'Csökkenő'; $handler->display->display_options['pager']['type'] = 'full'; $handler->display->display_options['pager']['options']['expose']['items_per_page_label'] = 'Elemek száma oldalanként'; $handler->display->display_options['pager']['options']['expose']['items_per_page_options_all_label'] = '- Mind -'; $handler->display->display_options['pager']['options']['expose']['offset_label'] = 'Eltolás'; $handler->display->display_options['pager']['options']['tags']['first'] = '« első'; $handler->display->display_options['pager']['options']['tags']['previous'] = '‹ előző'; $handler->display->display_options['pager']['options']['tags']['next'] = 'következő ›'; $handler->display->display_options['pager']['options']['tags']['last'] = 'utolsó »'; $handler->display->display_options['style_plugin'] = 'default'; $handler->display->display_options['style_options']['default_row_class'] = FALSE; $handler->display->display_options['style_options']['row_class_special'] = FALSE; $handler->display->display_options['row_plugin'] = 'fields'; $handler->display->display_options['row_options']['inline'] = array( 'name' => 'name', 'name_2' => 'name_2', 'name_1' => 'name_1', ); $handler->display->display_options['row_options']['separator'] = ','; $handler->display->display_options['row_options']['hide_empty'] = TRUE; /* Kapcsolat: Tartalom: Konkrét kurzusok (taxonomy_vocabulary_8) */ $handler->display->display_options['relationships']['taxonomy_vocabulary_8_tid']['id'] = 'taxonomy_vocabulary_8_tid'; $handler->display->display_options['relationships']['taxonomy_vocabulary_8_tid']['table'] = 'field_data_taxonomy_vocabulary_8'; $handler->display->display_options['relationships']['taxonomy_vocabulary_8_tid']['field'] = 'taxonomy_vocabulary_8_tid'; /* Kapcsolat: Tartalom: Kurzustípusok (taxonomy_vocabulary_11) */ $handler->display->display_options['relationships']['taxonomy_vocabulary_11_tid']['id'] = 'taxonomy_vocabulary_11_tid'; $handler->display->display_options['relationships']['taxonomy_vocabulary_11_tid']['table'] = 'field_data_taxonomy_vocabulary_11'; $handler->display->display_options['relationships']['taxonomy_vocabulary_11_tid']['field'] = 'taxonomy_vocabulary_11_tid'; /* Kapcsolat: Tartalom: Tartalom (fő kategória) (taxonomy_vocabulary_1) */ $handler->display->display_options['relationships']['taxonomy_vocabulary_1_tid']['id'] = 'taxonomy_vocabulary_1_tid'; $handler->display->display_options['relationships']['taxonomy_vocabulary_1_tid']['table'] = 'field_data_taxonomy_vocabulary_1'; $handler->display->display_options['relationships']['taxonomy_vocabulary_1_tid']['field'] = 'taxonomy_vocabulary_1_tid'; /* Mező: Taxonómia kifejezés: Név */ $handler->display->display_options['fields']['name']['id'] = 'name'; $handler->display->display_options['fields']['name']['table'] = 'taxonomy_term_data'; $handler->display->display_options['fields']['name']['field'] = 'name'; $handler->display->display_options['fields']['name']['relationship'] = 'taxonomy_vocabulary_1_tid'; $handler->display->display_options['fields']['name']['label'] = ''; $handler->display->display_options['fields']['name']['element_label_colon'] = FALSE; $handler->display->display_options['fields']['name']['link_to_taxonomy'] = TRUE; /* Mező: Taxonómia kifejezés: Név */ $handler->display->display_options['fields']['name_2']['id'] = 'name_2'; $handler->display->display_options['fields']['name_2']['table'] = 'taxonomy_term_data'; $handler->display->display_options['fields']['name_2']['field'] = 'name'; $handler->display->display_options['fields']['name_2']['relationship'] = 'taxonomy_vocabulary_11_tid'; $handler->display->display_options['fields']['name_2']['label'] = ''; $handler->display->display_options['fields']['name_2']['element_label_colon'] = FALSE; $handler->display->display_options['fields']['name_2']['link_to_taxonomy'] = TRUE; /* Mező: Taxonómia kifejezés: Név */ $handler->display->display_options['fields']['name_1']['id'] = 'name_1'; $handler->display->display_options['fields']['name_1']['table'] = 'taxonomy_term_data'; $handler->display->display_options['fields']['name_1']['field'] = 'name'; $handler->display->display_options['fields']['name_1']['relationship'] = 'taxonomy_vocabulary_8_tid'; $handler->display->display_options['fields']['name_1']['label'] = ''; $handler->display->display_options['fields']['name_1']['element_label_colon'] = FALSE; $handler->display->display_options['fields']['name_1']['link_to_taxonomy'] = TRUE; /* Szövegkörnyezeti szűrő: Tartalomváltozat: Tartalom azonosító */ $handler->display->display_options['arguments']['nid']['id'] = 'nid'; $handler->display->display_options['arguments']['nid']['table'] = 'node_revision'; $handler->display->display_options['arguments']['nid']['field'] = 'nid'; $handler->display->display_options['arguments']['nid']['default_action'] = 'default'; $handler->display->display_options['arguments']['nid']['exception']['title'] = 'Mind'; $handler->display->display_options['arguments']['nid']['default_argument_type'] = 'node'; $handler->display->display_options['arguments']['nid']['summary']['number_of_records'] = '0'; $handler->display->display_options['arguments']['nid']['summary']['format'] = 'default_summary'; $handler->display->display_options['arguments']['nid']['summary_options']['items_per_page'] = '25'; /* Szűrési feltétel: Tartalom: Közzétéve */ $handler->display->display_options['filters']['status']['id'] = 'status'; $handler->display->display_options['filters']['status']['table'] = 'node'; $handler->display->display_options['filters']['status']['field'] = 'status'; $handler->display->display_options['filters']['status']['value'] = 1; $handler->display->display_options['filters']['status']['group'] = 1; $handler->display->display_options['filters']['status']['expose']['operator'] = FALSE; /* Szűrési feltétel: Tartalom: Típus */ $handler->display->display_options['filters']['type']['id'] = 'type'; $handler->display->display_options['filters']['type']['table'] = 'node'; $handler->display->display_options['filters']['type']['field'] = 'type'; $handler->display->display_options['filters']['type']['value'] = array( 'meghivo' => 'meghivo', 'tanusagtetel' => 'tanusagtetel', 'story' => 'story', ); /* Display: EVA Field */ $handler = $view->new_display('entity_view', 'EVA Field', 'entity_view_1'); $handler->display->display_options['entity_type'] = 'node'; $handler->display->display_options['bundles'] = array( 0 => 'meghivo', 1 => 'tanusagtetel', 2 => 'story', ); $translatables['teszt_taxonomia'] = array( t('Master'), t('Kapcsolódó taxonómia kifejezések'), t('tovább'), t('Alkalmazás'), t('Alaphelyzet'), t('Rendezés'), t('Növekvő'), t('Csökkenő'), t('Elemek száma oldalanként'), t('- Mind -'), t('Eltolás'), t('« első'), t('‹ előző'), t('következő ›'), t('utolsó »'), t('kifejezés ebből: taxonomy_vocabulary_8'), t('kifejezés ebből: taxonomy_vocabulary_11'), t('kifejezés ebből: taxonomy_vocabulary_1'), t('Mind'), t('EVA Field'), );
- Jóbel blogja
- Hozzászólás regisztráció és belépés után
Friss hozzászólások