add permission to access to payment
prefile webform 11186 with recorded user profile infos
This commit is contained in:
parent
5835745cc2
commit
4756fdaf77
@ -18,6 +18,10 @@ function materio_user_permission() {
|
||||
'title' => t('view own user profile'),
|
||||
'description' => t('view own user profile'),
|
||||
),
|
||||
'access to online payment' => array(
|
||||
'title' => t('access to online payment'),
|
||||
'description' => t('Access to online payment'),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@ -168,8 +172,8 @@ function materio_user_form_alter(&$form, &$form_state, $form_id) {
|
||||
// );
|
||||
|
||||
// $form['#submit'][] = "materio_user_user_register_form_submit";
|
||||
|
||||
}
|
||||
|
||||
if($form_id == "user_login" ){
|
||||
// dsm($form);
|
||||
|
||||
@ -179,25 +183,22 @@ function materio_user_form_alter(&$form, &$form_state, $form_id) {
|
||||
// if( $_GET['q'] == 'node/11187' ){
|
||||
// $form['#submit'][] = "materio_user_user_login_form_submit";
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
# https://drupal.org/comment/6293810#comment-6293810
|
||||
if( $form_id == "webform_client_form_11186" ){
|
||||
// dsm($form, '$form');
|
||||
$form['#validate'][] = "materio_user_webform_client_11186_validate";
|
||||
$form['#submit'][] = "materio_user_webform_client_11186_submit";
|
||||
materio_user_webform_client_11186_form_alter($form, $form_state, $form_id);
|
||||
}
|
||||
|
||||
if( $form_id == "uc_cart_checkout_form" ){
|
||||
materio_user_uc_cart_checkout_form_alter($form, $form_state, $form_id);
|
||||
}
|
||||
|
||||
// if( $form_id == "user_profile_form" ){
|
||||
// //dsm($form, '$form');
|
||||
// $form['account']['pass']['#type'] = "new_password_confirm";
|
||||
// }
|
||||
|
||||
if( $form_id == "uc_cart_checkout_form" ){
|
||||
materio_user_uc_cart_checkout_form_alter($form, $form_state, $form_id);
|
||||
}
|
||||
}
|
||||
|
||||
// function materio_user_user_register_form_submit($form, &$form_state){
|
||||
@ -231,6 +232,45 @@ function materio_user_form_alter(&$form, &$form_state, $form_id) {
|
||||
// );
|
||||
// }
|
||||
|
||||
|
||||
/**
|
||||
* subscription webform (nid : 11186)
|
||||
*/
|
||||
|
||||
# prefill the webform form with user profil values
|
||||
# add validate and submit functions
|
||||
function materio_user_webform_client_11186_form_alter(&$form, &$form_state, $form_id){
|
||||
// dsm($form_id, 'form_id');
|
||||
// dsm($form, "form");
|
||||
// dsm($form_state, "form_state");
|
||||
|
||||
$form['#validate'][] = "materio_user_webform_client_11186_validate";
|
||||
$form['#submit'][] = "materio_user_webform_client_11186_submit";
|
||||
|
||||
global $user;
|
||||
// dsm($user, 'user');
|
||||
|
||||
$member_profile = profile2_load_by_user($user, 'adherent');
|
||||
// dsm($member_profile, "member_profile");
|
||||
|
||||
$columnright = &$form['submitted']['column_right'];
|
||||
$columnright['me']['firstname']['#default_value'] = $member_profile->field_first_name['und'][0]['value'];
|
||||
$columnright['me']['name']['#default_value'] = $member_profile->field_name['und'][0]['value'];
|
||||
$columnright['company']['administrative_e_mail']['#default_value'] = $member_profile->field_administrative_email['und'][0]['value'];
|
||||
$columnright['company']['s']['company']['#default_value'] = $member_profile->field_organization['und'][0]['value'];
|
||||
$columnright['company']['s']['activity_sector']['#default_value'] = $member_profile->field_activity_sector['und'][0]['value'];
|
||||
$columnright['company']['d']['vat_number_intra_ce']['#default_value'] = $member_profile->field_vat_number_intra_ce['und'][0]['value'];
|
||||
$columnright['company']['d']['website']['#default_value'] = $member_profile->field_user_website['und'][0]['url'];
|
||||
|
||||
$address = $member_profile->field_adresse['und'][0];
|
||||
$formaddress = &$columnright['company']['location']['#address'];
|
||||
$formaddress['country'] = $address['country'];
|
||||
$formaddress['thoroughfare'] = $address['thoroughfare'];
|
||||
$formaddress['premise'] = $address['premise'];
|
||||
$formaddress['postal_code'] = $address['postal_code'];
|
||||
$formaddress['locality'] = $address['locality'];
|
||||
}
|
||||
|
||||
function materio_user_webform_client_11186_validate($form, &$form_state){
|
||||
// dsm($form, 'form');
|
||||
// dsm($form_state, 'form_state');
|
||||
@ -272,14 +312,14 @@ function materio_user_webform_client_11186_validate($form, &$form_state){
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* subscription webform (nid : 11186)
|
||||
*
|
||||
* retreive from the web form info, record them into user profil
|
||||
*/
|
||||
function materio_user_webform_client_11186_submit($form, &$form_state){
|
||||
#retreive from the web form info, record them into user profil
|
||||
function materio_user_webform_client_11186_submit(&$form, &$form_state){
|
||||
// dsm($form, 'form');
|
||||
// dsm($form_state, 'form_state');
|
||||
|
||||
$node = &$form['#node'];
|
||||
// dsm($node, '$node');
|
||||
|
||||
$values = $form_state['values']['submitted_tree'];
|
||||
// dsm($values, '$values');
|
||||
|
||||
@ -287,27 +327,39 @@ function materio_user_webform_client_11186_submit($form, &$form_state){
|
||||
materio_user_flatenize_form_values($values, $flat_values);
|
||||
// dsm($flat_values, 'flat_values');
|
||||
|
||||
# redirect membership form to checkout with good option selected
|
||||
$subscription_level = $flat_values['membership_options'];
|
||||
// http://www.ubercart.org/node/1427
|
||||
$form_state['redirect'] = array(
|
||||
'cart/add/e-p11849_q1_a1o'.$subscription_level.'-membershipform',
|
||||
array(
|
||||
'query' => array(
|
||||
'destination' => 'cart/checkout',
|
||||
),
|
||||
// 'fragment' => 'baz',
|
||||
),
|
||||
);
|
||||
|
||||
# records values in member profile
|
||||
materio_user_record_member_profile($flat_values);
|
||||
|
||||
# create collaborators users account incase of membership option is 3
|
||||
# NO wait for checkout for that
|
||||
//materio_user_create_collaborators_users();
|
||||
# redirect membership form to checkout with good option selected
|
||||
if(user_access('access to online payment')){
|
||||
|
||||
// forcer le vidage du panier
|
||||
uc_cart_empty(uc_cart_get_id());
|
||||
|
||||
// fill the cart and redirect to checkout
|
||||
// cf : http://www.ubercart.org/node/1427
|
||||
$subscription_level = $flat_values['membership_options'];
|
||||
$form_state['redirect'] = array(
|
||||
'cart/add/e-p11849_q1_a1o'.$subscription_level.'-membershipform',
|
||||
array(
|
||||
'query' => array(
|
||||
'destination' => 'cart/checkout',
|
||||
),
|
||||
// 'fragment' => 'baz',
|
||||
),
|
||||
);
|
||||
|
||||
// TODO effacer le message de soumissions du formulaire -> pas moyen de overwriter le message de webform depuis ici, dommage
|
||||
// $node->webform['confirmation'] = '';
|
||||
|
||||
# create collaborators users account incase of membership option is 3
|
||||
# NO wait for checkout for that
|
||||
//materio_user_create_collaborators_users();
|
||||
|
||||
// enregistrer le type d'adonnement chez les user
|
||||
|
||||
}
|
||||
|
||||
// enregistrer le type d'adonnement chez les user
|
||||
}
|
||||
|
||||
function materio_user_record_member_profile($values) {
|
||||
@ -423,7 +475,7 @@ function materio_user_uc_cart_checkout_form_alter(&$form, &$form_state, $form_id
|
||||
* Implements hook_uc_order();
|
||||
*/
|
||||
function materio_user_order($op, $order, $arg2) {
|
||||
dsm($op, "matyerio_user_uc_order | op");
|
||||
// dsm($op, "matyerio_user_uc_order | op");
|
||||
// dsm($order, "order");
|
||||
// dsm($arg2, "arg2");
|
||||
|
||||
@ -434,7 +486,6 @@ function materio_user_order($op, $order, $arg2) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# not used yet
|
||||
function materio_user_create_collaborators_users(){
|
||||
|
||||
@ -497,7 +548,6 @@ function materio_user_help($path, $arg) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Implements hook_block_view_alter().
|
||||
*/
|
||||
@ -509,7 +559,6 @@ function materio_user_block_view_alter(&$data, $block) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Define constants
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user