Skip to content

Instantly share code, notes, and snippets.

View danieleli's full-sized avatar

Dan Schlossberg danieleli

View GitHub Profile
@danieleli
danieleli / Models.cs
Created March 15, 2012 13:27
Mvc Models
public class MyModel
{
[DisplayFormat(DataFormatString = "{0:MM/dd/yy}", ApplyFormatInEditMode = true)]
public DateTime DateField { get; set; }
}
@danieleli
danieleli / Create.cshtml
Created January 25, 2012 17:17
Mvc Views
@model MaidBrigade.Web.Models.Foo
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<fieldset><legend>Create @(ViewBag.Title)</legend>
@Html.Partial("_CreateOrEdit", Model)
<p>
@Html.ActionLink("Back to List", "Index")
<input type="submit" value="Create" class="btn primary" />
</p>
@danieleli
danieleli / GController.cs
Last active December 20, 2017 14:05
Generic Controller Blogpost
// Generic Controller base class
public abstract class GController<TModel> : Controller where TModel : ModelRoot
{
private readonly Mvc4Context _context = new Mvc4Context();
// Public accessors for dbContext
public Mvc4Context DbContext { get { return _context; } }
public virtual ViewResult Index()
@danieleli
danieleli / Foo.cs
Created January 14, 2012 17:29
A Generic Controller and Repository
// Model with ForiegnKey
public class Foo : ModelBase
{
public string SomeProperty { get; set; }
public int BarId { get; set; }
public Bar Bar { get; set; }
}
@danieleli
danieleli / crud-helpers.js
Created December 24, 2011 21:34
Knockout Helpers
$(function() {
$.ajaxSetup({
cache: false
});
return window.CrudHelpers = {
ajaxAdd: function(url, dataToSave, callback) {
return this.ajaxModify(url, dataToSave, "POST", "add", callback);
},
ajaxUpdate: function(url, dataToSave, successCallback) {
dataToSave.ModifyDate = new Date();
@danieleli
danieleli / ko-projected-observable.js
Created December 24, 2011 21:33
Knockout Protected Observables
//http://www.knockmeout.net/2011/03/guard-your-model-accept-or-cancel-edits.html
//wrapper to an observable that requires accept/cancel
$(function () {
ko.protectedObservable = function (initialValue) {
var result, _actualValue, _tempValue;
if (initialValue && typeof (initialValue) === "string" && initialValue.indexOf("/Date(") === 0) {
initialValue = new Date(parseInt(initialValue.match(/\d+/))).toString();
}
_actualValue = ko.observable(initialValue);
@danieleli
danieleli / date.js
Created December 24, 2011 21:05
Javascript Date Extensions
Date.prototype.formatMMDDYYY = function() {
return this.getMonth() + 1 + '/' + this.getDate() + '/' + this.getFullYear();
};
Date.prototype.formatMMDD = function() {
return this.getMonth() + 1 + '/' + this.getDate();
};
Date.prototype.addDays = function(days) {
days = this.getDate() + days;
@danieleli
danieleli / common.less
Created December 24, 2011 15:33
less / css - common functions
.clear_margin_padding() {
margin: 0 !important;
padding: 0 !important;
padding-left: 0px !important;
padding-right: 0px !important;
}
.rounded-corners (@radius: 5px) {
border-radius: @radius;
-webkit-border-radius: @radius;
@danieleli
danieleli / gist:1398617
Created November 28, 2011 00:52
jquery and css links on dropbox
<link href="//dl.dropbox.com/u/148605/compass3/public/stylesheets/parkway_west.css" rel="stylesheet" type="text/css" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js" type="text/javascript"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js" type="text/javascript"></script>
<script type="text/javascript" language="javascript" src="//dl.dropbox.com/u/148605/compass3/public/javascripts/parkway_west.js" ></script>
@danieleli
danieleli / border-test.css
Created November 16, 2011 19:44
Vertical borders for variable height, centered content
body{ margin: 0; position: relative; }
.page-width { width: 960px; margin: 0 auto; }
/* BEGIN: side borders */
#border-wrapper {
z-index: 100;
position: absolute;
width: 100%;
height: 100%;