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
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.