You are here

private function InstapageCmsPluginAjaxController::loadEditPage in Instapage plugin 8.3

Same name and namespace in other branches
  1. 7.3 core/InstapageCmsPluginAjaxController.php \InstapageCmsPluginAjaxController::loadEditPage()

Loads edit page.

1 call to InstapageCmsPluginAjaxController::loadEditPage()
InstapageCmsPluginAjaxController::doAction in core/InstapageCmsPluginAjaxController.php
Executes an action set in the request.

File

core/InstapageCmsPluginAjaxController.php, line 244

Class

InstapageCmsPluginAjaxController
Main controller for AJAX actions. Results are returned as encoded JSON objects. Data for actions are stored in $_POST['data'] table.

Code

private function loadEditPage() {
  $api = InstapageCmsPluginAPIModel::getInstance();
  $subaccount = InstapageCmsPluginSubaccountModel::getInstance();
  $post = InstapageCmsPluginHelper::getPostData();
  InstapageCmsPluginHelper::writeDiagnostics($post, 'Edit page POST');
  $tokens = isset($post->apiTokens) ? $post->apiTokens : false;
  if (!$tokens) {
    $tokens = $subaccount
      ->getAllTokens();
  }
  $pageData = null;
  $subAccounts = null;
  $data = array();
  if (isset($post->data->id)) {
    $pageData = $post->data;
    $data['pages'] = array(
      $post->data->instapage_id,
    );
  }
  $headers = array(
    'accountkeys' => InstapageCmsPluginHelper::getAuthHeader($tokens),
  );
  $response = json_decode($api
    ->apiCall('page/get-sub-accounts-list', $data, $headers));
  if (InstapageCmsPluginHelper::checkResponse($response)) {
    $subAccounts = $response->data;
  }
  else {
    return false;
  }
  $initialData = array(
    'subAccounts' => $subAccounts,
    'page' => $pageData,
  );
  InstapageCmsPluginHelper::writeDiagnostics($initialData, 'Edit page initialData');
  echo json_encode((object) array(
    'status' => 'OK',
    'html' => InstapageCmsPluginHelper::loadTemplate('edit', false),
    'data' => (object) $initialData,
  ));
}