protected function RenderContent()
 {
     $datacenters = DataCenter::Get();
     $lv = new ListView();
     $lv->Columns = array(new ListViewColumn("chDataCenter", "Data Center"), new ListViewColumn("chDescription", "Description"), new ListViewColumn("chHostName", "Host name"));
     foreach ($datacenters as $datacenter) {
         $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("chDataCenter", "<a href=\"" . System::ExpandRelativePath("~/data-centers/modify/" . $datacenter->ID) . "\">" . $datacenter->Title . "</a>", $datacenter->Title), new ListViewItemColumn("chDescription", $datacenter->Description), new ListViewItemColumn("chHostName", "<a href=\"http://" . $datacenter->HostName . "\">" . $datacenter->HostName . "</a>")));
     }
     $lv->Render();
 }
    protected function RenderContent()
    {
        ?>
			<div class="CardLayout">
				<div class="CardSet">
					<div class="Card">
						<div class="Title">Users</div>
						<div class="Content">
							<div><span class="Emphasis"><?php 
        $count = User::Count(true);
        echo $count;
        ?>
</span> registered <?php 
        echo $count == 1 ? "user" : "users";
        ?>
</div>
							<div>Most recently active users:</div>
							<?php 
        $lvUsers = new ListView();
        $lvUsers->Columns = array(new ListViewColumn("lvcUserLink", "User"), new ListViewColumn("lvcUserLastActiveDate", "Last Active Date"));
        $lvUsers->Render();
        ?>
						</div>
						<div class="Actions">
							<a href="#">Manage Users</a>
						</div>
					</div>
					<div class="Card">
						<div class="Title">Groups</div>
						<div class="Content">
						</div>
						<div class="Actions">
							<a href="#">Manage Groups</a>
						</div>
					</div>
					<div class="Card">
						<div class="Title">Market</div>
						<div class="Content">
						</div>
						<div class="Actions">
							<a href="#">Manage Items</a>
							<a href="#">Manage Resources</a>
						</div>
					</div>
				</div>
			</div>
			<?php 
    }
    protected function RenderContent()
    {
        ?>
		<form method="POST">
		<?php 
        $tc = new TabContainer();
        $tc->TabPages[] = new TabPage("tabGeneralInformation", "General Information", null, null, null, function () {
            ?>
				<div class="FormView">
					<div class="Field">
						<label for="txtModuleTitle">Title:</label>
						<input id="txtModuleTitle" name="module_Title" type="text" value="<?php 
            echo $this->Module->Title;
            ?>
" />
					</div>
					<div class="Field">
						<label for="txtModuleDescription" style="vertical-align: top;">Description: </label>
						<textarea id="txtModuleDescription" name="module_Description" style="width: 100%;" rows="5"><?php 
            echo $this->Module->Description;
            ?>
</textarea>
					</div>
				</div>
				<?php 
        });
        $tc->TabPages[] = new TabPage("tabApplicationMenuItems", "Application Menu Items", null, null, null, function () {
            $lv = new ListView();
            $lv->Columns = array(new ListViewColumn("chTitle", "Title"), new ListViewColumn("chDescription", "Description"), new ListViewColumn("chTarget", "Target"));
            $menuitems = $this->Module->GetMainMenuItems();
            foreach ($menuitems as $menuitem) {
                $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("chTitle", $menuitem->Title), new ListViewItemColumn("chDescription", $menuitem->Description), new ListViewItemColumn("chTarget", $menuitem->TargetURL)));
            }
            $lv->Render();
        });
        $tc->TabPages[] = new TabPage("tabModulePages", "Module Pages", null, null, null, function () {
            $lv = new ListView();
            $lv->Columns = array(new ListViewColumn("chURL", "URL"));
            $pages = $this->Module->GetPages();
            foreach ($pages as $modulePage) {
                $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("chURL", "<a href=\"" . System::ExpandRelativePath("~/modules/modify/" . $this->Module->ID . "/pages/" . $modulePage->ID) . "\">" . $modulePage->URL . "</a>", $modulePage->URL)));
            }
            $lv->Render();
        });
        $tc->Render();
        ?>
			<div class="Buttons" style="text-align: right;">
				<input class="Button Default" type="submit" value="Save Changes" />
				<a class="Button" href="<?php 
        echo System::ExpandRelativePath("~/modules");
        ?>
