prepare(' (SELECT round(sum('.$wpdb->prefix.'ap_transaction.Commission),2) as commission, round(sum('.$wpdb->prefix.'ap_transaction.Confirmed), 2) as confirmed, '.$wpdb->posts.'.ID AS postID, if (postID = -1, "- Startseite -", ifnull('.$wpdb->posts.'.post_title, "- unbekannt -")) as name FROM '.$wpdb->prefix.'ap_transaction LEFT JOIN '.$wpdb->prefix.'ap_clickout ON '.$wpdb->prefix.'ap_transaction.SubId = '.$wpdb->prefix.'ap_clickout.ap_clickoutID LEFT JOIN '.$wpdb->posts.' ON '.$wpdb->prefix.'ap_clickout.postID = '.$wpdb->prefix.'posts.ID WHERE '.$wpdb->prefix.'ap_transaction.SubId >= 1000000 AND TransactionStatus <> "Cancelled" AND date BETWEEN %s and %s GROUP BY name ) UNION (SELECT round(sum('.$wpdb->prefix.'ap_transaction.Commission),2) as commission, round(sum('.$wpdb->prefix.'ap_transaction.Confirmed), 2) as confirmed, '.$wpdb->posts.'.ID AS postID, ifnull('.$wpdb->posts.'.post_title, "- unbekannt -") as name FROM '.$wpdb->prefix.'ap_transaction LEFT JOIN '.$wpdb->posts.' ON '.$wpdb->prefix.'ap_transaction.SubId = '.$wpdb->prefix.'posts.ID WHERE '.$wpdb->prefix.'ap_transaction.SubId < 1000000 AND TransactionStatus <> "Cancelled" AND date BETWEEN %s and %s GROUP BY name ) ORDER BY commission DESC LIMIT 12', $date_from_db, $date_to_db, $date_from_db, $date_to_db); $topArticleData = $wpdb->get_results($sql, ARRAY_A); //Top Partner $sql = $wpdb->prepare(' SELECT concat (ProgramTitle, " (", network, ")") as name, round(sum(Commission),2) as commission, round(sum(Confirmed), 2) as confirmed FROM '.$wpdb->prefix.'ap_transaction WHERE TransactionStatus <> "Cancelled" AND date BETWEEN %s and %s GROUP BY ProgramId, network ORDER BY sum(Commission) DESC LIMIT 12', $date_from_db, $date_to_db); $topPartnerData = $wpdb->get_results($sql, ARRAY_A); //Networks $sql = $wpdb->prepare(' SELECT network as name, round(sum(Commission),2) as commission, round(sum(Confirmed), 2) as confirmed FROM '.$wpdb->prefix.'ap_transaction WHERE TransactionStatus <> "Cancelled" AND date BETWEEN %s and %s GROUP BY network ORDER BY sum(Commission) DESC LIMIT 12', $date_from_db, $date_to_db); $networkData = $wpdb->get_results($sql, ARRAY_A); $landingData = array( array( 'name' => 'Nur in der Premium Version', 'commission' => '0', 'confirmed' => '0' ) ); $refererData = array( array( 'name' => 'Nur in der Premium Version', 'commission' => '0', 'confirmed' => '0' ) ); $keywordData = array( array( 'name' => 'Nur in der Premium Version', 'commission' => '0', 'confirmed' => '0' ) ); //Days $sql = $wpdb->prepare(' SELECT date_format(date, "%%d.%%m.%%Y") as name, round(sum(Commission),2) as commission, round(sum(Confirmed), 2) as confirmed FROM '.$wpdb->prefix.'ap_transaction WHERE TransactionStatus <> "Cancelled" AND date BETWEEN %s and %s GROUP BY date(date) ORDER BY date DESC', $date_from_db, $date_to_db); $dayData = $wpdb->get_results($sql, ARRAY_A); //Weeks $sql = $wpdb->prepare(' SELECT concat ("KW ", weekofyear(date), ", ", year(date)) as name, round(sum(Commission),2) as commission, round(sum(Confirmed), 2) as confirmed FROM '.$wpdb->prefix.'ap_transaction WHERE TransactionStatus <> "Cancelled" AND date BETWEEN %s and %s GROUP BY weekofyear(date) ORDER BY date DESC', $date_from_db, $date_to_db); $weekData = $wpdb->get_results($sql, ARRAY_A); //Months $sql = $wpdb->prepare(' SELECT concat ( elt(month(date),"Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"), " ", year(date)) as name, round(sum(Commission),2) as commission, round(sum(Confirmed), 2) as confirmed FROM '.$wpdb->prefix.'ap_transaction WHERE TransactionStatus <> "Cancelled" AND date BETWEEN %s and %s GROUP BY month(date), year(date) ORDER BY year(date) DESC, month(date) DESC', $date_from_db, $date_to_db);; $monthData = $wpdb->get_results($sql, ARRAY_A); //statistics to create $arr_statistics = array( 'Artikel' => $topArticleData, 'Partner' => $topPartnerData, 'Netzwerk' => $networkData, 'Einstiegsseite' => $landingData, 'Besucherquelle' => $refererData, 'Keyword' => $keywordData, 'Tag' => $dayData, 'Woche' => $weekData, 'Monat' => $monthData ); $statisticHtml = ''; $i = 1; foreach ($arr_statistics as $headline => $statistic) { $statisticHtml .= self::getStatisticHtml($headline, $statistic); if ($i % 3 == 0) $statisticHtml .= '
 
'; $i += 1; } echo '
'; echo '

'; echo '

Affiliate Power Statistiken

'; //Check Licence if (isset($options['licence-key'])) { echo '

Du hast einen gültigen Lizenzschlüssel eingegeben, aber die Premium-Version noch nicht heruntergeladen. Bitte begib dich zur Update Seite und aktualisiere auf die Premium-Version. Unter Umständen kann es bis zu 5 Minuten dauern, bis Wordpress die neue Version meldet.

'; } //Datepicker $dates_predefined = array ( 'custom' => 'Freier Zeitaum', 'today' => 'Heute', 'yesterday' => 'Gestern', 'last_7_days' => 'Letzte 7 Tage', 'last_30_days' => 'Letzte 30 Tage', 'all' => 'Gesamt' ); $dates_predefined_options = ''; foreach ($dates_predefined as $value => $text) { $dates_predefined_options .= '
'; } function getStatisticHtml($headline, $statistic) { $html = '

'.$headline.'

'; foreach ($statistic as $row) { $total_earning = number_format($row['commission'], 2, ',', '.'); $confirmed_earning = number_format($row['confirmed'], 2, ',', '.'); $output_earnings = $total_earning . ' € ('.$confirmed_earning.' €)'; $html .= ''; } $html .= '
'.$headline.' Einnahmen
'.$headline.' Einnahmen
'.$row['name'].''.$output_earnings.'
'; return $html; } } ?>