|
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="store.aspx.cs" Inherits="Example.Web.store" %> |
|
<%@ Import Namespace="EPiServer.Data.Dynamic" %> |
|
|
|
<!DOCTYPE html> |
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml"> |
|
<head runat="server"> |
|
<title>Skjema Data</title> |
|
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-combined.min.css" rel="stylesheet"> |
|
<style> |
|
.Id { display: none } |
|
</style> |
|
<script type="text/javascript" src="/Static/Scripts/jquery-1.8.2.min.js"></script> |
|
<script type="text/javascript"> |
|
function exportToExcel(title, $table) { |
|
var uri = 'data:application/vnd.ms-excel,' + encodeURIComponent($table.wrap('<div />').parent().html()); |
|
|
|
var downloadLink = document.createElement("a"); |
|
downloadLink.href = uri; |
|
downloadLink.download = title; |
|
|
|
document.body.appendChild(downloadLink); |
|
downloadLink.click(); |
|
document.body.removeChild(downloadLink); |
|
} |
|
|
|
function deleteRow(storeIndex, itemId) { |
|
if (!confirm("Er du sikker på at du vil slette denne raden?")) |
|
return; |
|
|
|
$.ajax({ |
|
type: "POST", |
|
url: "store.aspx/DeleteRow", |
|
data: "{ 'storeIndex' : " + storeIndex + ", 'itemId': '" + itemId + "'}", |
|
contentType: "application/json; charset=utf-8", |
|
dataType: "json", |
|
success: function (msg) { |
|
if (msg.d == "ok") { |
|
return window.location.href = window.location.href; |
|
} |
|
|
|
alert(msg.d); |
|
} |
|
}); |
|
} |
|
|
|
$(document).ready(function() { |
|
$('h1 .btn').click(function(e) { |
|
e.preventDefault(); |
|
|
|
var $btn = $(this), |
|
$header = $btn.parents('h1'), |
|
$table = $header.next('table'); |
|
|
|
exportToExcel($header.attr('data-title'), $table); |
|
}); |
|
|
|
$('.delete.btn').click(function (e) { |
|
e.preventDefault(); |
|
|
|
var storeIndex = $(this).attr('data-storeId'); |
|
var itemId = $(this).attr('data-itemId'); |
|
|
|
deleteRow(storeIndex, itemId); |
|
}) |
|
|
|
}); |
|
|
|
|
|
|
|
|
|
</script> |
|
</head> |
|
<body> |
|
<form id="form1" runat="server"> |
|
<div> |
|
<% for (var i = 0; i < stores.Count; i++) |
|
{ |
|
var emptyStoreObject = stores[i]; |
|
var properties = emptyStoreObject.GetType().GetProperties(); |
|
var store = emptyStoreObject.GetType().GetStore(); |
|
var storedObjects = store.LoadAll(); |
|
|
|
if (storedObjects == null || !storedObjects.Any()) |
|
continue; |
|
|
|
%> |
|
<h1 data-title="<%= TranslateName(emptyStoreObject.GetType().Name)%>"> |
|
<%= TranslateName(emptyStoreObject.GetType().Name)%> |
|
<small>Antall: <%= storedObjects.Count()%> <a href="#" class="btn">Eksporter til Excel</a></small> |
|
</h1> |
|
|
|
|
|
<table class="table table-bordered table-striped"> |
|
<tr> |
|
<% foreach (var propertyInfo in properties) { %> |
|
<th class="<%= propertyInfo.Name %>"><%= TranslateName(propertyInfo.Name)%></th> |
|
<% } %> |
|
<th style="width: 28px;"> </th> |
|
</tr> |
|
|
|
<% foreach (IDynamicData obj in storedObjects){ %> |
|
|
|
<tr> |
|
<% foreach (var propertyInfo in properties) |
|
{ %> |
|
<td class="<%= propertyInfo.Name %>"><%= GetPropertyValue(obj, propertyInfo)%></td> |
|
<% } %> |
|
<td style="text-align: center"> |
|
<a class="delete btn btn-mini btn-danger" href="#" data-storeId="<%= i %>" data-itemId="<%= obj.Id %>"> |
|
<i class="icon icon-trash icon-white"></i> |
|
</a> |
|
</td> |
|
</tr> |
|
|
|
<% } %> |
|
</table> |
|
<% } %> |
|
</div> |
|
</form> |
|
</body> |
|
</html> |