function displayDonationMenuModule() { $menuItemInfo = $GLOBALS['menu_item_info']; if ($menuItemInfo['itemtype'] != "donation") { return false; } global $mysqli; if (!class_exists("DonationCampaign")) { include BASE_DIRECTORY . "plugins/donations/classes/campaign.php"; } $campaignObj = new DonationCampaign($mysqli); $donationObj = new btPlugin($mysqli); if ($campaignObj->select($menuItemInfo['itemtype_id']) && $donationObj->selectByName("Donations")) { $progressBarColor = $donationObj->getConfigInfo("goalprogresscolor"); $progressBarBackColor = $donationObj->getConfigInfo("goalprogressbackcolor"); $campaignInfo = $campaignObj->get_info_filtered(); $campaignDesc = $campaignObj->get_info("description"); $dispCampaignDesc = substr($campaignDesc, 0, 100); $dispCampaignDesc = $campaignDesc != $dispCampaignDesc ? $dispCampaignDesc . "..." : $dispCampaignDesc; $dispCampaignDesc = nl2br(parseBBCode(filterText($dispCampaignDesc))); $daysLeft = ""; if ($campaignInfo['dateend'] != 0 || $campaignInfo['dateend'] == 0 && $campaignInfo['currentperiod'] != 0) { $daysLeft = $campaignObj->getDaysLeft(); } $dispGoal = ""; if ($campaignInfo['goalamount'] > 0) { // Graph $goalCompletePercent = round($campaignObj->getTotalDonationAmount() / $campaignInfo['goalamount'] * 100); $goalCompletePercent = $goalCompletePercent > 100 ? "100%" : $goalCompletePercent . "%"; $dispGoal = " of " . $campaignObj->formatAmount($campaignInfo['goalamount'], 2) . " goal"; $dispProgressBar = "\n\t\t\t\t\t<div class='donationProgressContainer' style='background-color: " . $progressBarBackColor . "'>\n\t\t\t\t\t\t<div style='width: " . $goalCompletePercent . "; background-color: " . $progressBarColor . "'></div>\n\t\t\t\t\t</div>\n\t\t\t\t"; } $donationsInfo = $campaignObj->getDonationInfo(); $totalDonations = count($donationsInfo); $donationsFormatted = $campaignObj->formatAmount($campaignObj->getTotalDonationAmount()); $currentEndDate = $campaignObj->getCurrentEndDate(); $dispEndingDate = ""; if ($currentEndDate != 0) { $dispExclaimation = $daysLeft < 3 ? "!" : ""; $dispEndingDate = "<div class='donateMenuItemStat'><b>" . $campaignObj->getFormattedEndDate() . " left" . $dispExclaimation . "</b></div>"; } echo "\n\t\t\t\n\t\t\t\t<div class='donateMenuItemContainer'>\n\t\t\t\t\t<div class='donateMenuItemTitle'><a href='" . $campaignObj->getLink() . "'>" . $campaignInfo['title'] . "</a></div>\n\t\t\t\t\t<div class='donateMenuItemDesc main'>\n\t\t\t\t\t\t" . $dispCampaignDesc . "\t\t\t\t\t\n\t\t\t\t\t</div>\n\t\t\t\t\t<p align='center'>\n\t\t\t\t\t\t<a href='" . $campaignObj->getLink() . "'><input type='button' value='Donate!' class='submitButton'></a>\n\t\t\t\t\t</p>\n\t\t\t\t\t<div class='donateMenuItemStatsDiv main'>" . $dispProgressBar . "\n\t\t\t\t\t\t<div class='donateMenuItemStat'><b>" . $donationsFormatted . "</b><br>raised" . $dispGoal . "</div>\n\t\t\t\t\t\t" . $dispEndingDate . "\n\t\t\t\t\t\t<div style='clear: both'></div>\n\t\t\t\t\t</div>\n\t\t\t"; if (count($donationsInfo) > 0) { echo "<p class='donateMenuItemTitle'><b>Latest Donators:</b></p>"; $campaignObj->showDonatorList(false, 2); } echo "\n\t\t\t\t</div>\n\t\t\t\n\t\t\t"; } }
<?php if (!defined("CAMPAIGN_FORM")) { exit; } $arrPaypalCurrencyCodes = $campaignObj->getCurrencyCodes(); $arrPaypalCurrencyInfo = $campaignObj->getCurrencyCodeInfo(); $donationPlugin = new btPlugin($mysqli); $donationPlugin->selectByName("Donations"); $checkRecurringBox = $setRecurringBox == 1 ? 1 : 0; $campaignJS = "\n\t\n\t\t\$(document).ready(function() {\n\t\t\tvar recurring = " . $checkRecurringBox . ";\n\t\t\n\t\t\t\$('#chkRecurring').click(function() {\n\t\t\t\tif(recurring == 1) {\n\t\t\t\t\t\$('#repeatPeriodAmount').attr('disabled', 'disabled');\n\t\t\t\t\t\$('#repeatPeriodUnit').attr('disabled', 'disabled');\n\t\t\t\t\trecurring = 0;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t\$('#repeatPeriodAmount').attr('disabled', false);\n\t\t\t\t\t\$('#repeatPeriodUnit').attr('disabled', false);\n\t\t\t\t\trecurring = 1;\n\t\t\t\t}\n\t\t\t});\n\t\t\t\n\t\t\t\$('#runUntil').change(function() {\n\t\t\t\n\t\t\t\tif(\$(this).val() == \"choose\") {\n\t\t\t\t\t\$('#jsEndDate').show();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t\$('#jsEndDate').hide();\n\t\t\t\t}\n\t\t\t\n\t\t\t});\n\t\t\t\n\t\t\t\n\t\t\t\$('#runUntil').change();\n\t\t});\n\t"; $maxYear = date("Y") + 10; $maxDate = "new Date(" . $maxYear . ",12,31)"; $i = 0; $arrComponents = array("mainsection" => array("type" => "section", "options" => array("section_title" => "General Information"), "sortorder" => $i++), "title" => array("type" => "text", "attributes" => array("class" => "textBox bigTextBox formInput"), "sortorder" => $i++, "display_name" => "Title", "db_name" => "title", "validate" => array("NOT_BLANK")), "description" => array("type" => "textarea", "display_name" => "Description", "attributes" => array("class" => "textBox formInput bigTextBox", "rows" => 5), "sortorder" => $i++, "db_name" => "description"), "rununtil" => array("type" => "select", "display_name" => "Run Until", "options" => array("forever" => "Forever", "choose" => "Choose Date"), "attributes" => array("class" => "textBox formInput", "id" => "runUntil"), "sortorder" => $i++), "enddate" => array("type" => "datepicker", "sortorder" => $i++, "attributes" => array("style" => "cursor: pointer; display: none", "id" => "jsEndDate", "class" => "textBox formInput"), "db_name" => "dateend", "before_html" => "<label class='formLabel' style='display: inline-block'></label>\n\t\t\t", "options" => array("changeMonth" => "true", "changeYear" => "true", "dateFormate" => "M d, yy", "minDate" => "new Date(50, 1, 1)", "maxDate" => $maxDate, "yearRange" => "1950:" . $maxYear, "altField" => "realEndDate"), "validate" => array("NUMBER_ONLY"), "value" => 0), "allowname" => array("type" => "checkbox", "display_name" => "Allow Names", "tooltip" => "Check this box to allow donators to leave their name.", "sortorder" => $i++, "value" => 1, "options" => array(1 => ""), "attributes" => array("class" => "formInput"), "db_name" => "allowname"), "allowmessage" => array("type" => "checkbox", "display_name" => "Allow Messages", "tooltip" => "Check this box to allow donators to leave a message.", "sortorder" => $i++, "value" => 1, "options" => array(1 => ""), "attributes" => array("class" => "formInput"), "db_name" => "allowmessage"), "allowhiddenamount" => array("type" => "checkbox", "display_name" => "Allow Hidden Amounts", "tooltip" => "Check this box to allow donators to hide the amount they donated on the donation profile page. You will still be able to view the amount in the donation logs.", "sortorder" => $i++, "value" => 0, "options" => array(1 => ""), "attributes" => array("class" => "formInput"), "db_name" => "allowhiddenamount"), "goalamount" => array("type" => "text", "attributes" => array("class" => "formInput textBox smallTextBox"), "sortorder" => $i++, "display_name" => "Donation Goal", "db_name" => "goalamount"), "minimumamount" => array("type" => "text", "attributes" => array("class" => "formInput textBox smallTextBox"), "sortorder" => $i++, "display_name" => "Minimum Donation", "value" => "1.00", "db_name" => "minimumamount"), "currency" => array("type" => "select", "attributes" => array("class" => "formInput textBox"), "sortorder" => $i++, "display_name" => "Currency", "db_name" => "currency", "options" => $arrPaypalCurrencyCodes, "value" => $donationPlugin->getConfigInfo("currency"))); // Check for award medal console access $awardMedalCID = $consoleObj->findConsoleIDByName("Award Medal"); $consoleObj->select($awardMedalCID); $hasAwardMedalAccess = false; if ($member->hasAccess($consoleObj)) { $hasAwardMedalAccess = true; $medalOptions[0] = "None"; $result = $mysqli->query("SELECT * FROM " . $dbprefix . "medals ORDER BY ordernum DESC"); while ($row = $result->fetch_assoc()) { $medalOptions[$row['medal_id']] = filterText($row['name']); } $arrComponents['awardmedal'] = array("type" => "select", "display_name" => "Award Medal", "sortorder" => $i++, "tooltip" => "Auto-award a medal to a member who donates.", "attributes" => array("class" => "formInput textBox"), "db_name" => "awardmedal", "options" => $medalOptions); } $consoleObj->select($cID); if (!is_array($arrSelectRecur)) { $arrSelectRecur['months'] = "selected";
<?php include "../../_setup.php"; include "classes/donate-paypalclass.php"; include "classes/donation.php"; include "classes/campaign.php"; $donationPlugin = new btPlugin($mysqli); if ($donationPlugin->selectByName("Donations")) { $donationObj = new Donation($mysqli); $p = new paypal_class(); $arrColumns = array("donationcampaign_id", "member_id", "name", "message", "datesent", "amount", "paypalemail", "transaction_id", "response"); $p->setMode($donationPlugin->getConfigInfo("mode")); if ($p->validate_ipn() && $p->ipn_data['payment_status'] != "Failed" && $p->ipn_data['payment_status'] != "Denied") { $member = new Member($mysqli); $campaignObj = new DonationCampaign($mysqli); $arrData = $p->ipn_data; $data = json_encode($arrData); $customVars = json_decode($arrData['custom'], true); if ($campaignObj->select($customVars['campaign_id']) && $member->select($customVars['member_id'])) { $campaignName = $campaignObj->get_info_filtered("title"); $medalID = $campaignObj->get_info("awardmedal"); $member->awardMedal($medalID, "Donated to " . $campaignName . " campaign"); } $arrValues = array($customVars['campaign_id'], $customVars['member_id'], $customVars['name'], $customVars['message'], time(), $arrData['mc_gross'], $arrData['payer_email'], $arrData['txn_id'], $data); $donationObj->addNew($arrColumns, $arrValues); } else { $data = json_encode($p->ipn_data); $data = "ERROR: - " . $p->last_error . " - " . $data; $donationObj->logError($data); } }
<?php header("Content-type: text/css"); include "../../_setup.php"; include BASE_DIRECTORY . "themes/" . $THEME . "/css.php"; if ($arrCSSInfo['box-bg-image'] != "none") { $arrCSSInfo['box-bg-image'] = substr($arrCSSInfo['box-bg-image'], strlen("url('")); $arrCSSInfo['box-bg-image'] = substr($arrCSSInfo['box-bg-image'], 0, strlen($arrCSSInfo['box-bg-image']) - 2); } $pluginObj = new btPlugin($mysqli); $pluginObj->selectByName("Twitch"); $streamWidth = $pluginObj->getConfigInfo("stream_width") != "" ? $pluginObj->getConfigInfo("stream_width") : 640; $streamHeight = $pluginObj->getConfigInfo("stream_height") != "" ? $pluginObj->getConfigInfo("stream_height") : 360; $streamChatHeight = $pluginObj->getConfigInfo("streamchat_width") != "" ? $pluginObj->getConfigInfo("streamchat_height") : 300; ?> .streamPageContainer { position: relative; overflow: auto; margin: 0px auto; width: 98%; } .twitchCardContainer { max-width: 320px; width: 26%; display: inline-block; padding: 10px; border: solid <?php echo $arrCSSInfo['default-border-color']; ?> 1px;
$hooksObj->addHook("breadcrumb", "setThankYouPageBreadcrumb"); break; default: if (isset($_GET['custom']) && isset($_GET['payment_status'])) { $customVars = json_decode($_GET['custom'], true); header("Location: " . FULL_SITE_URL . "plugins/donations/?campaign_id=" . $customVars['campaign_id'] . "&p=thankyou"); } else { $webInfoObj->setPage("plugins/donations/include/main.php"); } } $campaignObj = new DonationCampaign($mysqli); $donationPlugin = new btPlugin($mysqli); if (!$donationPlugin->selectByName("Donations") || !$campaignObj->select($_GET['campaign_id'])) { echo "<script type='text/javascript'>window.location = '" . $MAIN_ROOT . "';</script>"; exit; } elseif ($donationPlugin->selectByName("Donations") && $donationPlugin->getConfigInfo("email") == "") { echo "\n\t\t<script type='text/javascript'>\n\t\t\talert('Please complete the plugin configuration before continuing!');\n\t\t\twindow.location = '" . $MAIN_ROOT . "';\n\t\t</script>\n\t"; exit; } $campaignObj->updateCurrentPeriod(); $campaignInfo = $campaignObj->get_info_filtered(); // Start Page $PAGE_NAME = $campaignInfo['title'] . " - "; include $prevFolder . "themes/" . $THEME . "/_header.php"; $member = new Member($mysqli); $breadcrumbObj->setTitle($campaignInfo['title']); $breadcrumbObj->addCrumb("Home", $MAIN_ROOT); $breadcrumbObj->addCrumb("Donation Campaign: " . $campaignInfo['title']); include $prevFolder . "include/breadcrumb.php"; $webInfoObj->displayPage(); include $prevFolder . "themes/" . $THEME . "/_footer.php";
<?php include "../../_setup.php"; include "classes/donate-paypalclass.php"; include_once "classes/campaign.php"; $donationPlugin = new btPlugin($mysqli); $campaignObj = new DonationCampaign($mysqli); $customVars = array(); if ($donationPlugin->selectByName("Donations") && $donationPlugin->getConfigInfo("email") != "" && $campaignObj->select($_GET['campaign_id'])) { $notifyURL = FULL_SITE_URL . "plugins/donations/paypal-ipn.php"; $p = new paypal_class(); $member = new Member($mysqli); $campaignInfo = $campaignObj->get_info_filtered(); $p->setMode($donationPlugin->getConfigInfo("mode")); $link = $p->paypal_url . "?cmd=_donations"; $_POST['business'] = $donationPlugin->getConfigInfo("email"); $_POST['item_name'] = "Donation for " . $campaignInfo['title']; $_POST['notify_url'] = $notifyURL; $_POST['rm'] = 1; $_POST['return'] = FULL_SITE_URL . "plugins/donations/?campaign_id=" . $_GET['campaign_id'] . "&p=thankyou"; if ($campaignInfo['currency'] != "") { $_POST['currency_code'] = $campaignInfo['currency']; } // Check For Custom Variables if (isset($_SESSION['btUsername']) && isset($_SESSION['btPassword']) && $member->select($_SESSION['btUsername']) && $member->authorizeLogin($_SESSION['btPassword'])) { $customVars['member_id'] = $member->get_info("member_id"); } $customVars['campaign_id'] = $_GET['campaign_id']; $addToLink = ""; $customVals = array("name", "message", "hideamount"); $filterFormInputs = array("submit", "checkCSRF");
<?php if (!defined("MAIN_ROOT")) { exit; } $member = new Member($mysqli); $twitchObj = new Twitch($mysqli); $pluginObj = new btPlugin($mysqli); $pluginObj->selectByName("Twitch"); if (!$member->select($_GET['user']) || !$twitchObj->hasTwitch($_GET['user'])) { echo "\n\t\t\t<script type='text/javascript'>window.location='" . MAIN_ROOT . "plugins/twitch'</script>\n\t\t"; exit; } $twitchName = $twitchObj->getTwitchName($twitchObj->data['memberID']); $autoPlay = $pluginObj->getConfigInfo("autoplay") == "1" ? "true" : "false"; ?> <div class='twitchPlayerContainer'> <object class='twitchPlayer' type='application/x-shockwave-flash' id='live_embed_player_flash' data='http://www.twitch.tv/widgets/live_embed_player.swf?channel=<?php echo $twitchName; ?> ' bgcolor='#000000'> <param name='allowFullScreen' value='true' /><param name='wmode' value='opaque' /> <param name='allowScriptAccess' value='always' /><param name='allowNetworking' value='all' /> <param name='movie' value='http://www.twitch.tv/widgets/live_embed_player.swf' /> <param name='flashvars' value='hostname=www.twitch.tv&channel=<?php echo $twitchName; ?> &auto_play=<?php echo $autoPlay;