">Discard Changes</a>
			</div>
		</form>
		<?php 
    }
    protected function RenderContent()
    {
        if ($this->CurrentObject != null) {
            ?>
			<form method="POST">
			<?php 
            $tbs = new TabContainer("tbsObject");
            //								ID						title			imageurl	targeturl	script	contentfunc
            $tbs->TabPages[] = new TabPage("tabGeneralInformation", "General Information", null, null, null, function () {
                ?>
					<div class="FormView">
						<div class="Field">
							<label for="txtObjectName">Object <u>n</u>ame:</label>
							<input type="text" name="object_Name" id="txtObjectName" accesskey="n" value="<?php 
                echo $this->CurrentObject->Name;
                ?>
" />
						</div>
						<div class="Field">
							<label for="cboModuleID">Parent <u>m</u>odule:</label>
							<select id="cboModuleID" name="object_ModuleID" accesskey="m">
							</select>
						</div>
						<div class="Field">
							<label for="cboParentObjectID">Parent <u>o</u>bject:</label>
							<select id="cboParentObjectID" name="object_ParentObjectID" accesskey="o">
							</select>
						</div>
					</div>
					<?php 
            });
            $tbs->TabPages[] = new TabPage("tabStaticProperties", "Static Properties", null, null, null, function () {
                ?>
					<table class="ListView" style="width: 100%;">
						<tr id="Property_Header">
							<th style="width: 32px;"><a href="#" onclick="AddPropertyBelow('Header');" title="Add Below">[+]</a></th>
							<th style="width: 256px;">Property</th>
							<th style="width: 128px;">Data Type</th>
							<th>Default Value</th>
						</tr>
						<?php 
                $properties = $this->CurrentObject->GetProperties();
                foreach ($properties as $property) {
                    ?>
								<tr id="StaticProperty_<?php 
                    echo $property->ID;
                    ?>
">
									<td style="width: 32px;"><a href="#" onclick="AddStaticPropertyBelow('<?php 
                    echo $property->ID;
                    ?>
');" title="Add Below">[+]</a></td>
									<td><?php 
                    echo $property->Name;
                    ?>
</td>
									<td><?php 
                    echo $property->DataType == null ? "(undefined)" : "<a href=\"" . System::ExpandRelativePath("~/datatype/modify/" . $property->DataType->ID) . "\">" . $property->DataType->Name . "</a>";
                    ?>
</td>
									<td>
									<?php 
                    if ($property->DataType == null || $property->DataType->ColumnRendererCodeBlob == null) {
                        ?>
										<input style="width: 100%;" type="text" id="txtStaticProperty_<?php 
                        echo $property->ID;
                        ?>
" name="StaticProperty_<?php 
                        echo $property->ID;
                        ?>
" value="<?php 
                        echo $property->DefaultValue;
                        ?>
" />
										<?php 
                    } else {
                        call_user_func($property->DataType->ColumnRendererCodeBlob, $property->Value);
                    }
                    ?>
									</td>
								</tr>
								<?php 
                }
                ?>
					</table>
					<?php 
            });
            $tbs->TabPages[] = new TabPage("tabInstanceProperties", "Instance Properties", null, null, null, function () {
                ?>
					<script type="text/javascript">
					function AddInstancePropertyBelow(id)
					{
						var hdnNewPropertyCount = document.getElementById("hdnNewPropertyCount");
						hdnNewPropertyCount.value = parseInt(hdnNewPropertyCount.value) + 1;
						
						var parentRow = document.getElementById("InstanceProperty_" + id);
						var table = parentRow.parentElement;
						
						var tr = table.insertRow(parentRow.sectionRowIndex + 1);
						
						var tdAdd = tr.insertCell(-1);
						tdAdd.innerHTML = "<a href=\"#\" onclick=\"AddInstancePropertyBelow('');\" title=\"Add Below\">[+]</a>";
						
						var tdProperty = tr.insertCell(-1);
						tdProperty.innerHTML = "<input type=\"text\" name=\"InstanceProperty_" + hdnNewPropertyCount.value + "_Name\" />";
						
						var tdDataType = tr.insertCell(-1);
						tdDataType.innerHTML = "<input type=\"text\" name=\"InstanceProperty_" + hdnNewPropertyCount.value + "_DataTypeID\" />";
						
						var tdDefaultValue = tr.insertCell(-1);
						tdDefaultValue.innerHTML = "<input type=\"text\" name=\"InstanceProperty_" + hdnNewPropertyCount.value + "_DefaultValue\" />";
					}
					</script>
					<input type="hidden" id="hdnNewPropertyCount" name="InstanceProperty_NewPropertyCount" value="0" />
					<table class="ListView" style="width: 100%;">
						<tr id="InstanceProperty_Header">
							<th style="width: 32px;"><a href="#" onclick="AddInstancePropertyBelow('Header'); return false;" title="Add Below">[+]</a></th>
							<th style="width: 256px;">Property</th>
							<th style="width: 128px;">Data Type</th>
							<th>Default Value</th>
						</tr>
						<?php 
                $properties = $this->CurrentObject->GetInstanceProperties();
                foreach ($properties as $property) {
                    ?>
								<tr id="InstanceProperty_<?php 
                    echo $property->ID;
                    ?>
">
									<td style="width: 32px;"><a href="#" onclick="AddInstancePropertyBelow('<?php 
                    echo $property->ID;
                    ?>
'); return false;" title="Add Below">[+]</a></td>
									<td><?php 
                    echo $property->Name;
                    ?>
</td>
									<td><?php 
                    echo $property->DataType == null ? "(undefined)" : "<a href=\"" . System::ExpandRelativePath("~/datatype/modify/" . $property->DataType->ID) . "\">" . $property->DataType->Name . "</a>";
                    ?>
</td>
									<td>
									<?php 
                    $property->RenderColumn();
                    ?>
									</td>
								</tr>
								<?php 
                }
                ?>
					</table>
					<?php 
            });
            $tbs->TabPages[] = new TabPage("tabStaticMethods", "Static Methods", null, null, null, function () {
                ?>
					<table class="ListView" style="width: 100%;">
						<tr id="StaticMethod_Header">
							<th style="width: 32px;"><a href="#" onclick="AddStaticMethodBelow('Header');" title="Add Below">[+]</a></th>
							<th style="width: 256px;">Method</th>
							<th>Description</th>
							<th style="width: 128px;">Return Data Type</th>
						</tr>
						<?php 
                $methods = $this->CurrentObject->GetMethods();
                foreach ($methods as $method) {
                    ?>
								<tr id="StaticMethod_<?php 
                    echo $method->ID;
                    ?>
">
									<td style="width: 32px;"><a href="#" onclick="AddStaticMethodBelow('<?php 
                    echo $method->ID;
                    ?>
');" title="Add Below">[+]</a></td>
									<td><a href="<?php 
                    echo System::ExpandRelativePath("~/tenant/modify/" . $this->CurrentTenant->URL . "/objects/" . $this->CurrentObject->ID . "/methods/static/" . $method->ID);
                    ?>
"><?php 
                    echo $method->Name;
                    ?>
</a></td>
									<td><?php 
                    echo $method->Description;
                    ?>
</td>
									<td><?php 
                    /* echo($method->DataType == null ? "(undefined)" : "<a href=\"#\">" . $method->DataType->Name . "</a>"); */
                    ?>
</td>
								</tr>
								<?php 
                }
                ?>
					</table>
					<?php 
            });
            $tbs->TabPages[] = new TabPage("tabInstances", "Instances", null, "~/tenant/modify/" . $this->CurrentTenant->URL . "/objects/" . $this->CurrentObject->ID . "/instances", null, function () {
                $listview = new ListView("lvInstances");
                $listview->Width = "100%";
                $properties = $this->CurrentObject->GetInstanceProperties();
                foreach ($properties as $property) {
                    if ($property->ColumnVisible) {
                        $listview->Columns[] = new ListViewColumn("P" . $property->ID, $property->Name);
                    }
                }
                $instances = $this->CurrentObject->GetInstances();
                foreach ($instances as $instance) {
                    $cols = array();
                    foreach ($properties as $property) {
                        if ($property->ColumnVisible) {
                            $cols[] = new ListViewItemColumn("P" . $property->ID, "", "", function ($vals) {
                                $inst = $vals[0];
                                $prop = $vals[1];
                                $prop->RenderColumn($inst->GetPropertyValue($prop));
                            }, array($instance, $property));
                        }
                    }
                    $lvi = new ListViewItem($cols);
                    $listview->Items[] = $lvi;
                }
                $listview->Render();
            });
            $tbs->SelectedTab = $tbs->TabPages[0];
            $tbs->Render();
            ?>
			
					<div class="Buttons">
						<input type="submit" class="Button Default" value="Save Changes" />
						<a class="Button" href="<?php 
            echo System::ExpandRelativePath("~/tenant/modify/" . $this->CurrentTenant->URL);
            ?>
">Discard Changes</a>
					</div>
				</form>
				<?php 
        }
    }
 protected function RenderContent()
 {
     $items = DataType::Get();
     $lv = new ListView();
     $lv->Columns = array(new ListViewColumn("chDataTypeName", "Name"), new ListViewColumn("chDataTypeDescription", "Description"));
     foreach ($items as $item) {
         $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("chDataTypeName", "<a href=\"" . System::ExpandRelativePath("~/data-types/modify/" . $item->ID) . "\">" . $item->Name . "</a>"), new ListViewItemColumn("chDataTypeDescription", $item->Description)));
     }
     $lv->Render();
 }
