Commit bf17a23a authored by Evren Kutar's avatar Evren Kutar

Merge branch 'Feature/issue21'

parents 562f8061 f13aa51b
......@@ -1636,6 +1636,6 @@ table.dataTable thead .sorting:after {
}
/* end page transitions */
.move-to-bottom, .move-to-top {
.move-to-bottom, .move-to-top, .move-to-bottom-modal, .move-to-top-modal {
margin-right: 10px !important;
}
\ No newline at end of file
......@@ -46,6 +46,7 @@ angular.module('ulakbus.crud', ['ui.bootstrap', 'schemaForm', 'formService'])
wf: routeParams.wf,
object_id: routeParams.key
};
scope.form_params[scope.param] = scope.param_id;
scope.model = scope.form_params.model;
scope.wf = scope.form_params.wf;
scope.param = scope.form_params.param;
......@@ -121,7 +122,7 @@ angular.module('ulakbus.crud', ['ui.bootstrap', 'schemaForm', 'formService'])
*
* @returns {object}
*/
.controller('CRUDListFormCtrl', function ($scope, $rootScope, $location, $http, $log, $modal, $timeout, Generator, $routeParams, CrudUtility) {
.controller('CRUDListFormCtrl', function ($scope, $rootScope, $location, $http, $log, $uibModal, $timeout, Generator, $routeParams, CrudUtility) {
// reloadData must be a json object
$scope.reload = function (reloadData) {
$scope.form_params.cmd = $scope.reload_cmd;
......@@ -157,6 +158,23 @@ angular.module('ulakbus.crud', ['ui.bootstrap', 'schemaForm', 'formService'])
return new Array(num);
};
$timeout(function () {
jQuery('.filterDate').datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "dd.mm.yy",
onSelect: function (date, inst) {
//scope.model[k] = date;
//if (scope.modalElements) {
// scope.validateModalDate(k);
//}
//else {
// scope.$broadcast('schemaForm.error.' + k, 'tv4-302', true);
//}
}
}).datepicker("setDate", new Date());
});
//
$scope.showCmd = function () {
CrudUtility.generateParam($scope, $routeParams, $routeParams.cmd);
......@@ -260,4 +278,12 @@ angular.module('ulakbus.crud', ['ui.bootstrap', 'schemaForm', 'formService'])
scope.$emit('formLocator');
}
}
})
.directive('crudFilters', function() {
return {
templateUrl: 'components/crud/templates/filter.html',
restrict: 'E',
replace: true
};
});
\ No newline at end of file
<crud-show-directive ng-if="object"></crud-show-directive>
<crud-form-directive ng-if="forms"></crud-form-directive>
<crud-list-directive ng-if="objects"></crud-list-directive>
\ No newline at end of file
<div class="row">
<div class="col-md-8">
<crud-show-directive ng-if="object"></crud-show-directive>
<crud-form-directive ng-if="forms"></crud-form-directive>
<crud-list-directive ng-if="objects"></crud-list-directive>
</div>
<crud-filters ng-if="meta.allow_filters === true" class="col-md-4 filtre"></crud-filters>
</div>
\ No newline at end of file
<div>
<h2>Filtrele</h2>
<div class="right-sidebar-box">
<div class="right-sidebar-messages">
<div class="right-sidebar-title clearfix">
<h3>Tarih Aralığı</h3>
</div>
<div class="right-sidebar-message-block">
<div class="col-md-6">
<br>
<label class="control-label" for="startDate">Baslangic</label>
<input type="text" name="startDate" class="form-control filterDate"/>
</div>
<div class="col-md-6">
<br>
<label class="control-label" for="endDate">Bitis</label>
<input type="text" name="endDate" class="form-control filterDate"/>
</div>
</div>
</div>
</div>
<div class="clearfix"></div>
<div class="right-sidebar-box">
<div class="right-sidebar-messages">
<div class="right-sidebar-title clearfix">
<br><br>
<h3>Filtre basligi</h3>
</div>
<div class="right-sidebar-message-block">
<div class="col-md-12">
<br>
<label class="control-label" for="filterSelect">Secim</label>
<select name="filterSelect" id="filterSelect">
<option value="1">option 1</option>
<option value="2">option 2</option>
<option value="3">option 3</option>
<option value="4">option 4</option>
</select>
</div>
</div>
</div>
</div>
<div class="clearfix"></div>
<div style="margin-top: 40px;">
<button type="button" class="btn btn-primary">Filtrele</button>
</div>
</div>
\ No newline at end of file
<div class="starter-template container">
<sort-directive ng-if="meta['allow_sort']===true"></sort-directive>
<search-directive ng-if="meta['allow_search']===true"></search-directive>
<div class="clearfix"></div>
<!--<h1>{{form_params.model || form_params.wf}}</h1>-->
......
<div ng-app="ulakbus.dashboard" class="dashboard">
<div class="starter-template">
<!--
<div class="row">
<div class="major-buttons">
<div class="col-md-4">
<a href=""><button type="button" class="btn btn-personnel brand-bg" ng-click="section(2)"><i class="fa fa-user"></i>
PERSONEL İŞLERİ</button></a>
</div>
<div class="col-md-4">
<a href=""><button type="button" class="btn btn-student brand-bg" ng-click="section(0)"><i
class="fa fa-graduation-cap"></i> ÖĞRENCİ İŞLERİ</button></a>
</div>
<div class="col-md-4">
<a href=""><button type="button" class="btn btn-system brand-bg" ng-click="section(3)"><i class="fa fa-gears"></i>
SİSTEM</button></a>
</div>
</div>
</div>
-->
<div class="dashboard-main-search clearfix">
<div class="dashboard-student-search">
<div class="dashboard-student-search" data-step="2"
data-intro="isim veya tcno ile öğrenci araması yapabilirsiniz.">
<center>
<h3>ÖĞRENCİ</h3>
<input type="text" placeholder="Öğrenci ara" ng-model="student_kw" ng-keyup="search('ogrenci')">
......@@ -37,7 +19,8 @@
<!-- end of dashboard-student-search-results -->
</div>
<!-- end of dashboard-student-search -->
<div class="dashboard-personnel-search">
<div class="dashboard-personnel-search" data-step="3"
data-intro="isim veya tcno ile personel araması yapabilirsiniz.">
<center>
<h3>PERSONEL</h3>
<input type="text" placeholder="Personel ara" ng-model="staff_kw" ng-keyup="search('personel')">
......@@ -58,7 +41,8 @@
<div class="right-sidebar">
<div class="right-sidebar-box">
<div class="right-sidebar-box" data-step="4"
data-intro="mesajlar, yapılan görevlerin son durumları, duyurular ve son yapılan işlemleri buradan takip edebilirsiniz.">
<div class="right-sidebar-messages">
<div class="right-sidebar-title clearfix">
......@@ -93,21 +77,6 @@
<h3>Görevler</h3>
<span><a href="javascript:void(0)">Tüm Görevler</a></span>
</div>
<!-- end of right-sidebar-title -->
<!--<div class="right-sidebar-task-block">-->
<!--<div class="task-type">Devam Eden Görevler</div>-->
<!--<a href="javascript:void(0)">-->
<!--<div class="task-title">Öğrenci Kayıt</div>-->
<!--<div class="progress">-->
<!--<div class="progress-bar" role="progressbar" aria-valuenow="25" aria-valuemin="0" aria-valuemax="100" style="min-width: 2em; width:25%;">-->
<!--25%-->
<!--</div>-->
<!--</div>-->
<!--&lt;!&ndash; end of progress &ndash;&gt;-->
<!--</a>-->
<!--</div>-->
<!-- end of right-sidebar-task-block -->
<div class="right-sidebar-task-block">
<!--<div class="task-type">Onay Bekleyen Görevler</div>-->
......@@ -152,13 +121,6 @@
<h3>Son İşlemler</h3>
<span><a href="javascript:void(0)">Tüm İşlemler</a></span>
</div>
<!-- end of right-sidebar-title -->
<!--<div class="right-sidebar-last-action-block">-->
<!--<a href="javascript:void(0)">Birinci dönem bitimine 10 gün kaldı.</a>-->
<!--<a href="javascript:void(0)">Ders seçimi işlemleri xx tarihinde başlayacaktır.</a>-->
<!--</div>-->
<!-- end of right-sidebar-status-block -->
</div>
<!-- end of right-sidebar-status -->
......
......@@ -22,6 +22,8 @@
<link rel="stylesheet" href="bower_components/metisMenu/dist/metisMenu.min.css">
<link rel="stylesheet" href="bower_components/angular-loading-bar/build/loading-bar.min.css">
<link rel="stylesheet" href="bower_components/font-awesome/css/font-awesome.min.css" type="text/css">
<link rel="stylesheet" href="bower_components/intro.js/introjs.css" type="text/css">
<link rel="stylesheet" href="bower_components/intro.js/themes/introjs-nassim.css" type="text/css">
</head>
<body>
......@@ -84,6 +86,7 @@
<!--<script src="bower_components/json3/lib/json3.js"></script>-->
<script src="bower_components/angular-loading-bar/build/loading-bar.min.js"></script>
<script src="bower_components/metisMenu/dist/metisMenu.min.js"></script>
<script src="bower_components/intro.js/intro.js"></script>
<!--<script src="bower_components/Chart.js/Chart.js"></script>-->
<script src="shared/translations.js"></script>
<script src="tmp/templates.js"></script>
......
......@@ -23,6 +23,8 @@
<link rel="stylesheet" href="bower_components/metisMenu/dist/metisMenu.min.css">
<link rel="stylesheet" href="bower_components/angular-loading-bar/build/loading-bar.min.css">
<link rel="stylesheet" href="bower_components/font-awesome/css/font-awesome.min.css" type="text/css">
<link rel="stylesheet" href="bower_components/intro.js/introjs.css" type="text/css">
<link rel="stylesheet" href="bower_components/intro.js/themes/introjs-nassim.css" type="text/css">
<!-- @endif -->
<!-- @if NODE_ENV == 'PRODUCTION' -->
......@@ -92,6 +94,7 @@
<!--<script src="bower_components/json3/lib/json3.js"></script>-->
<script src="bower_components/angular-loading-bar/build/loading-bar.min.js"></script>
<script src="bower_components/metisMenu/dist/metisMenu.min.js"></script>
<script src="bower_components/intro.js/intro.js"></script>
<!--<script src="bower_components/Chart.js/Chart.js"></script>-->
<script src="shared/translations.js"></script>
<script src="tmp/templates.js"></script>
......
......@@ -124,6 +124,56 @@ app.directive('logout', function ($http, $location, RESTURL) {
};
})
/**
*
*/
.directive('sortDirective', function (Generator, $log) {
return {
templateUrl: 'shared/templates/directives/sort.html',
restrict: 'E',
replace: true,
link: function ($scope) {
// titleMap will be list
$scope.titleMap = [{ value: "artan", name: "Artan" }, { value: "azalan", name: "Azalan" }];
$scope.sortForm = [
{key: 'sortbox', htmlClass: "pull-left", type: "select", titleMap: $scope.titleMap},
{type: "submit", title: "Sırala", htmlClass: "pull-left"}];
$scope.sortSchema = {
type: "object",
properties: {
sortbox: {
type: "select",
title: "Sırala"
}
},
required: ['sortbox']
};
$scope.sortModel = {sortbox: ''};
$scope.sortSubmit = function (form) {
$scope.$broadcast('schemaFormValidate');
if (form.$valid) {
var sortparams = {
url: $scope.wf,
token: $scope.$parent.token,
object_id: $scope.$parent.object_id,
form_params: {
model: $scope.$parent.form_params.model,
cmd: $scope.$parent.reload_cmd,
flow: $scope.$parent.form_params.flow,
param: 'sort',
id: $scope.sortModel.sortbox
}
};
Generator.submit(sortparams);
}
}
}
};
})
/**
* collapseMenu directive
......@@ -179,8 +229,10 @@ app.directive('logout', function ($http, $location, RESTURL) {
//controller: "CRUDAddEditCtrl",
replace: true,
link: function ($scope) {
$scope.style = 'width:calc(100% - 300px);';
$scope.$on('$routeChangeStart', function () {
$scope.style = $location.path() === '/dashboard' ? 'width:calc(100% - 300px);' : 'width:%100 !important;';
console.log('style of header', $location.path())
});
}
};
......
<form class="form-inline col-md-8" id="search" name="search" sf-schema="searchSchema" sf-form="searchForm"
<form class="form-inline pull-right" id="search" name="search" sf-schema="searchSchema" sf-form="searchForm"
sf-model="searchModel"
ng-submit="searchSubmit(search)"></form>
\ No newline at end of file
......@@ -4,7 +4,8 @@
</div>
<div class="sidebar-nav navbar-collapse">
<ul class="nav in" id="side-menu" ng-class="{hidden: $root.loggedInUser != true}">
<ul class="nav in" id="side-menu" ng-class="{hidden: $root.loggedInUser != true}" data-step="1"
data-intro="seçilen personele veya öğrenciye göre ilgili menüler yer almaktadır. yapılacak işlemi buradan seçebilirsiniz.">
<!--<sidebar-search></sidebar-search>-->
<li ui-sref-active="active">
<a href="#/dashboard" ng-click="breadcrumb(['Panel'])"><i class="fa fa-dashboard fa-fw"></i>
......@@ -24,10 +25,9 @@
</a>
<ul class="nav nav-second-level" ng-class="{hidden: $root.collapsed}">
<li ng-repeat="(k, v) in item">
<a ng-if="v['baseCategory'] == 'other'" ng-href="#{{v.url}}" ng-
ng-click="breadcrumb([key, v.text], $event)">{{v.text}}</a>
<a ng-if="v['baseCategory'] == 'ogrenci' || v['baseCategory'] == 'personel'"
ng-href="#/{{v.wf}}/{{v.model}}?{{v.param}}={{$root.selectedUser.key}}"
<!--<a ng-if="v.model" ng-href="#{{v.url}}" ng- -->
<!--ng-click="breadcrumb([key, v.text], $event)">{{v.text}}</a>-->
<a ng-href="#/{{v.wf}}/{{v.model}}?{{v.param}}={{$root.selectedUser.key}}"
ng-click="breadcrumb([key, v.text], $event)">{{v.text}}</a>
</li>
</ul>
......@@ -37,9 +37,10 @@
</div>
<!-- /.sidebar-collapse -->
<footer ng-class="{hidden: $root.collapsed}">
<a class="btn btn-large btn-success" href="javascript:void(0);" onclick="javascript:introJs().setOptions({
'nextLabel': 'Sonraki', 'prevLabel': 'Öncek', 'skipLabel': 'Atla', 'doneLabel': 'Bitir' }).start();">Yardım
Rehberi</a><br>
<span>v <app-version></app-version> &copy; ZetaOps</span>
</footer>
</div>
<form class="form-inline pull-left" id="sort" name="sort" sf-schema="sortSchema" sf-form="sortForm"
sf-model="sortModel"
ng-submit="sortSubmit(sort)"></form>
\ No newline at end of file
......@@ -19,7 +19,7 @@
</span>
<input type="text"
ng-model="$$value$$"
typeahead="item.name for item in form.titleMap"
uib-typeahead="item as item.name for item in form.titleMap | filter:{name:$viewValue}"
typeahead-on-select="form.onSelect($item)"
placeholder="{{form.title}}"
ng-model-options="form.ngModelOptions"
......
<div class="modal-body">
<h3>{{schema.title}}</h3>
<form name="linkedModelForm" sf-schema="schema" sf-form="form" sf-model="model"></form>
<div class="buttons-on-top-modal"></div>
<hr>
<form name="linkedModelForm" sf-schema="schema" sf-form="form" sf-model="model" modal-form-locator></form>
<hr>
<div class="buttons-on-bottom-modal"></div>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary" ng-click="onSubmit(linkedModelForm)">OK</button>
<!--<button type="submit" class="btn btn-primary" ng-click="onSubmit(linkedModelForm)">OK</button>-->
<button type="button" class="btn btn-warning" ng-click="cancel()">Cancel</button>
</div>
\ No newline at end of file
<div class="modal-body">
<h3>{{schema.title}}</h3>
<form name="listnodeform" sf-schema="schema" sf-form="form" sf-model="model"></form>
<form name="modalForm" sf-schema="schema" sf-form="form" sf-model="model" modal-form-locator></form>
</div>
<div class="modal-footer">
<button type="submit" class="btn btn-primary" ng-click="onSubmit(listnodeform)">OK</button>
<button type="submit" class="btn btn-primary" ng-click="onNodeSubmit()">OK</button>
<button type="button" class="btn btn-warning" ng-click="cancel()">Cancel</button>
</div>
\ No newline at end of file
<div class="form-group {{form.htmlClass}} schema-form-select col-md-12"
ng-class="{'has-error': form.disableErrorState !== true && hasError(), 'has-success': form.disableSuccessState !== true && hasSuccess(), 'has-feedback': form.feedback !== false}">
<div class="col-md-8">
<label class="control-label {{form.labelHtmlClass}}" ng-show="showTitle()">
{{form.title}}
</label>
<div class="row">
<div class="form-group input-group">
<input type="text"
placeholder="{{form.title}} filtrele"
class="form-control {{form.fieldHtmlClass}}"
name="filter-interface"
ng-model="form.filterValue"
ng-keyup="form.appendFiltered(form.filterValue)"
/>
</div>
</div>
<div class="row">
<div class="col-md-5">
<label for="filterItems">{{form.title}} Liste</label>
<select ng-model="selectedItemsModel"
value="$$value$$"
ng-model-options="form.ngModelOptions"
ng-disabled="form.readonly"
sf-changed="form"
class="form-control {{form.fieldHtmlClass}}"
schema-validate="form"
ng-options="item as item.name for item in form.filteredItems"
name="filterItems" multiple>
</select>
</div>
<div class="col-md-1">
<a href="javascript:void(0)" ng-click="form.select(selectedItemsModel)"><i class="fa fa-arrow-right fa-fw"></i></a><br>
<a href="javascript:void(0)" ng-click="form.deselect(selectedFilteredItemsModel)"><i class="fa fa-arrow-left fa-fw"></i></a>
</div>
<div class="col-md-5">
<label for="selectedItems">Seçilenler</label>
<select ng-model="selectedFilteredItemsModel"
value="$$value$$"
ng-model-options="form.ngModelOptions"
ng-disabled="form.readonly"
sf-changed="form"
class="form-control {{form.fieldHtmlClass}}"
schema-validate="form"
ng-options="item as item.name for item in form.selectedFilteredItems"
name="selectedItems" multiple>
</select>
</div>
</div>
<div class="help-block" sf-message="form.description"></div>
</div>
<div class="col-md-4">
<a href="javascript:void(0);" add-modal-for-linked-model>
<i class="fa fa-plus-circle fa-fw"></i>
</a>
</div>
</div>
\ No newline at end of file
<div class="tablescroll">
<table class="table table-bordered" style="background-color:#fff;">
<thead>
<tr ng-if="node.schema.formType=='Node'">
{{node.model}}
<!--<table class="table table-bordered" style="background-color:#fff;">-->
<!--<thead>-->
<!--<tr ng-if="node.schema.formType=='Node'">-->
<!--&lt;!&ndash;<th colspan="2">&ndash;&gt;-->
<!--&lt;!&ndash;<label>&ndash;&gt;-->
<!--&lt;!&ndash;<input type="checkbox" style="zoom:1.5; margin:5px 0 0 8px;">&ndash;&gt;-->
<!--&lt;!&ndash;Hepsini Seç&ndash;&gt;-->
<!--&lt;!&ndash;</label>&ndash;&gt;-->
<!--&lt;!&ndash;</th>&ndash;&gt;-->
<!--<th ng-repeat="(key,value) in node.model">{{ key }}</th>-->
<!--<th>İşlem</th>-->
<!--</tr>-->
<!--<tr ng-if="node.schema.formType=='ListNode'">-->
<!--<th colspan="2">-->
<!--<label>-->
<!--<input type="checkbox" style="zoom:1.5; margin:5px 0 0 8px;">-->
<!--Hepsini Seç-->
<!--</label>-->
<!--</th>-->
<th ng-repeat="(key,value) in node.model">{{ key }}</th>
<th>İşlem</th>
</tr>
<tr ng-if="node.schema.formType=='ListNode'">
<th colspan="2">
<label>
<input type="checkbox" style="zoom:1.5; margin:5px 0 0 8px;">
Hepsini Seç
</label>
</th>
<th ng-repeat="(key,value) in node.model[0]">{{ key }}</th>
<th>İşlem</th>
</tr>
</thead>
<tbody ng-class="{hidden: node.lengthModels < 1}">
<!--<th ng-repeat="(key,value) in node.model[0]">{{ key }}</th>-->
<!--<th>İşlem</th>-->
<!--</tr>-->
<!--</thead>-->
<!--<tbody ng-class="{hidden: node.lengthModels < 1}">-->
<tr ng-if="node.schema.formType=='Node'">
<!--<tr ng-if="node.schema.formType=='Node'">-->
<!--&lt;!&ndash;<td width="60">&ndash;&gt;-->
<!--&lt;!&ndash;<label>&ndash;&gt;-->
<!--&lt;!&ndash;<input type="checkbox" style="zoom:1.5; margin:5px 0 0 8px;">&ndash;&gt;-->
<!--&lt;!&ndash;</label>&ndash;&gt;-->
<!--&lt;!&ndash;</td>&ndash;&gt;-->
<!--&lt;!&ndash;<th scope="row" style="text-align:center">1</th>&ndash;&gt;-->
<!--<td ng-repeat="value in node.model">{{ value }}</td>-->
<!--<td>-->
<!--<button modal-for-nodes="{{node.schema.model_name}},{{node.schema.formType}},edit">Düzenle</button><br>-->
<!--<button>Sil</button>-->
<!--</td>-->
<!--</tr>-->
<!--<tr ng-repeat="listnodemodel in node.model" ng-if="node.schema.formType=='ListNode'">-->
<!--<td width="60">-->
<!--<label>-->
<!--<input type="checkbox" style="zoom:1.5; margin:5px 0 0 8px;">-->
<!--</label>-->
<!--</td>-->
<!--<th scope="row" style="text-align:center">1</th>-->
<td ng-repeat="value in node.model">{{ value }}</td>
<td>
<button modal-for-nodes="{{node.schema.model_name}},{{node.schema.formType}},edit">Düzenle</button><br>
<button>Sil</button>
</td>
</tr>
<tr ng-repeat="listnodemodel in node.model" ng-if="node.schema.formType=='ListNode'">
<td width="60">
<label>
<input type="checkbox" style="zoom:1.5; margin:5px 0 0 8px;">
</label>
</td>
<th scope="row" style="text-align:center">{{$index+1}}</th>
<td ng-repeat="(k, v) in listnodemodel">{{ v }}</td>
<td>
<button modal-for-nodes="{{node.schema.model_name}},{{node.schema.formType}},edit,{{$index}}">Düzenle</button><br>
<button>Sil</button>
</td>
</tr>
<!--<th scope="row" style="text-align:center">{{$index+1}}</th>-->
<!--<td ng-repeat="(k, v) in listnodemodel">{{ v }}</td>-->
<!--<td>-->
<!--<button modal-for-nodes="{{node.schema.model_name}},{{node.schema.formType}},edit,{{$index}}">Düzenle</button><br>-->
<!--<button>Sil</button>-->
<!--</td>-->
<!--</tr>-->
</tbody>
</table>
<!--</tbody>-->
<!--</table>-->
</div>
\ No newline at end of file
This diff is collapsed.
......@@ -14,14 +14,15 @@
"angular-route": "1.4.x",
"angular-resource": "1.4.x",
"angular-cookies": "1.4.x",
"angular-bootstrap": "0.13.1",
"angular-bootstrap": "0.14.3",
"font-awesome": "4.3.0",
"angular-schema-form": "0.8.3",
"angular-loading-bar": "~0.8.0",
"angular-toggle-switch": "~1.2.1",
"metisMenu": "~1.1.3",
"angular-chart.js": "~0.5.2",
"angular-gettext": "2.1.0"
"angular-gettext": "2.1.0",
"intro.js": "1.1.1"
},
"resolutions": {
"angular": "1.4.7"
......
This diff is collapsed.
This diff is collapsed.
......@@ -1649,7 +1649,7 @@ table.dataTable thead .sorting:after {
}
/* end page transitions */
.move-to-bottom, .move-to-top {
.move-to-bottom, .move-to-top, .move-to-bottom-modal, .move-to-top-modal {
margin-right: 10px !important;
}
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment