lessonplansAssignmentsGrid = function(day, motherStore) {
	var colSelect = new Ext.grid.CheckboxSelectionModel({});
	var columns = [
	colSelect, /*   {header: '<center><div style="width:16px;height:16px;" class="info_gray" /></center>', width: 38, sortable: true, dataIndex: 'assignmenttype'},  */ {
		header: 'Assignment',
		id: 'assignment',
		sortable: true,
		dataIndex: 'assignment'
	}];
	lessonplansAssignmentsGrid.superclass.constructor.call(this, {
		tbar: [{
			xtype: 'splitbutton',
			iconCls: 'add',
			text: 'Add Assignment',
			id: day + 'LP_add',
			tooltip: 'Add an assignment',
			disabled: true,
			listeners: {
				click: function(b) { // create Assignment
					var grid = Ext.getCmp(day + 'LP_grid');
					if (grid.store.getCount() >= 2) {
						Ext.Msg.alert('Status', 'There can only be 2 assignments setup for a given day.');
						return false;
					}
					jsLoader.load('teacher_tools/' + modulizerPath + '/lessonplans_manage_assignment_popup.js');
					jsLoader.loadedCall(
					function() {
						lessonplansManageAssignmentPopup.showWithArgs(true, grid);
					});
				}
			},
			menu: [{
				text: 'No homework',
				iconCls: 'prohibited',
				listeners: {
					click: function(b) { // no homework
						plandate = Ext.getCmp(day + 'LP').plandate.format('m/d/Y');
						Ext.getCmp(day + 'LP_grid').store.loadData(new Array(new Array('No homework', plandate, plandate)), true);
					}
				}
			},
			{
				iconCls: 'pencil',
				text: 'Edit assignment',
				id: day + 'LP_mng',
				listeners: {
					click: function(b) { // manage Assignment
						var grid = Ext.getCmp(day + 'LP_grid');
						var records = grid.selModel.selections.items;
						if (records.length != 1) {
							Ext.Msg.alert('Status', 'Please select one assignment to make changes to.');
							return false;
						}
						jsLoader.load('teacher_tools/' + modulizerPath + '/lessonplans_manage_assignment_popup.js');
						jsLoader.loadedCall(
						function() {
							lessonplansManageAssignmentPopup.showWithArgs(false, Ext.getCmp(day + 'LP_grid'), (Ext.isArray(records) ? records[0].id : records.id));
						});
					}
				}
			},
			{
				text: 'Delete assignment(s)',
				iconCls: 'delete',
				listeners: {
					click: function(b) { // delete assignment
						var grid = Ext.getCmp(day + 'LP_grid');
						var records = grid.selModel.selections.items;
						if (!records.length) {
							Ext.Msg.alert('Status', 'Please select an assignment to delete.');
							return false;
						}
						Ext.Msg.show({
							title: 'Delete Assignment(s)',
							msg: 'Are you sure you want to delete the selected assignments for ' + day + '?',
							buttons: Ext.Msg.YESNO,
							icon: Ext.MessageBox.WARNING,
							fn: function(btn) {
								if (btn == 'yes') {
									var grid = Ext.getCmp(day + 'LP_grid');
									grid.store.remove(grid.selModel.getSelections());
								}
							}
						});
					}
				}
			},
			{
				iconCls: 'magnifier',
				text: 'View due assignments',
				listeners: {
					click: function(b) { // view a list of Assignments due today
						var dateOffset = daysofweek.indexOf(day);
						var date = Ext.getCmp('lessonplan_weekof').getValue();
						date = date.add(Date.DAY, dateOffset);
						jsLoader.load('teacher_tools/' + modulizerPath + '/lessonplans_dueassignments.js');
						jsLoader.loadedCall(
						function() {
							lpViewAssignmentsDue.showWithArgs(date);
						});
					}
				}
			}]
		}],
		store: assignmentStore.createChildStore('plandate'),
		id: day + 'LP_grid',
		day: day,
		sm: colSelect,
		columns: columns,
		border: false,
		autoHeight: true,
		autoScroll: true,
		autoExpandColumn: 'assignment',
		listeners: {
			rowdblclick: function(grid, rowIndex, e) {
				Ext.getCmp(day + 'LP_mng').fireEvent('click');
			}
		}
	});
}
Ext.extend(lessonplansAssignmentsGrid, Ext.grid.GridPanel);

