'', 'api_key' => '', 'email' => '', 'credits' => 0, 'folder' => 'wordpress', 'resize' => true, 'max_width' => 2000, 'max_height' => 2000, 'thumbnails' => true, 'min_size' => 15, 'jpeg' => true, 'png' => true, 'gif' => true, 'svg' => true, 'webp' => true, 'upload' => false ); return $defaults; } function validate_abraia_settings($input) { $input['resize'] = ($input['resize'] == 1) ? 1 : 0; $input['thumbnails'] = ($input['thumbnails'] == 1) ? 1 : 0; $input['jpeg'] = ($input['jpeg'] == 1) ? 1 : 0; $input['png'] = ($input['png'] == 1) ? 1 : 0; $input['gif'] = ($input['gif'] == 1) ? 1 : 0; $input['svg'] = ($input['svg'] == 1) ? 1 : 0; $input['webp'] = ($input['webp'] == 1) ? 1 : 0; $input['upload'] = ($input['upload'] == 1) ? 1 : 0; return $input; } function get_abraia_settings() { return get_option('abraia_settings'); } function set_abraia_settings($settings) { global $abraia; $abraia->setId($settings['userid']); $abraia->setKey($settings['api_key']); $abraia->setFolder($settings['folder']); } function check_abraia_settings() { $settings = get_abraia_settings(); if (!$settings['userid'] && $settings['api_key']) { set_abraia_settings($settings); $user = get_abraia_user(); $settings = get_abraia_settings(); } return $settings; } function get_abraia_user() { global $abraia; $settings = get_abraia_settings(); try { set_abraia_settings($settings); if ($settings['api_key']) { $user = $abraia->user(); $user['credits'] = max($user['credits'], 0); } $settings['userid'] = $user['id']; $settings['email'] = $user['email']; $settings['credits'] = $user['credits']; } catch (\Exception $e) { if ($e->getCode() == 401) { $settings['api_key'] = ''; $settings['userid'] = ''; $settings['email'] = ''; $settings['credits'] = 0; } } update_option('abraia_settings', $settings); return $user; } function abraia_settings_page() { $user = get_abraia_user(); $settings = get_abraia_settings(); ?>