// Return filter data
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!');
- //* NOISY-DEBUG: */ print __FUNCTION__.':filterData=<pre>'.print_r($filterData,true).'</pre>';
+ //* NOISY-DEBUG: */ print __FUNCTION__.':filterData=<pre>'.print_r($filterData,TRUE).'</pre>';
return $filterData;
}
// Return filter data
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!');
- //* NOISY-DEBUG: */ print __FUNCTION__.':filterData=<pre>'.print_r($filterData,true).'</pre>';
+ //* NOISY-DEBUG: */ print __FUNCTION__.':filterData=<pre>'.print_r($filterData,TRUE).'</pre>';
return $filterData;
}
return $filterData;
}
+// Generic filter for updating referral counter of currently detected referral id
+function FILTER_GENERIC_UPDATE_USER_REFERRAL ($filterData) {
+ // Make sure the referral id is detected
+ assert(isReferralIdValid());
+
+ // Update ref counter, determineReferralId() must already be called before this filter is executed
+ SQL_QUERY('UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `ref_clicks`=`ref_clicks`+1 WHERE `userid`={%pipe,getReferralId%} LIMIT 1', __FUNCTION__, __LINE__);
+
+ // Return filter data
+ return $filterData;
+}
+
+// Filter for updating sub id records
+function FILTER_UPDATE_USER_SUBID ($filterData) {
+ // Make sure the referral id is detected
+ assert(isReferralIdValid());
+
+ // Get sub id and secure it
+ $subId = SQL_ESCAPE(getRequestElement('subid'));
+
+ // Is the sub id available and registered with referral id?
+ if (countSumTotalData(getReferralId(), 'user_subids', 'id', 'userid', TRUE, sprintf(" AND `subid`='%s'", $subId)) == 1) {
+ // Sub id is assigned to referral id, so add a record
+ SQL_QUERY_ESC("INSERT INTO
+ `{?_MYSQL_PREFIX?}_subid_log`
+(
+ `refid`,
+ `subid`,
+ `referral_url`,
+ `remote_address`,
+ `user_agent`
+) VALUES (
+ {%%pipe,getReferralId%%},
+ '%s',
+ '{%%pipe,detectReferer%%}',
+ '{%%pipe,detectRemoteAddr%%}',
+ '{%%pipe,detectUserAgent%%}'
+)",
+ array(
+ // @NOTE: SQL_QUERY_ESC() already escape it, don't use $subId here
+ getRequestElement('subid')
+ ), __FUNCTION__, __LINE__);
+
+ // Add insert id for other filters
+ $filterData['insert_id'] = SQL_INSERTID();
+
+ // Register sub id in filter
+ setSession('subid', $subId);
+ } // END - if
+
+ // Return filter data
+ return $filterData;
+}
+
+// Filter for adding member action
+function FILTER_ADD_USER_SUBID_MEMBER_ACTION ($filterData) {
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!');
+ // Add entry
+ array_push($filterData, 'list_user_subid');
+
+ // Return data
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!');
+ return $filterData;
+}
+
+// Filter for rendering content for sub id listing in what=reflinks
+function FILTER_MEMBER_REFLINK_USER_SUBIDS_CONTENT ($content = '') {
+ // Do this only for members
+ assert(isMember());
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!');
+
+ // Does the current user have sub ids?
+ if (getTotalMemberSubIds() > 0) {
+ // Then Load all
+ $result = SQL_QUERY_ESC('SELECT `id`, `subid` FROM `{?_MYSQL_PREFIX?}_user_subids` WHERE `userid`=%s ORDER BY `subid` ASC',
+ array(getMemberId()), __FUNCTION__, __LINE__);
+
+ // There should be entries left
+ assert(!SQL_HASZERONUMS($result));
+
+ // Load all
+ $out = '';
+ while ($row = SQL_FETCHARRAY($result)) {
+ // Load row template
+ $out .= loadTemplate('member_list_reflink_user_subids_row', TRUE, $row);
+ } // END - while
+
+ // Load main template
+ $content .= loadTemplate('member_list_reflink_user_subids', TRUE, $out);
+
+ // Free result
+ SQL_FREERESULT($result);
+ } // END - if
+
+ // Return data
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!');
+ return $content;
+}
+
// [EOF]
?>