Example #6
0
    protected function RenderContent()
    {
        ?>
			<form method="POST" id="frmMain">
			<?php 
        $tbs = new TabContainer("tbs");
        $tbs->TabPages[] = new TabPage("tabInformation", "Information", null, null, null, function () {
            ?>
				<div class="FormView">
					<div class="Field">
						<label for="txtLoginID">Login ID</label>
						<input id="txtLoginID" name="user_LoginID" type="text" value="<?php 
            echo $this->CurrentObject->UserName;
            ?>
" />
						<span class="HelpText">The name used to log this user into the system</span>
					</div>
					<div class="Field">
						<label for="txtDisplayName">Display name</label>
						<input id="txtDisplayName" name="user_DisplayName" type="text" value="<?php 
            echo $this->CurrentObject->DisplayName;
            ?>
" />
						<span class="HelpText">The friendly name for this user</span>
					</div>
					<div class="Field">
						<label for="chkAccountLocked">Lock account</label>
						<input id="chkAccountLocked" name="user_AccountLocked" type="checkbox"<?php 
            echo $this->CurrentObject->AccountLocked ? " checked=\"checked\"" : "";
            ?>
 />
						<span class="HelpText">Check if this user should be prohibited from logging in</span>
					</div>
					<div class="Field">
						<label for="chkForcePasswordChange">Require password reset on next logon</label>
						<input id="chkForcePasswordChange" name="user_ForcePasswordChange" type="checkbox"<?php 
            echo $this->CurrentObject->ForcePasswordChange ? " checked=\"checked\"" : "";
            ?>
 />
						<span class="HelpText">Check if this user must change their password the next time they log in</span>
					</div>
				</div>
				<?php 
        });
        $tbs->TabPages[] = new TabPage("tabPrivileges", "Privileges", null, null, null, function () {
            $lv = new ListView();
            $lv->EnableRowCheckBoxes = true;
            $lv->Columns = array(new ListViewColumn("lvcPrivilege", "Privilege"));
            $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("lvcPrivilege", "Administrator")));
            $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("lvcPrivilege", "Moderator")));
            $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("lvcPrivilege", "User")));
            $lv->Render();
        });
        $tbs->SelectedTab = $tbs->TabPages[0];
        $tbs->Render();
        ?>
				<div class="Buttons">
					<input class="Button Default" type="submit" value="Save Changes" />
					<a class="Button" href="<?php 
        echo System::ExpandRelativePath("~/users");
        ?>
">Discard Changes</a>
				</div>
			</form>
			<?php 
    }
    protected function RenderContent()
    {
        ?>
			<form method="POST" onsubmit="return form_OnSubmit();">
				<?php 
        $tbs = new TabContainer("tbsTabs");
        $tbs->TabPages[] = new TabPage("tabGeneralInformation", "General Information", null, null, null, function () {
            $fv = new FormView();
            $fv->Items[] = new FormViewItemText("txtTenantURL", "tenant_URL", "Name", $this->Tenant->URL);
            $fvTenantTypes = array();
            $tenanttypes = TenantType::Get();
            foreach ($tenanttypes as $tenanttype) {
                $fvTenantType = new FormViewItemChoiceValue($tenanttype->Title, $tenanttype->ID);
                $fvTenantType->Selected = $this->Tenant != null && $this->Tenant->Type != null && $tenanttype->ID == $this->Tenant->Type->ID;
                $fvTenantTypes[] = $fvTenantType;
            }
            $fv->Items[] = new FormViewItemChoice("cboTenantType", "tenant_TypeID", "Type", null, $fvTenantTypes);
            $fv->Items[] = new FormViewItemBoolean("chkStatus", "tenant_Status", "Status", $this->Tenant->Status == TenantStatus::Enabled);
            $fvDataCenters = array();
            $datacenters = DataCenter::Get();
            foreach ($datacenters as $datacenter) {
                $fvDataCenter = new FormViewItemChoiceValue($datacenter->Title, $datacenter->ID);
                $fvDataCenter->Selected = $this->Tenant != null && $this->Tenant->DataCenters->Contains($datacenter);
                $fvDataCenters[] = $fvDataCenter;
            }
            $fv->Items[] = new FormViewItemChoice("cboDataCenter", "tenant_DataCenterIDs", "Data centers", null, $fvDataCenters, true);
            $fvPaymentPlans = array();
            $paymentplans = PaymentPlan::Get();
            foreach ($paymentplans as $paymentplan) {
                $fvPaymentPlan = new FormViewItemChoiceValue($paymentplan->Title, $paymentplan->ID);
                $fvPaymentPlan->Selected = $this->Tenant != null && $this->Tenant->PaymentPlan != null && $paymentplan->ID == $this->Tenant->PaymentPlan->ID;
                $fvPaymentPlans[] = $fvPaymentPlan;
            }
            $fv->Items[] = new FormViewItemChoice("cboPaymentPlan", "tenant_PaymentPlanID", "Payment plan", null, $fvPaymentPlans);
            $fv->Items[] = new FormViewItemDateTime("txtActivationDate", "tenant_BeginTimestamp", "Activation date", $this->Tenant != null ? $this->Tenant->BeginTimestamp : null, true);
            $fv->Items[] = new FormViewItemDateTime("txtTerminationDate", "tenant_EndTimestamp", "Termination date", $this->Tenant != null ? $this->Tenant->EndTimestamp : null, true);
            $fv->Items[] = new FormViewItemMemo("txtDescription", "tenant_Description", "Description", $this->Tenant->Description);
            $fv->Render();
        });
        $path = System::GetVirtualPath();
        if ($path[1] != "clone") {
            $tbs->TabPages[] = new TabPage("tabCustomProperties", "Custom Properties", null, null, null, function () {
                $lv = new ListView();
                $lv->Width = "100%";
                $lv->EnableAddRemoveRows = true;
                $lv->Columns = array(new ListViewColumn("lvcProperty", "Property"), new ListViewColumn("lvcDescription", "Description"), new ListViewColumn("lvcValue", "Value"));
                $properties = $this->Tenant->GetProperties();
                foreach ($properties as $property) {
                    $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("lvcProperty", $property->Name), new ListViewItemColumn("lvcDescription", $property->Description), new ListViewItemColumn("lvcValue", null, null, function ($property) {
                        $property->DataType->RenderEditor($this->Tenant->GetPropertyValue($property), "Property_" . $property->ID);
                    }, $property)));
                }
                $lv->Render();
            });
            $tbs->TabPages[] = new TabPage("tabEnabledModules", "Enabled Modules", null, null, null, function () {
                $lv = new ListView();
                $lv->Width = "100%";
                $lv->EnableRowCheckBoxes = true;
                $lv->Columns = array(new ListViewColumn("lvcModule", "Module"), new ListViewColumn("lvcDescription", "Description"));
                $modules = Module::Get(null);
                foreach ($modules as $module) {
                    $item = new ListViewItem(array(new ListViewItemColumn("lvcModule", "<a href=\"" . System::ExpandRelativePath("~/tenant/modify/" . $this->Tenant->URL . "/modules/" . $module->ID . "\">" . $module->Title . "</a>", $module->Title)), new ListViewItemColumn("lvcDescription", $module->Description)));
                    $item->Checked = $this->Tenant->HasModule($module);
                    $lv->Items[] = $item;
                }
                $lv->Render();
            });
            $tbs->TabPages[] = new TabPage("tabGlobalObjects", "Global Objects", null, null, null, function () {
                $lv = new ListView();
                $lv->Width = "100%";
                $lv->EnableAddRemoveRows = true;
                $lv->Columns = array(new ListViewColumn("lvcObject", "Object"), new ListViewColumn("lvcDescription", "Description"), new ListViewColumn("lvcInstances", "Instances"));
                $objects = TenantObject::Get(null, $this->Tenant);
                foreach ($objects as $object) {
                    $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("lvcObject", $object->Name), new ListViewItemColumn("lvcDescription", $object->Description), new ListViewItemColumn("lvcInstances", "<a href=\"" . System::ExpandRelativePath("~/tenant/modify/" . $this->Tenant->URL . "/objects/" . $object->ID . "/instances") . "\">" . $object->CountInstances() . "</a>")));
                }
                $lv->Render();
            });
        }
        $tbs->SelectedTab = $tbs->TabPages[0];
        $tbs->Render();
        ?>
				<div class="Buttons">
					<input class="Button Default" type="submit" value="Save Changes" />
					<a class="Button" onclick="return nav('/tenant');" href="<?php 
        echo System::ExpandRelativePath("~/tenant");
        ?>
