Sindbad~EG File Manager

Current Path : /home/mkk2new/public_html/wp-content/plugins/GravityForms-master/
Upload File :
Current File : /home/mkk2new/public_html/wp-content/plugins/GravityForms-master/database.php

<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

class GFPersian_DB_ZarinPal {

	private static $method = 'zarinpal';

	public static function update_table() {

		global $wpdb;

		$table_name = self::get_table_name();

		$old_table = $wpdb->prefix . "rg_zarinpal";
		if ( $wpdb->get_var( "SHOW TABLES LIKE '$old_table'" ) ) {
			$wpdb->query( "RENAME TABLE $old_table TO $table_name" );
		}

		$charset_collate = '';
		if ( ! empty( $wpdb->charset ) ) {
			$charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
		}
		if ( ! empty( $wpdb->collate ) ) {
			$charset_collate .= " COLLATE $wpdb->collate";
		}

		$feed = "CREATE TABLE IF NOT EXISTS $table_name (
              id mediumint(8) unsigned not null auto_increment,
              form_id mediumint(8) unsigned not null,
              is_active tinyint(1) not null default 1,
              meta longtext,
              PRIMARY KEY  (id),
              KEY form_id (form_id)
		)$charset_collate;";

		require_once( ABSPATH . '/wp-admin/includes/upgrade.php' );
		dbDelta( $feed );
	}

	public static function get_table_name() {
		global $wpdb;

		return $wpdb->prefix . "gf_zarinpal";
	}

	public static function get_entry_table_name() {

		$version = GFCommon::$version;
		if ( method_exists( 'GFFormsModel', 'get_database_version' ) ) {
			$version = GFFormsModel::get_database_version();
		}

		return version_compare( $version, '2.3-dev-1', '<' ) ? GFFormsModel::get_lead_table_name() : GFFormsModel::get_entry_table_name();
	}

	public static function drop_tables() {
		global $wpdb;
		$wpdb->query( "DROP TABLE IF EXISTS " . self::get_table_name() );
	}

	public static function get_available_forms() {
		$forms           = RGFormsModel::get_forms();
		$available_forms = array();
		foreach ( $forms as $form ) {
			$available_forms[] = $form;
		}

		return $available_forms;
	}

	public static function get_feed( $id ) {
		global $wpdb;
		$table_name = self::get_table_name();
		$sql        = $wpdb->prepare( "SELECT id, form_id, is_active, meta FROM $table_name WHERE id=%d", $id );
		$results    = $wpdb->get_results( $sql, ARRAY_A );
		if ( empty( $results ) ) {
			return array();
		}
		$result         = $results[0];
		$result["meta"] = maybe_unserialize( $result["meta"] );

		return $result;
	}

	public static function get_feeds() {
		global $wpdb;
		$table_name      = self::get_table_name();
		$form_table_name = RGFormsModel::get_form_table_name();
		$sql             = "SELECT s.id, s.is_active, s.form_id, s.meta, f.title as form_title
                FROM $table_name s
                INNER JOIN $form_table_name f ON s.form_id = f.id";
		$results         = $wpdb->get_results( $sql, ARRAY_A );
		$count           = sizeof( $results );
		for ( $i = 0; $i < $count; $i ++ ) {
			$results[ $i ]["meta"] = maybe_unserialize( $results[ $i ]["meta"] );
		}

		return $results;
	}

	public static function get_feed_by_form( $form_id, $only_active = false ) {
		global $wpdb;
		$table_name    = self::get_table_name();
		$active_clause = $only_active ? " AND is_active=1" : "";
		$sql           = $wpdb->prepare( "SELECT id, form_id, is_active, meta FROM $table_name WHERE form_id=%d $active_clause", $form_id );
		$results       = $wpdb->get_results( $sql, ARRAY_A );
		if ( empty( $results ) ) {
			return array();
		}
		$count = sizeof( $results );
		for ( $i = 0; $i < $count; $i ++ ) {
			$results[ $i ]["meta"] = maybe_unserialize( $results[ $i ]["meta"] );
		}

		return $results;
	}

	public static function update_feed( $id, $form_id, $is_active, $setting ) {
		global $wpdb;
		$table_name = self::get_table_name();
		$setting    = maybe_serialize( $setting );
		if ( $id == 0 ) {
			$wpdb->insert( $table_name, array(
				"form_id"   => $form_id,
				"is_active" => $is_active,
				"meta"      => $setting
			), array( "%d", "%d", "%s" ) );
			$id = $wpdb->get_var( "SELECT LAST_INSERT_ID()" );
		} else {
			$wpdb->update( $table_name, array(
				"form_id"   => $form_id,
				"is_active" => $is_active,
				"meta"      => $setting
			), array( "id" => $id ), array( "%d", "%d", "%s" ), array( "%d" ) );
		}

		return $id;
	}

	public static function delete_feed( $id ) {
		global $wpdb;
		$table_name = self::get_table_name();
		$wpdb->query( $wpdb->prepare( "DELETE FROM $table_name WHERE id=%s", $id ) );
	}

	//----جمع پرداخت های  این درگاه این فرم----------
	public static function get_transaction_totals( $form_id ) {
		global $wpdb;
		$entry_table_name = self::get_entry_table_name();
		$sql              = $wpdb->prepare( " SELECT l.status, sum(l.payment_amount) revenue, count(l.id) transactions
                                 FROM {$entry_table_name} l
                                 WHERE l.form_id=%d AND l.status=%s AND l.is_fulfilled=%d AND l.payment_method=%s
                                 GROUP BY l.status", $form_id, 'active', 1, self::$method );
		$results          = $wpdb->get_results( $sql, ARRAY_A );
		$totals           = array();
		if ( is_array( $results ) ) {
			foreach ( $results as $result ) {
				$totals[ $result["status"] ] = array(
					"revenue"      => empty( $result["revenue"] ) ? 0 : $result["revenue"],
					"transactions" => empty( $result["transactions"] ) ? 0 : $result["transactions"]
				);
			}
		}

		return $totals;
	}

	//-----جمع پرداخت های  همه فرمهای این درگاه-----------
	public static function get_transaction_totals_this_gateway() {
		global $wpdb;
		$entry_table_name = self::get_entry_table_name();
		$sql              = $wpdb->prepare( " SELECT l.status, sum(l.payment_amount) revenue, count(l.id) transactions
                                 FROM {$entry_table_name} l
                                 WHERE l.status=%s AND l.is_fulfilled=%d AND l.payment_method=%s
                                 GROUP BY l.status", 'active', 1, self::$method );
		$results          = $wpdb->get_results( $sql, ARRAY_A );
		$totals           = array();
		if ( is_array( $results ) ) {
			foreach ( $results as $result ) {
				$totals[ $result["status"] ] = array(
					"revenue"      => empty( $result["revenue"] ) ? 0 : $result["revenue"],
					"transactions" => empty( $result["transactions"] ) ? 0 : $result["transactions"]
				);
			}
		}

		return $totals;
	}

	//-----جمع پرداخت های  همه روشهای این فرم---------------
	public static function get_transaction_totals_gateways( $form_id ) {
		global $wpdb;
		$entry_table_name = self::get_entry_table_name();
		$sql              = $wpdb->prepare( " SELECT l.status, sum(l.payment_amount) revenue, count(l.id) transactions
                                 FROM {$entry_table_name} l
                                 WHERE l.form_id=%d AND l.status=%s AND l.is_fulfilled=%d
                                 GROUP BY l.status", $form_id, 'active', 1 );
		$results          = $wpdb->get_results( $sql, ARRAY_A );
		$totals           = array();
		if ( is_array( $results ) ) {
			foreach ( $results as $result ) {
				$totals[ $result["status"] ] = array(
					"revenue"      => empty( $result["revenue"] ) ? 0 : $result["revenue"],
					"transactions" => empty( $result["transactions"] ) ? 0 : $result["transactions"]
				);
			}
		}

		return $totals;
	}

	//-----جمع کل پرداخت های همه فرمهای سایت-------------
	public static function get_transaction_totals_site() {
		global $wpdb;
		$entry_table_name = self::get_entry_table_name();
		$sql              = $wpdb->prepare( " SELECT l.status, sum(l.payment_amount) revenue, count(l.id) transactions
                                 FROM {$entry_table_name} l
                                 WHERE l.status=%s AND l.is_fulfilled=%d
                                 GROUP BY l.status", 'active', 1 );
		$results          = $wpdb->get_results( $sql, ARRAY_A );
		$totals           = array();
		if ( is_array( $results ) ) {
			foreach ( $results as $result ) {
				$totals[ $result["status"] ] = array(
					"revenue"      => empty( $result["revenue"] ) ? 0 : $result["revenue"],
					"transactions" => empty( $result["transactions"] ) ? 0 : $result["transactions"]
				);
			}
		}

		return $totals;
	}

}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists