Last active
December 24, 2015 17:49
-
-
Save zsan/6837885 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# ONLY ALLOW REGISTER WHEN SIGNED OUT | |
if ($v{'user_id'} ne '') { | |
# PAGE TELLING USER TO SIGN OUT | |
} else { | |
# THERE ARE 2 POSSIBILITIES HERE | |
# 1. NEW USER AND WE"RE GOING TO PROVIDE THEM REGISTRATION FORM | |
# 2. SUBMITTED PARAMETERS FROM USER REGISTRATION FORM | |
# AND WE'RE GOING TO PROVIDE THEM CHECKBOXES TO SUBSCRIBE, | |
# SO THEY CAN BE A SUBSCRIBER | |
# NEW USER THAT HAS SUBMITTED THE FORM AND GOING TO SET SUBSCRIPTIONS | |
if ($f{email} && $f{password} && $f{confirm_password} && $f{profession_id} && $f{specialty_id} && $f{name_first} && $f{name_last}) { | |
# REGISTRATION ATTEMPT DETECTED | |
# PROCESS SUBMITTED INFORMATION! | |
my $register = &call_api($url); | |
$v{'response'} = $register->{response}; | |
# IF SUCCESS IS RETURNED FROM API'S CALL | |
if ($v{'response'} eq '1') { | |
# REGISTRATION SUCCESSFUL | |
# AT THIS POINT, USER HAS FILLED THE FORM AND INFORMATION WAS SUBMITTED. | |
# - THAT'S NOT MEAN USER WILL AUTOMATICALLY SIGNED IN AS SIGNED USER | |
# - BUT THE APPLICATION STILL NEED TO KNOW IF USER WANT TO SUBSCRIBE | |
# TO SOME AVAILABLE SUBSCRIPTIONS. | |
# - AND WE WILL PROVIDE THIS FEATURE VIA CHECKBOXES AND AJAX REQUEST | |
# - TO ACHIVE THAT, WE HAVE TO KNOW USER AUTH KEY | |
# (REMEMBER USER IS "STILL" ANONYMOUS USER) | |
# SO WE ARE DEPENDING ON THEIR SUBMITTED PASSWORD AND EMAIL | |
# SO LETS LOGIN VIA API'S CALL | |
my $xml_login = api_login({ | |
email => $f{email}, | |
password => $f{password} | |
}); | |
# WE ARE GOING TO PUSH CHECKBOXES TO THIS ARRAY | |
my @collections = (); | |
# IF LOGIN SUCCESS | |
if ($xml_login) { | |
# GET AUTH_KEY AND USER_ID | |
my $auth_key = $xml_login->{auth_key}[0]; | |
my $user_id = $xml_login->{user_id}[0]; | |
# I HAVE TO CHECK IF USER IS ALREADY SUBSCRIBED | |
# ITS WEIRD BUT MAYBE, I'LL HAVE SOME EXPLANATIONS LATER)) | |
# GET USER COLLECTIONS VIA API'S CALL | |
my $user_subscription = api_get_user_subscriptions({ | |
user_id => $user_id, | |
auth_key => $auth_key, | |
}); | |
my %user_collection_id; | |
# SOME CODE AFTER THIS IS ABOUT TO COLLECT USER SUBSCRIPTION | |
# AND PUT THEM INTO HASH %user_collection_id | |
# GET AVAILABLE COLLECTIONS | |
my $xml_collection = api_get_collections($collection_param); | |
# IF SUCCESS | |
if ($xml_collection) { | |
@collections = map { | |
# COMPARE %user_collection_id to | |
# IF THEY ALREADY SUBSCRIBED THEN SET CHECKBOX TO OFF | |
} @$xml_collection; | |
}; | |
# SHOW THE CHECKBOXES TO USER | |
$v{'page_content'} = qq{ CONTAIN CHECK BOXES FOR USER}; | |
} else { | |
# SO FAR I AM NOT SURE WHICH WAY TO GO | |
# I GUESS I'LL JUST SEND USER TO FINAL PAGE (REGISTRATION COMPLETED) | |
} | |
} else { | |
# IF REGISTRATION FAILED | |
# BACK TO FIRST THE FORM | |
} | |
} | |
# PUMP OUT REGISTRATION PAGE | |
# GET OPTIONS FOR DROP DOWN MENUS | |
# AT THIS STAGE ONLY NON SIGNED USER SHOULD GO HERE AND DO THE FIRST STEP | |
# OF REGISTRATION'S PROCESSES | |
$v{'page_content'} = qq{ FORM STEP #1 and #2 };} unless $v{'page_content'} ne ''; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment