Exemplo n.º 1
0
 public function execute_fix_wpw_date_expires()
 {
     $dbw = wfGetDB(DB_MASTER);
     $dbw->begin();
     $this->output("looking for wikiplace records to fix...\n");
     $cond = 'wpw_date_expires > DATE_ADD(wpw_report_updated,INTERVAL 1 MONTH)';
     $wikiplaces = WpWikiplace::search($cond, true);
     foreach ($wikiplaces as $wikiplace) {
         $subscription = WpSubscription::newFromId($wikiplace->getSubscriptionId());
         $should_ends = WpWikiplace::calculateNextDateExpiresFromSubscription($subscription);
         if ($subscription->isActive() && $subscription->getTmrStatus() == 'OK' && $wikiplace->getDateExpires() != $should_ends) {
             $this->output("wpw_id=" . $wikiplace->getId() . "\tupdated=" . $wikiplace->getReportUpdated() . "\texpires=" . $wikiplace->getDateExpires() . "\n");
             $this->output(" > wps\t\tstarts=" . $subscription->getStart() . "\tends=" . $subscription->getEnd() . "\n");
             $this->output(" > should expire {$should_ends}\n");
             if (!$this->isTest()) {
                 $this->output(" > fixing...\n");
                 $success = $dbw->update('wp_wikiplace', array('wpw_date_expires' => $should_ends), array('wpw_id' => $wikiplace->getId()));
                 if (!$success) {
                     $this->error("Error while updating wikiplace id=" . $wikiplace->getId(), true);
                 }
                 $this->output(" > fixed :)\n");
             }
             $this->output("\n");
         }
     }
     $this->output("end\n");
     $dbw->commit();
 }
Exemplo n.º 2
0
 protected function processCancel()
 {
     $this->action = self::ACTION_LIST;
     $wps_id = $this->getRequest()->getInt('id');
     $subscription = WpSubscription::newFromId($wps_id);
     if (is_null($subscription)) {
         $this->msgKey = 'sz-internal-error';
         $this->msgType = 'error';
         $this->display();
         return;
     }
     $result = $subscription->cancel($this->getUser());
     if ($result === true) {
         $this->msgKey = 'wp-cancel-success';
         $this->msgType = 'success';
     } else {
         $this->msgKey = 'sz-internal-error';
         $this->msgType = 'error';
     }
     $this->display();
 }
 private function getInfos($wpw_id = null, $wpname = null)
 {
     $output = $this->getOutput();
     $output->addWikiText("=== Infos (wpw_id || wikiplace) ===");
     // WIKIPLACE
     $wikiplace = null;
     if ($wpw_id != null) {
         $wpw_id = intval($wpw_id);
         $output->addWikiText("Search by wikiplace id <code><nowiki>{$wpw_id}</nowiki></code>");
         $wikiplace = WpWikiplace::getById($wpw_id);
     } elseif ($wpname != null) {
         $output->addWikiText("Search by wikiplace name <code><nowiki>{$wpname}</nowiki></code>");
         $wikiplace = WpWikiplace::newFromName($wpname);
     }
     if ($wikiplace == null) {
         $output->addWikiText("=== No Wikiplace ===");
         return;
     }
     $id = $wikiplace->getId();
     $name = $wikiplace->getName();
     $report_expires = $wikiplace->getDateExpires();
     $report_updated = $wikiplace->getReportUpdated();
     $output->addWikiText("=== Wikiplace ===");
     $output->addWikiText("id = <code><nowiki>{$id}</nowiki></code>");
     $output->addWikiText("name = <code><nowiki>{$name}</nowiki></code>");
     $output->addWikiText("report expires = <code><nowiki>{$report_expires}</nowiki></code>");
     $output->addWikiText("report updated = <code><nowiki>{$report_updated}</nowiki></code>");
     // OWNER
     $owner = User::newFromId($wikiplace->getOwnerUserId());
     if ($owner == null || !$owner->getId()) {
         $output->addWikiText("=== No Owner ===");
         return;
     }
     $id = $owner->getId();
     $username = $owner->getName();
     $email = $owner->getEmail();
     $output->addWikiText("=== Owner ===");
     $output->addWikiText("id = <code><nowiki>{$id}</nowiki></code>");
     $output->addWikiText("username = <code><nowiki>{$username}</nowiki></code>");
     $output->addWikiText("email = <code><nowiki>{$email}</nowiki></code>");
     // SUBSCRIPTION
     $subscription = WpSubscription::newFromId($wikiplace->getSubscriptionId());
     if ($subscription == null) {
         $output->addWikiText("=== No Subscription ===");
         return;
     }
     $output->addWikiText("=== Subscription ===");
     $output->addWikiText("wps_id = " . $subscription->getId());
     $output->addWikiText("wps_start_date = " . $subscription->getStart());
     $output->addWikiText("wps_end_date = " . $subscription->getEnd());
     $output->addWikiText("wps_active = " . ($subscription->isActive() ? "true" : "false"));
     $output->addWikiText("wps_renewal_notified = " . ($subscription->isRenewalNotified() ? "true" : "false"));
     $plan = WpPlan::newFromId($subscription->getPlanId());
     $rplanid = $subscription->getRenewalPlanId();
     $rplan = $rplanid == 0 ? null : WpPlan::newFromId($rplanid);
     $output->addWikiText("==== Plan ====");
     $output->addWikiText("wpp_id = " . $plan->getId());
     $output->addWikiText("wpp_name = " . $plan->getName());
     $output->addWikiText("renew_wpp_id = " . ($rplan == null ? '<i>NONE</i>' : $rplan->getId()));
     $output->addWikiText("renew_wpp_name = " . ($rplan == null ? '<i>NONE</i>' : $rplan->getName()));
     $tmr = TMRecord::getById($subscription->getTmrId());
     $output->addWikiText("==== TMR ====");
     $output->addWikiText("tmr_id = " . $tmr->getId());
     $output->addWikiText("tmr_status = " . $tmr->getStatus());
     $tmb = TMBill::newFromId($tmr->getTMBId());
     if ($tmb == null) {
         $output->addWikiText("==== No Bill ====");
         return;
     }
     $output->addWikiText("==== TMB ====");
     $output->addWikiText("tmb_id = " . $tmb->getId());
     $output->addWikiText("tmb_date_created = " . $tmb->getDateCreated());
 }