">Cancel</a>
				</div>
			</form>
			<script type="text/javascript">
			var TenantManagementPageMode =
			{
				"Create": 1,
				"Modify": 2
			}
			<?php 
        if ($this->Mode == TenantManagementPageMode::Create) {
            echo "var Mode = TenantManagementPageMode.Create;";
        } else {
            if ($this->Mode == TenantManagementPageMode::Modify) {
                echo "var Mode = TenantManagementPageMode.Modify;";
            }
        }
        ?>
			function form_OnSubmit()
			{
				if (Mode == TenantManagementPageMode.Create)
				{
					var xhr = new XMLHttpRequest();
					var tenantName = document.getElementById('txtTenantURL').value;
					
					xhr.open("GET", "/API/Tenant.php?action=exists&q=" + tenantName, false);
					xhr.send(null);
					
					var obj = JSON.parse(xhr.responseText);
					if (obj.result == "success" && obj.exists)
					{
						Notification.Show("Tenant '" + tenantName + "' already exists", "Please specify a unique tenant name", "Error");
						return false;
					}
				}
				
				Notification.Show("Changes were saved successfully", "Taking you back to the Tenant Management page", "Success");
				return true;
			}
			</script>
			<?php 
    }
 protected function RenderContent()
 {
     $items = PaymentPlan::Get();
     $lv = new ListView();
     $lv->Columns = array(new ListViewColumn("chPaymentPlanTitle", "Title"), new ListViewColumn("chPaymentPlanDescription", "Description"));
     foreach ($items as $item) {
         $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("chPaymentPlanTitle", "<a href=\"" . System::ExpandRelativePath("~/payment-plans/modify/" . $item->ID) . "\">" . $item->Title . "</a>"), new ListViewItemColumn("chPaymentPlanDescription", $item->Description)));
     }
     $lv->Render();
 }
    protected function RenderContent()
    {
        $tenants = Tenant::Get();
        ?>
		<p>There are <?php 
        echo count($tenants);
        ?>
 tenants in total.</p>
		<?php 
        $countActive = 0;
        $countExpired = 0;
        foreach ($tenants as $tenant) {
            if ($tenant->IsExpired()) {
                $countExpired++;
            } else {
                $countActive++;
            }
        }
        $disclosure = new Disclosure();
        $disclosure->Title = "Active Tenants (" . $countActive . ")";
        $disclosure->Expanded = true;
        $disclosure->BeginContent();
        /*
        $lv = new ListView("lvInactive");
        $lv->Columns = array
        (
        	new ListViewColumn("chTenantName", "Tenant Name"),
        	new ListViewColumn("chTenantType", "Tenant Type"),
        	new ListViewColumn("chDataCenters", "Data Centers"),
        	new ListViewColumn("chPaymentPlan", "Payment Plan"),
        	new ListViewColumn("chActivationDate", "Activation Date"),
        	new ListViewColumn("chTerminationDate", "Termination Date"),
        	new ListViewColumn("chDescription", "Description"),
        	new ListViewColumn("chActions", "Actions")
        );
        */
        $lv = new ListView();
        $lv->EnableRowCheckBoxes = true;
        $lv->Width = "100%";
        $lv->Columns = array(new ListViewColumn("lvcDescription", "Description"), new ListViewColumn("lvcTenantType", "Type"), new ListViewColumn("lvcPaymentPlan", "Payment Plan"), new ListViewColumn("lvcDataCenters", "Data Centers"), new ListViewColumn("lvcStartDate", "Start Date"), new ListViewColumn("lvcEndDate", "End Date"));
        foreach ($tenants as $tenant) {
            if ($tenant->IsExpired()) {
                continue;
            }
            $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("lvcDescription", "<div class=\"Title\">" . $tenant->URL . "</div><div class=\"Content\">" . $tenant->Description . "</div>" . "<div class=\"Footer\" style=\"padding: 8px;\">" . "<a class=\"Button Default\" href=\"" . System::ExpandRelativePath("~/tenant/launch/" . $tenant->URL) . "\" target=\"_blank\">Launch</a>" . "<span class=\"Separator\" />" . "<a class=\"Button\" href=\"" . System::ExpandRelativePath("~/tenant/modify/" . $tenant->URL) . "\">Modify</a>" . "<a class=\"Button\" href=\"" . System::ExpandRelativePath("~/tenant/clone/" . $tenant->URL) . "\">Clone</a>" . "<a class=\"Button\" href=\"" . System::ExpandRelativePath("~/tenant/delete/" . $tenant->URL) . "\">Delete</a>" . "</div>", $tenant->Description . " " . $tenant->URL), new ListViewItemColumn("lvcTenantType", $tenant->Type->Title), new ListViewItemColumn("lvcPaymentPlan", $tenant->PaymentPlan->Title), new ListViewItemColumn("lvcDataCenters", null), new ListViewItemColumn("lvcStartDate", $tenant->BeginTimestamp == null ? "(none)" : $tenant->BeginTimestamp), new ListViewItemColumn("lvcEndDate", $tenant->EndTimestamp == null ? "(none)" : $tenant->EndTimestamp)));
            /*
            ?>
            	<div class="Footer">
            		<a class="Button Default" href="<?php echo(System::ExpandRelativePath("~/tenant/launch/" . $tenant->URL)); ?>" target="_blank">Launch</a>
            		<span class="Separator" />
            		<a class="Button" onclick="return nav('/tenant/modify/<?php echo($tenant->URL); ?>');" href="<?php echo(System::ExpandRelativePath("~/tenant/modify/" . $tenant->URL)); ?>">Modify</a>
            		<a class="Button" href="<?php echo(System::ExpandRelativePath("~/tenant/clone/" . $tenant->URL)); ?>">Clone</a>
            		<a class="Button" href="<?php echo(System::ExpandRelativePath("~/tenant/delete/" . $tenant->URL)); ?>">Delete</a>
            	</div>
            </div>
            <?php
            */
        }
        $lv->Render();
        $disclosure->EndContent();
        $disclosure = new Disclosure();
        $disclosure->Title = "Inactive Tenants (" . $countExpired . ")";
        $disclosure->Expanded = true;
        $disclosure->BeginContent();
        $lv = new ListView();
        $lv->EnableRowCheckBoxes = true;
        $lv->Width = "100%";
        $lv->Columns = array(new ListViewColumn("lvcDescription", "Description"), new ListViewColumn("lvcTenantType", "Type"), new ListViewColumn("lvcPaymentPlan", "Payment Plan"), new ListViewColumn("lvcDataCenters", "Data Centers"), new ListViewColumn("lvcStartDate", "Start Date"), new ListViewColumn("lvcEndDate", "End Date"));
        foreach ($tenants as $tenant) {
            if (!$tenant->IsExpired()) {
                continue;
            }
            $lv->Items[] = new ListViewItem(array(new ListViewItemColumn("lvcDescription", "<div class=\"Title\">" . $tenant->URL . "</div><div class=\"Content\">" . $tenant->Description . "</div>", $tenant->Description . " " . $tenant->URL), new ListViewItemColumn("lvcTenantType", $tenant->Type->Title), new ListViewItemColumn("lvcPaymentPlan", $tenant->PaymentPlan->Title), new ListViewItemColumn("lvcDataCenters", null), new ListViewItemColumn("lvcStartDate", $tenant->BeginTimestamp == null ? "(none)" : $tenant->BeginTimestamp), new ListViewItemColumn("lvcEndDate", $tenant->EndTimestamp == null ? "(none)" : $tenant->EndTimestamp)));
        }
        $lv->Render();
        $disclosure->EndContent();
    }