$items = TenantType::Get();
        $lv = new ListView();
        $lv->Columns = array(new ListViewColumn("chTenantTypeTitle", "Title"), new ListViewColumn("chTenantTypeDescription", "Description"));
        foreach ($items as $item) {
            $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("chTenantTypeTitle", "<a href=\"" . System::ExpandRelativePath("~/tenant-types/modify/" . $item->ID) . "\">" . $item->Title . "</a>"), new ListViewItemColumn("chTenantTypeDescription", $item->Description)));
        }
        $lv->Render();
    }
}
System::$Modules[] = new \WebFX\Module("net.phoenixsns.TenantManager.TenantType", array(new ModulePage("tenant-types", array(new ModulePage("", function ($page, $path) {
    $page = new TenantTypeBrowsePage();
    $page->Render();
    return true;
}), new ModulePage("modify", function ($page, $path) {
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        if (isset($_POST["tenanttype_ID"])) {
            $tenanttype = TenantType::GetByID($_POST["tenanttype_ID"]);
        } else {
            $tenanttype = new TenantType();
        }
        $tenanttype->Title = $_POST["tenanttype_Title"];
        $tenanttype->Description = $_POST["tenanttype_Description"];
        $tenanttype->Update();
        System::Redirect("~/tenant-types");
    } else {
        $page = new TenantTypeModifyPage();
        $page->CurrentObject = TenantType::GetByID($path[0]);
        $page->Render();
    }
    return true;
})))));
示例#2
0
 /**
  * Creates a new Tenant object based on the given values from the database.
  * @param array $values
  * @return \PhoenixSNS\Objects\Tenant based on the values of the fields in the given associative array
  */
 public static function GetByAssoc($values)
 {
     $item = new Tenant();
     $item->ID = $values["tenant_ID"];
     $item->URL = $values["tenant_URL"];
     $item->Description = $values["tenant_Description"];
     switch ($values["tenant_Status"]) {
         case 1:
             $item->Status = TenantStatus::Enabled;
             break;
         case 0:
             $item->Status = TenantStatus::Disabled;
             break;
     }
     $item->Type = TenantType::GetByID($values["tenant_TypeID"]);
     $item->PaymentPlan = PaymentPlan::GetByID($values["tenant_PaymentPlanID"]);
     $item->BeginTimestamp = $values["tenant_BeginTimestamp"];
     $item->EndTimestamp = $values["tenant_EndTimestamp"];
     // get the data centers associated with this tenant
     global $MySQL;
     $query = "SELECT " . System::$Configuration["Database.TablePrefix"] . "DataCenters.* FROM " . System::$Configuration["Database.TablePrefix"] . "DataCenters, " . System::$Configuration["Database.TablePrefix"] . "TenantDataCenters WHERE " . System::$Configuration["Database.TablePrefix"] . "TenantDataCenters.tdc_TenantID = " . $item->ID . " AND " . System::$Configuration["Database.TablePrefix"] . "TenantDataCenters.tdc_DataCenterID = " . System::$Configuration["Database.TablePrefix"] . "DataCenters.datacenter_ID";
     $result = $MySQL->query($query);
     $count = $result->num_rows;
     $retval = array();
     for ($i = 0; $i < $count; $i++) {
         $values = $result->fetch_assoc();
         $retval[] = DataCenter::GetByAssoc($values);
     }
     $item->DataCenters->Items = $retval;
     return $item;
 }
示例#3
0
    } else {
        $page = new ConfirmOperationPage();
        $page->ReturnButtonURL = "~/tenant";
        $page->Message = "Are you sure you want to delete the tenant '" . $path[0] . "'? This action cannot be undone, and will destroy any and all data associated with that tenant.";
        $page->Render();
        return true;
    }
}), new ModulePage("modify", function ($page, $path) {
    if (!isset($path[1]) || $path[1] == "") {
        $tenant = Tenant::GetByURL($path[0]);
        System::$TenantName = $path[0];
        if ($_SERVER["REQUEST_METHOD"] == "POST") {
            $tenant->URL = $_POST["tenant_URL"];
            $tenant->Description = $_POST["tenant_Description"];
            $tenant->Status = isset($_POST["tenant_Status"]) ? TenantStatus::Enabled : TenantStatus::Disabled;
            $tenant->Type = TenantType::GetByID($_POST["tenant_TypeID"]);
            $tenant->PaymentPlan = PaymentPlan::GetByID($_POST["tenant_PaymentPlanID"]);
            $tenant->BeginTimestamp = $_POST["tenant_BeginTimestampValid"] == "on" ? null : $_POST["tenant_BeginTimestamp"];
            $tenant->EndTimestamp = $_POST["tenant_EndTimestampValid"] == "on" ? null : $_POST["tenant_EndTimestamp"];
            $retval = $tenant->Update();
            if (!$retval) {
                global $MySQL;
                echo $MySQL->error . " (" . $MySQL->errno . ")";
            } else {
                System::$TenantName = $tenant->URL;
                $properties = $tenant->GetProperties();
                foreach ($properties as $property) {
                    $tenant->SetPropertyValue($property, $_POST["Property_" . $property->ID]);
                }
                System::Redirect("~/tenant");
            }