LINUX.ORG.RU

Javascript + Bitrix API

 , ,


0

1

Помогите сделать парсинг JSON и сделать редирект в скрипте расширения для браузера Chrome пожалуйста!

Говорят это просто для салабонов и новичков но видимо я и до того-то не дорос :-(

Есть расширение вылетает форма с кнопками, функция

t.prototype.makeNotFoundCallButtons = function () {
var t,
e;
return t = [],
e = "phone=" + encodeURIComponent(this.call.entityPhone),
e += "&title=" + encodeURIComponent(this.call.source) + " " + "(" + encodeURIComponent(this.call.entityPhone) + ")",
e += "&address=" + encodeURIComponent(this.call.source),
t.push({
title: "Создать контакт",
url: this.config.bitrix_domain + "/crm/contact/edit/0/?" + e
}),
t.push({
title: "Создать лид",
url: this.config.bitrix_domain + "/crm/lead/edit/0/?" + e
}),
t.push({
title: "Записать лид",
url: this.config.bitrix_domain + "/crm/configs/import/lead.php?LOGIN=admin&PASSWORD=qwerty&TITLE="+ encodeURIComponent(this.call.source) + " " + "(" + encodeURIComponent(this.call.entityPhone) + ")"+"&PHONE_WORK="+ encodeURIComponent(this.call.entityPhone)+"&SOURCE_ID="+ encodeURIComponent(this.call.source) +""
}), 
t.push({
title: "Создать компанию",
url: this.config.bitrix_domain + "/crm/company/edit/0/?" + e
}),
t
},
Конкретно тут срабатывает это
t.push({
title: "Записать лид",
url: this.config.bitrix_domain + "/crm/configs/import/lead.php?LOGIN=admin&PASSWORD=qwerty&TITLE="+ encodeURIComponent(this.call.source) + " " + "(" + encodeURIComponent(this.call.entityPhone) + ")"+"&PHONE_WORK="+ encodeURIComponent(this.call.entityPhone)+"&SOURCE_ID="+ encodeURIComponent(this.call.source) +""}),

В ответ Bitrix отсылает на голой белой странице JSON типа

{
'error':'201',
'ID':'18117',
'error_message':'Лид добавлен',
'AUTH':'f5e7f34d3b78f1964cb452cf835c40e'} 

Тут нам нужен только 'ID':'18117'

Собственно нам нужно в ответ сразу сформировать ссылку типа this.config.bitrix_domain+'/crm/lead/edit/18117

Как бы вырисовывается что то типа

var response="{'error':'201','ID':'18202','error_message':'Лид добавлен','AUTH':'11bc63a3a64d79dbdcd5cf8e389526c'}";
try{
	response=JSON.parse(response);
	window.location.href=this.config.bitrix_domain+'/crm/lead/edit/'+response.ID+'/';

} catch(e){
	if(!!window.console && !!console.error)
		console.error(e);
	
	alert('Произошла ошибка');
}

Но как его интегрировать правильно в выше указанную функцию и как спарсить собственно JSON ответ от Битрикса..?

★

Последнее исправление: skynetyar (всего исправлений: 1)

LOGIN=admin&PASSWORD=Fktyf07062014

anonymous
()
Ответ на: комментарий от conformist

Если честно не понял JSON.parse как там оперирует?

skynetyar ★
() автор топика
Ответ на: комментарий от Sorcus

Разумеется,это все равно тестовые данные используемые на тестовом а не рабочем сервере.

skynetyar ★
() автор топика

Что так тухло что никто не поможет?

skynetyar ★
() автор топика

Ребятки, ну хоть мысли напишите!?

skynetyar ★
() автор топика
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.