at path:
ROOT
/
wp-content
/
plugins
/
optinmonster
/
OMAPI
/
ApiAuth.php
run:
R
W
Run
EasyDigitalDownloads
DIR
2025-12-13 10:18:03
R
W
Run
Elementor
DIR
2025-12-13 10:18:03
R
W
Run
Integrations
DIR
2025-12-13 10:18:03
R
W
Run
MemberPress
DIR
2025-12-13 10:18:02
R
W
Run
Plugins
DIR
2025-12-13 10:18:03
R
W
Run
Promos
DIR
2025-12-13 10:18:03
R
W
Run
Rules
DIR
2025-12-13 10:18:02
R
W
Run
Shortcodes
DIR
2025-12-13 10:18:03
R
W
Run
WPForms
DIR
2025-12-13 10:18:02
R
W
Run
WooCommerce
DIR
2025-12-13 10:18:02
R
W
Run
Actions.php
6.96 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Ajax.php
1.46 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Api.php
14.17 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ApiAuth.php
2.41 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ApiKey.php
5.08 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
AssetLoader.php
5.59 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
BaseRestApi.php
6.65 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Blocks.php
12.81 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ClassicEditor.php
6.92 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
ConstantContact.php
7.42 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Debug.php
4.35 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
EasyDigitalDownloads.php
9.33 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Elementor.php
5.36 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Inserter.php
11.29 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
InstallSkin.php
1.35 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
InstallSkinCompat.php
1.36 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
MailPoet.php
13.36 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
MemberPress.php
4.12 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Menu.php
16.88 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Notifications.php
18.47 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
OmuApi.php
4.03 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Output.php
24.28 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Pages.php
17.61 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Partners.php
5.43 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Plugins.php
24.34 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Promos.php
1.11 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Refresh.php
5.75 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
RestApi.php
38.58 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
RevenueAttribution.php
2.97 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Review.php
1.45 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Rules.php
23.44 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Save.php
10.8 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Shortcode.php
3.58 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Sites.php
8.35 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Support.php
8.25 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Type.php
2.44 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Urls.php
8.64 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Utils.php
7.41 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Validate.php
9.06 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
WPForms.php
2.6 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Welcome.php
4.81 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
Widget.php
6.5 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
WooCommerce.php
19.58 KB
2025-11-20 19:51:54
R
W
Run
Delete
Rename
WpErrorException.php
714 By
2025-11-20 19:51:54
R
W
Run
Delete
Rename
error_log
up
📄
ApiAuth.php
Save
<?php /** * Api Auth class. * * @since 2.6.5 * * @package OMAPI * @author Justin Sternberg */ // Exit if accessed directly. if ( ! defined( 'ABSPATH' ) ) { exit; } /** * Api Auth class. * * @since 2.6.5 */ class OMAPI_ApiAuth { /** * Get the auth token from the DB.. * * @since 2.6.5 * * @return array Auth token array. */ public static function get_token() { return get_option( 'optinmonster_site_token', array( 'expires' => 0, 'tt' => '', ) ); } /** * Check if token exists in DB. * * @since 2.6.5 * * @return boolean Whether it exists. */ public static function has_token() { $token = self::get_token(); return ! empty( $token['expires'] ) && ! empty( $token['tt'] ); } /** * Get the tt value from the auth token (or generate the auth token). * * @since 2.6.5 * * @return string The tt value from the auth token. */ public static function get_tt() { $token = self::get_token(); if ( empty( $token['tt'] ) ) { // if TT is empty, generate a new one, save it and then return it. $token = array( 'expires' => time() + ( 2 * MINUTE_IN_SECONDS ), 'tt' => self::generate_tt(), ); update_option( 'optinmonster_site_token', $token ); } return $token['tt']; } /** * Generate the tt value (long random string). * * @since 2.6.5 * * @return string Tt value. */ public static function generate_tt() { return hash( 'sha512', wp_generate_password( 128, true, true ) . AUTH_SALT . uniqid( '', true ) ); } /** * Validate whether given tt value matches auth token tt value, * and whether the auth token has expired. * * @since 2.6.5 * * @param string $passed_tt The tt value to validate. * * @return bool Whether tt value is validated with the token. */ public static function validate_token( $passed_tt = '' ) { if ( empty( $passed_tt ) ) { return false; } $token = self::get_token(); if ( empty( $token ) ) { return false; } $expired = ! empty( $token['expires'] ) ? $token['expires'] < time() : true; $tt = ! empty( $token['tt'] ) ? $token['tt'] : ''; $matches = hash_equals( $tt, $passed_tt ); return $matches && ! $expired; } /** * Delete the auth token. * * @since 2.6.5 * * @return bool True if the option was deleted, false otherwise. */ public static function delete_token() { return delete_option( 'optinmonster_site_token' ); } }