Browse Source

add api for ad postback

master
filesite 1 week ago
parent
commit
611c42f7b8
  1. 56
      themes/tajian/controller/FrontapiController.php
  2. 2
      themes/tajian/views/my/index.php
  3. 28
      www/js/tajian.js

56
themes/tajian/controller/FrontapiController.php

@ -790,16 +790,6 @@ eof; @@ -790,16 +790,6 @@ eof;
$shareUrl = "/{$newUser['username']}/";
$msg = "注册完成,开始收藏你喜欢的视频吧,正在为你跳转到专属网址...";
$code = 1;
//广告跟踪回调
try {
$adTrackPostbackRes = $this->adTrackPostBack();
if (!empty($adTrackPostbackRes) && !empty($adTrackPostbackRes['status']) && $adTrackPostbackRes['status'] != 200) {
$this->logError( "[Register] Ad tracker postback result status {$adTrackPostbackRes['status']}, response: " . json_encode($adTrackPostbackRes['result']) );
}
}catch(Exception $e) {
$this->logError("[Register] Ad tracker postback failed: " . $e->getMessage());
}
}else {
$err = '注册失败,请稍后再试';
}
@ -861,16 +851,6 @@ eof; @@ -861,16 +851,6 @@ eof;
$msg = "登录成功,开始收藏你喜欢的视频吧";
$code = 1;
//广告跟踪回调
try {
$adTrackPostbackRes = $this->adTrackPostBack();
if (!empty($adTrackPostbackRes) && !empty($adTrackPostbackRes['status']) && $adTrackPostbackRes['status'] != 200) {
$this->logError( "[Login] Ad tracker postback result status {$adTrackPostbackRes['status']}, response: " . json_encode($adTrackPostbackRes['result']) );
}
}catch(Exception $e) {
$this->logError("[Login] Ad tracker postback failed: " . $e->getMessage());
}
}else {
$err = '登录失败,请稍后重试';
}
@ -1558,4 +1538,40 @@ eof; @@ -1558,4 +1538,40 @@ eof;
}
//广告跟踪回调,每天只回传1次
public function actionAdpostback() {
//返回给视图的变量
$code = 1;
$msg = 'OK';
$err = '';
try {
if(session_status() !== PHP_SESSION_ACTIVE) {
session_start();
}
$today = date('Ymd');
if (!empty($_SESSION['ad_postback']) && $_SESSION['ad_postback'] == $today) {
$msg = 'Done today';
}else {
$adTrackPostbackRes = $this->adTrackPostBack();
if (!empty($adTrackPostbackRes) && !empty($adTrackPostbackRes['status']) && $adTrackPostbackRes['status'] != 200) {
$this->logError( "Ad tracker postback result status {$adTrackPostbackRes['status']}, response: " . json_encode($adTrackPostbackRes['result']) );
$code = 0;
$err = "[Error] Ad tracker postback result status {$adTrackPostbackRes['status']}";
$msg = '';
}else if (!empty($adTrackPostbackRes) && !empty($adTrackPostbackRes['status']) && $adTrackPostbackRes['status'] == 200) {
$_SESSION['ad_postback'] = $today;
}
}
}catch(Exception $e) {
$this->logError("Ad tracker postback failed: " . $e->getMessage());
$code = 0;
$err = "[Exception] Ad tracker postback failed";
$msg = '';
}
return $this->renderJson(compact('code', 'msg', 'err'));
}
}

2
themes/tajian/views/my/index.php

@ -32,3 +32,5 @@ if (!empty(FSC::$app['config']['multipleUserUriParse']) && !empty(FSC::$app['use @@ -32,3 +32,5 @@ if (!empty(FSC::$app['config']['multipleUserUriParse']) && !empty(FSC::$app['use
</ul>
</div>
</main>
<div class="elementNone ad_postback_JS"><!--Ad track postback trigger--></div>

28
www/js/tajian.js

@ -17,6 +17,8 @@ var taJian = { @@ -17,6 +17,8 @@ var taJian = {
shareFav2Friend: '/frontapi/sharedir', //共享收藏夹给朋友
deleteSharedFav: '/frontapi/delsharedir', //取消共享收藏夹给朋友
adPostback: '/frontapi/adpostback', //广告跟踪回传
sendSmsCode: '/frontapi/sendsmscode', //发送短信验证码
register: '/frontapi/createuser', //注册
login: '/frontapi/loginuser' //登入
@ -24,9 +26,9 @@ var taJian = { @@ -24,9 +26,9 @@ var taJian = {
};
var publicAjax = function(apiUrl, method, datas, callback, fail) {
let self = this;
var self = this;
let Options = {
var Options = {
url: apiUrl,
method: method,
data: datas,
@ -42,9 +44,7 @@ var publicAjax = function(apiUrl, method, datas, callback, fail) { @@ -42,9 +44,7 @@ var publicAjax = function(apiUrl, method, datas, callback, fail) {
$.ajax(Options).done(function(data) {
callback(data);
}).fail(function (jqXHR, textStatus, errorThrown) {
fail(jqXHR, textStatus, errorThrown);
});
};
@ -138,17 +138,18 @@ if ($('#add_video_form').get(0)) { @@ -138,17 +138,18 @@ if ($('#add_video_form').get(0)) {
return false;
}
let bt = $(this), btLoading = bt.children('.bt_class_JS'), btText = bt.children('.bt_text_JS');
var bt = $(this), btLoading = bt.children('.bt_class_JS'), btText = bt.children('.bt_text_JS');
btLoading.removeClass('elementNone');
bt.prop('disabled', true);
btText.text('提交中...');
let datas = {
var datas = {
'content': inputList[0].value,
'tag': selectedTag
}
let apiUrl = taJian.debug ? taJian.domain + taJian.apis.addVideos : taJian.apis.addVideos;
//var apiUrl = taJian.debug ? taJian.domain + taJian.apis.addVideos : taJian.apis.addVideos;
var apiUrl = taJian.apis.addVideos;
publicAjax(apiUrl, 'POST', datas, function (data) {
bt.prop('disabled', false);
btText.text('提交');
@ -159,7 +160,6 @@ if ($('#add_video_form').get(0)) { @@ -159,7 +160,6 @@ if ($('#add_video_form').get(0)) {
}else {
$(inputList[0]).val('');
}
//alert(data.msg || data.err);
} else {
alert(data.err);
}
@ -732,4 +732,16 @@ if ($('#share_dir_form').get(0)) { @@ -732,4 +732,16 @@ if ($('#share_dir_form').get(0)) {
$('.my_share_dirs .btn-del').click(handle_delete_share);
}
// 广告跟踪回传
if ($('.ad_postback_JS').get(0)) {
var datas = {};
publicAjax(taJian.apis.adPostback, 'POST', datas, function (data) {
if (data.code != 1) {
console.error('Ad postback error', data.err);
}
}, function (jqXHR, textStatus, errorThrown) {
console.error('Ad postback exception', errorThrown);
});
}
})();

Loading…
Cancel
Save