protected function execute() {
		Pap3Compatibility_Migration_OutputWriter::logOnce("Migrating affiliates<br/>");

		if($this->isPending('migrateAffiliatesTaskHeader')) {
			$_SESSION['parentIds'] = array();
			$_SESSION['userIds'] = array();
			$_SESSION['usersForParentIds'] = array();

			$this->deleteAffiliates();
    		$this->setDone();
    	}
    	$time1 = microtime();

    	$this->loadAffiliateSettings();

    	if($this->isPending('migrateAffiliatesTask')) {
    	    try {
    	        $this->migrateAffiliateFields();
    	    } catch (Exception $e) {
    	        Pap3Compatibility_Migration_OutputWriter::log("&nbsp;&nbsp; errror migrate affiliate fields: ".$e->getMessage()."<br/>");
    	    }
			$this->migrateInitialPayoutSetting();
    		$this->setDone();
   		} else {
	   		$this->loadAffiliateFields();
   		}

   		$this->migrateAffiliates();

    	$time2 = microtime();
		Pap3Compatibility_Migration_OutputWriter::logDone($time1, $time2);
    }
    public function run() {
    	$time1 = microtime();
    	Pap3Compatibility_Migration_OutputWriter::logOnce("Deleting migrated data from existing PAP4 tables<br/>");

    	try {
    		$this->deleteTable(Pap_Db_Table_Campaigns::getName());
    		$this->deleteTable(Pap_Db_Table_CommissionGroups::getName());
    		$this->deleteTable(Pap_Db_Table_CommissionTypes::getName());
    		$this->deleteTable(Pap_Db_Table_Commissions::getName());
    		$this->deleteTable(Pap_Db_Table_UserInCommissionGroup::getName());
    		
    		$this->deleteTable(Gpf_Db_Table_FormFields::getName());
    		$this->deleteTable(Gpf_Db_Table_FieldGroups::getName());
    		
    		$this->deleteTable(Pap_Db_Table_Transactions::getName());
    		$this->deleteTable(Pap_Db_Table_Clicks::getName());
    		$this->deleteTable(Pap_Db_Table_RawClicks::getName());
    		$this->deleteTable(Pap_Db_Table_Impressions::getName());

    		$this->deleteTable(Pap_Db_Table_Banners::getName());
    		
    		$this->deleteTable(Gpf_Db_Table_FieldGroups::getName());
    		$this->deleteTable(Pap_Db_Table_PayoutsHistory::getName());
    		$this->deleteTable(Pap_Db_Table_Payouts::getName());
    		
    		$this->deleteTable(Gpf_Db_Table_Currencies::getName());
    		$this->deleteTable(Gpf_Db_Table_MailAccounts::getName());
    		
    	} catch(Exception $e) {
    		Pap3Compatibility_Migration_OutputWriter::log("&nbsp;&nbsp;Errror: ".$e->getMessage()."<br/>");
    	}

    	$time2 = microtime();
		Pap3Compatibility_Migration_OutputWriter::logDone($time1, $time2);
    }
    public function execute() {
		Pap3Compatibility_Migration_OutputWriter::logOnce("Migrating transactions<br/>");

   		$time1 = microtime();

    	$this->migrateCommissions();
    	$this->migrateClicks();
    	$this->migrateImpressions();

    	$time2 = microtime();
		Pap3Compatibility_Migration_OutputWriter::logDone($time1, $time2);
    }
    public function run() {
    	Pap3Compatibility_Migration_OutputWriter::log("Migrating banners<br/>");
    	$time1 = microtime();
    	
    	try {
    		$this->migrateBanners();
    	} catch(Exception $e) {
    		Pap3Compatibility_Migration_OutputWriter::log("&nbsp;&nbsp;Errror: ".$e->getMessage()."<br/>");
    	}
    	
    	$time2 = microtime();
		Pap3Compatibility_Migration_OutputWriter::logDone($time1, $time2);
    }
 public function run() {
 	echo "Migrating settings<br/>";
 	$time1 = microtime();
 	
 	try {
 		$this->loadPap3Settings();
 		$this->migrateDefaultCampaign();
 		$this->migrateGeneralSettings();
 	} catch(Exception $e) {
 		echo "&nbsp;&nbsp;Errror: ".$e->getMessage()."<br/>";
 	}
 	
 	$time2 = microtime();
 	Pap3Compatibility_Migration_OutputWriter::logDone($time1, $time2);
 }
  public function run() {
  	echo "Migrating payouts<br/>";
 	
  	$time1 = microtime();
  	
  	try {
  		$this->migratePayoutOptions();
  		$this->migratePayoutOptionFields();
  		$this->migratePayoutHistory();
  		$this->migratePayouts();
  	} catch(Exception $e) {
  		echo "&nbsp;&nbsp;Errror: ".$e->getMessage()."<br/>";
  	}
  	
  	$time2 = microtime();
  	Pap3Compatibility_Migration_OutputWriter::logDone($time1, $time2);
  }
    public function run() {
    	Pap3Compatibility_Migration_OutputWriter::logOnce("Migrating campaigns<br/>");
    	$time1 = microtime();

    	try {
    		$this->loadCampaignSettings();
    		$this->migrateCampaigns();
    		$this->insertReferralCommissionType();
    		$this->migrateGroupsTypesCommissions();
    		$this->createDefaultCommissionTypes();
    		$this->migrateUsersInCampaigns();
    	} catch(Exception $e) {
    		Pap3Compatibility_Migration_OutputWriter::log("&nbsp;&nbsp;Errror: ".$e->getMessage()."<br/>");
    	}

    	$time2 = microtime();
		Pap3Compatibility_Migration_OutputWriter::logDone($time1, $time2);
    }