Commit a91d4a5b authored by Evren Kutar's avatar Evren Kutar

if input type model use dropdown and as you type together

parent 5949ecfd
...@@ -21,7 +21,7 @@ var app = angular.module( ...@@ -21,7 +21,7 @@ var app = angular.module(
'ulakbus.error_pages', 'ulakbus.error_pages',
'ulakbus.crud', 'ulakbus.crud',
'ulakbus.version', 'ulakbus.version',
'schemaForm', //'schemaForm',
'gettext', 'gettext',
'ulakbus.uitemplates', 'ulakbus.uitemplates',
]). ]).
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
'use strict'; 'use strict';
var crud = angular.module('ulakbus.crud', ['ngRoute', 'schemaForm', 'formService', 'ui.bootstrap']); var crud = angular.module('ulakbus.crud', ['ui.bootstrap', 'schemaForm', 'formService']);
/** /**
......
...@@ -64,26 +64,26 @@ ...@@ -64,26 +64,26 @@
</div> </div>
<script src="bower_components/angular/angular.js"></script> <script src="bower_components/angular/angular.js"></script>
<script src="bower_components/jquery/dist/jquery.min.js"></script> <script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script> <script src="bower_components/bootstrap/dist/js/bootstrap.js"></script>
<script src="bower_components/angular-route/angular-route.min.js"></script> <script src="bower_components/angular-route/angular-route.js"></script>
<script src="bower_components/angular-cookies/angular-cookies.min.js"></script> <script src="bower_components/angular-cookies/angular-cookies.js"></script>
<script src="bower_components/angular-resource/angular-resource.min.js"></script> <script src="bower_components/angular-resource/angular-resource.js"></script>
<script src="bower_components/angular-bootstrap/ui-bootstrap.min.js"></script> <script src="bower_components/angular-bootstrap/ui-bootstrap.js"></script>
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script> <script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script>
<script src="bower_components/angular-sanitize/angular-sanitize.min.js"></script> <script src="bower_components/angular-sanitize/angular-sanitize.js"></script>
<script src="bower_components/tv4/tv4.js"></script> <script src="bower_components/tv4/tv4.js"></script>
<script src="bower_components/objectpath/lib/ObjectPath.js"></script> <script src="bower_components/objectpath/lib/ObjectPath.js"></script>
<script src="bower_components/angular-schema-form/dist/schema-form.min.js"></script> <script src="bower_components/angular-schema-form/dist/schema-form.js"></script>
<script src="bower_components/angular-schema-form/dist/bootstrap-decorator.min.js"></script> <script src="bower_components/angular-schema-form/dist/bootstrap-decorator.js"></script>
<script src="bower_components/angular-gettext/dist/angular-gettext.min.js"></script> <script src="bower_components/angular-gettext/dist/angular-gettext.js"></script>
<!-- TODO: check all js and remove unused --> <!-- TODO: check all js and remove unused -->
<script src="bower_components/json3/lib/json3.min.js"></script> <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/angular-loading-bar/build/loading-bar.js"></script>
<script src="bower_components/metisMenu/dist/metisMenu.min.js"></script> <script src="bower_components/metisMenu/dist/metisMenu.js"></script>
<script src="bower_components/Chart.js/Chart.min.js"></script> <script src="bower_components/Chart.js/Chart.js"></script>
<script src="shared/translations.js"></script> <script src="shared/translations.js"></script>
<script src="tmp/templates.js"></script> <script src="tmp/templates.js"></script>
<script src="app.js"></script> <script src="app.js"></script>
...@@ -102,7 +102,6 @@ ...@@ -102,7 +102,6 @@
<script src="components/crud/crud_controller.js"></script> <script src="components/crud/crud_controller.js"></script>
<script src="components/uitemplates/uitemplates.js"></script> <script src="components/uitemplates/uitemplates.js"></script>
<script src="components/error_pages/error_controller.js"></script> <script src="components/error_pages/error_controller.js"></script>
<!--<script src="components/student/student_controller.js"></script>-->
<script src="components/version/interpolate-filter.js"></script> <script src="components/version/interpolate-filter.js"></script>
<script src="components/version/version-directive.js"></script> <script src="components/version/version-directive.js"></script>
<script src="components/version/version.js"></script> <script src="components/version/version.js"></script>
......
...@@ -72,26 +72,26 @@ ...@@ -72,26 +72,26 @@
<!-- @if NODE_ENV == 'DEVELOPMENT' --> <!-- @if NODE_ENV == 'DEVELOPMENT' -->
<script src="bower_components/angular/angular.js"></script> <script src="bower_components/angular/angular.js"></script>
<script src="bower_components/jquery/dist/jquery.min.js"></script> <script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script> <script src="bower_components/bootstrap/dist/js/bootstrap.js"></script>
<script src="bower_components/angular-route/angular-route.min.js"></script> <script src="bower_components/angular-route/angular-route.js"></script>
<script src="bower_components/angular-cookies/angular-cookies.min.js"></script> <script src="bower_components/angular-cookies/angular-cookies.js"></script>
<script src="bower_components/angular-resource/angular-resource.min.js"></script> <script src="bower_components/angular-resource/angular-resource.js"></script>
<script src="bower_components/angular-bootstrap/ui-bootstrap.min.js"></script> <script src="bower_components/angular-bootstrap/ui-bootstrap.js"></script>
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script> <script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.js"></script>
<script src="bower_components/angular-sanitize/angular-sanitize.min.js"></script> <script src="bower_components/angular-sanitize/angular-sanitize.js"></script>
<script src="bower_components/tv4/tv4.js"></script> <script src="bower_components/tv4/tv4.js"></script>
<script src="bower_components/objectpath/lib/ObjectPath.js"></script> <script src="bower_components/objectpath/lib/ObjectPath.js"></script>
<script src="bower_components/angular-schema-form/dist/schema-form.min.js"></script> <script src="bower_components/angular-schema-form/dist/schema-form.js"></script>
<script src="bower_components/angular-schema-form/dist/bootstrap-decorator.min.js"></script> <script src="bower_components/angular-schema-form/dist/bootstrap-decorator.js"></script>
<script src="bower_components/angular-gettext/dist/angular-gettext.min.js"></script> <script src="bower_components/angular-gettext/dist/angular-gettext.js"></script>
<!-- TODO: check all js and remove unused --> <!-- TODO: check all js and remove unused -->
<script src="bower_components/json3/lib/json3.min.js"></script> <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/angular-loading-bar/build/loading-bar.js"></script>
<script src="bower_components/metisMenu/dist/metisMenu.min.js"></script> <script src="bower_components/metisMenu/dist/metisMenu.js"></script>
<script src="bower_components/Chart.js/Chart.min.js"></script> <script src="bower_components/Chart.js/Chart.js"></script>
<script src="shared/translations.js"></script> <script src="shared/translations.js"></script>
<script src="tmp/templates.js"></script> <script src="tmp/templates.js"></script>
<script src="app.js"></script> <script src="app.js"></script>
...@@ -110,7 +110,6 @@ ...@@ -110,7 +110,6 @@
<script src="components/crud/crud_controller.js"></script> <script src="components/crud/crud_controller.js"></script>
<script src="components/uitemplates/uitemplates.js"></script> <script src="components/uitemplates/uitemplates.js"></script>
<script src="components/error_pages/error_controller.js"></script> <script src="components/error_pages/error_controller.js"></script>
<!--<script src="components/student/student_controller.js"></script>-->
<script src="components/version/interpolate-filter.js"></script> <script src="components/version/interpolate-filter.js"></script>
<script src="components/version/version-directive.js"></script> <script src="components/version/version-directive.js"></script>
<script src="components/version/version.js"></script> <script src="components/version/version.js"></script>
......
...@@ -21,7 +21,7 @@ var app = angular.module( ...@@ -21,7 +21,7 @@ var app = angular.module(
'ulakbus.error_pages', 'ulakbus.error_pages',
'ulakbus.crud', 'ulakbus.crud',
'ulakbus.version', 'ulakbus.version',
'schemaForm', //'schemaForm',
'gettext', 'gettext',
// @if NODE_ENV='PRODUCTION' // @if NODE_ENV='PRODUCTION'
'templates-prod', 'templates-prod',
......
...@@ -29,14 +29,14 @@ app.directive('headerNotification', function ($http, $interval, RESTURL) { ...@@ -29,14 +29,14 @@ app.directive('headerNotification', function ($http, $interval, RESTURL) {
templateUrl: 'shared/templates/directives/header-notification.html', templateUrl: 'shared/templates/directives/header-notification.html',
restrict: 'E', restrict: 'E',
replace: true, replace: true,
link: function ($scope) { //link: function ($scope) {
$interval(function () { // $interval(function () {
// todo: change url to backend // // todo: change url to backend
$http.post(RESTURL+"crud").success(function (data) { // $http.post(RESTURL+"crud").success(function (data) {
$scope.notifications = data; // $scope.notifications = data;
}); // });
}, 15000); // }, 15000);
} //}
}; };
}); });
......
...@@ -5,16 +5,41 @@ ...@@ -5,16 +5,41 @@
{{form.title}} {{form.title}}
</label> </label>
<select ng-model="$$value$$" <div class="form-group input-group">
value="$$value$$" <span class="input-group-btn">
ng-model-options="form.ngModelOptions" <button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">
ng-disabled="form.readonly" <span class="caret"></span>
sf-changed="form" </button>
class="form-control {{form.fieldHtmlClass}}" <ul class="dropdown-menu">
schema-validate="form" <li ng-repeat="item in form.titleMap">
ng-options="item.value as item.name for item in form.titleMap" <a href="javascript:void(0)" ng-click="form.onDropdownSelect(item, form.model_name)">{{item
name="{{form.key.slice(-1)[0]}}"> .name}}</a>
</select> </li>
</ul>
</span>
<input type="text"
ng-model="$$value$$"
typeahead="item.name for item in form.titleMap"
typeahead-on-select="form.onSelect($item)"
placeholder="{{form.title}}"
ng-model-options="form.ngModelOptions"
ng-disabled="form.readonly"
sf-changed="form"
class="form-control {{form.fieldHtmlClass}}"
schema-validate="form"
name="{{form.model_name}}"/>
</div>
<!--<select ng-model="$$value$$"-->
<!--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.value as item.name for item in form.titleMap"-->
<!--name="{{form.key.slice(-1)[0]}}">-->
<!--</select>-->
<div class="help-block" sf-message="form.description"></div> <div class="help-block" sf-message="form.description"></div>
</div> </div>
......
...@@ -84,18 +84,25 @@ form_generator.factory('Generator', function ($http, $q, $timeout, RESTURL, Form ...@@ -84,18 +84,25 @@ form_generator.factory('Generator', function ($http, $q, $timeout, RESTURL, Form
type: "template", type: "template",
templateUrl: "shared/templates/foreignKey.html", templateUrl: "shared/templates/foreignKey.html",
title: k.title, title: k.title,
name: k.model_name,
model_name: k.model_name, model_name: k.model_name,
titleMap: generator.get_list(modelscope).then(function (res) { titleMap: generator.get_list(modelscope).then(function (res) {
formitem.titleMap = []; formitem.titleMap = [];
angular.forEach(res.data.objects, function (item) { angular.forEach(res.data.nobjects, function (item) {
formitem.titleMap.push({ if (item !== res.data.nobjects[0]) {
"value": item.key, formitem.titleMap.push({
"name": item.data.name || item.data.username "value": item[0],
}); "name": item[1] +' '+ (item[2] ? item[2] : '') + '...'
});
}
}); });
}), }),
onChange: function (modelValue, form) { onSelect: function (item) {
scope.model[v] = modelValue; scope.model[v] = item.value;
},
onDropdownSelect: function(item, inputname) {
scope.model[v] = item.value;
jQuery('input[name=' + inputname + ']').val(item.name);
} }
}; };
...@@ -247,6 +254,8 @@ form_generator.factory('Generator', function ($http, $q, $timeout, RESTURL, Form ...@@ -247,6 +254,8 @@ form_generator.factory('Generator', function ($http, $q, $timeout, RESTURL, Form
//data.form = get_diff; //data.form = get_diff;
} }
debugger;
return $http.post(generator.makeUrl($scope.url), data); return $http.post(generator.makeUrl($scope.url), data);
//.success(function () { //.success(function () {
// //
......
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