Ця функція в основному генерує унікальні випадкові ключі API, і якщо його немає, з'являється спливаюче діалогове вікно з повідомленням про помилку
На сторінці перегляду:
<div class="form-group required">
<label class="col-sm-2 control-label" for="input-storename"><?php echo $entry_storename; ?></label>
<div class="col-sm-6">
<input type="text" class="apivalue" id="api_text" readonly name="API" value="<?php echo strtoupper(substr(md5(rand().microtime()), 0, 12)); ?>" class="form-control" />
<button type="button" class="changeKey1" value="Refresh">Re-Generate</button>
</div>
</div>
<script>
$(document).ready(function(){
$('.changeKey1').click(function(){
debugger;
$.ajax({
url :"index.php?route=account/apiaccess/regenerate",
type :'POST',
dataType: "json",
async:false,
contentType: "application/json; charset=utf-8",
success: function(data){
var result = data.sync_id.toUpperCase();
if(result){
$('#api_text').val(result);
}
debugger;
},
error: function(xhr, ajaxOptions, thrownError) {
alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
}
});
});
});
</script>
Від контролера:
public function regenerate(){
$json = array();
$api_key = substr(md5(rand(0,100).microtime()), 0, 12);
$json['sync_id'] = $api_key;
$json['message'] = 'Successfully API Generated';
$this->response->addHeader('Content-Type: application/json');
$this->response->setOutput(json_encode($json));
}
Необов'язковий параметр зворотного виклику визначає функцію зворотного виклику, яку потрібно запустити після завершення методу load (). Функція зворотного дзвінка може мати різні параметри:
Тип: Функція (jqXHR jqXHR, String textStatus, String errorThrown)
Функція, яку потрібно викликати, якщо запит не працює. Функція отримує три аргументи: об’єкт jqXHR (в jQuery 1.4.x, XMLHttpRequest), рядок, що описує тип помилки, що виникає, і необов'язковий об'єкт виключення, якщо такий стався. Можливими значеннями другого аргументу (крім нульового) є "timeout", "error", "abort" та "parsererror". Коли виникає помилка HTTP, errorThrown отримує текстову частину статусу HTTP, наприклад "Не знайдено" або "Помилка внутрішнього сервера". Станом на jQuery 1.5, налаштування помилок може приймати масив функцій. Кожна функція буде викликана по черзі. Примітка: Цей обробник не викликається для міждоменного скрипту та міждоменних запитів JSONP.