mirror of
https://github.com/openMF/community-app.git
synced 2026-02-06 13:51:55 +00:00
Updating missed refferences
This commit is contained in:
parent
027737c5a5
commit
88d868d4ee
21
app/scripts/controllers/accounting/ViewAccRuleController.js
Normal file
21
app/scripts/controllers/accounting/ViewAccRuleController.js
Normal file
@ -0,0 +1,21 @@
|
||||
(function(module) {
|
||||
mifosX.controllers = _.extend(module, {
|
||||
ViewAccRuleController: function(scope, resourceFactory, routeParams, location) {
|
||||
|
||||
resourceFactory.accountingRulesResource.getById({accountingRuleId:routeParams.id}, function(data){
|
||||
scope.rule = data;
|
||||
});
|
||||
|
||||
scope.deleteRule = function (){
|
||||
resourceFactory.accountingRulesResource.delete({accountingRuleId:routeParams.id}, {}, function(data){
|
||||
location.path('/accounting_rules');
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
mifosX.ng.application.controller('ViewAccRuleController', ['$scope', 'ResourceFactory', '$routeParams', '$location', mifosX.controllers.ViewAccRuleController]).run(function($log) {
|
||||
$log.info("ViewAccRuleController initialized");
|
||||
});
|
||||
}(mifosX.controllers || {}));
|
||||
@ -22,7 +22,7 @@
|
||||
newholiday.offices.push(temp);
|
||||
}
|
||||
resourceFactory.holValueResource.save(newholiday,function(data){
|
||||
location.path('/managehol');
|
||||
location.path('/holidays');
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
@ -1,13 +1,9 @@
|
||||
(function(module) {
|
||||
mifosX.controllers = _.extend(module, {
|
||||
ViewHolController: function(scope,routeParams, resourceFactory) {
|
||||
scope.holidays = [];
|
||||
scope.officehols = [];
|
||||
resourceFactory.holResource.getAllHols({officeId:1},function(data){
|
||||
scope.holidays = data;
|
||||
});
|
||||
|
||||
resourceFactory.holValueResource.getholvalues({officeId:1,holId: routeParams.id} , function(data) {
|
||||
scope.officehols = data;
|
||||
scope.holiday = data;
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
197
app/scripts/controllers/reports/RunReportsController.js
Normal file
197
app/scripts/controllers/reports/RunReportsController.js
Normal file
@ -0,0 +1,197 @@
|
||||
(function(module) {
|
||||
mifosX.controllers = _.extend(module, {
|
||||
|
||||
RunReportsController: function(scope, routeParams, resourceFactory, location) {
|
||||
|
||||
scope.isCollapsed = false; //displays options div on startup
|
||||
scope.hideTable = true; //hides the results div on startup
|
||||
scope.hidePentahoReport = true; //hides the results div on startup
|
||||
scope.formData = {};
|
||||
scope.reportParams = new Array();
|
||||
scope.reportDateParams = new Array();
|
||||
scope.reqFields = new Array();
|
||||
scope.reportData = {};
|
||||
scope.reportData.columnHeaders = [];
|
||||
scope.reportData.data = [];
|
||||
scope.baseURL="#";
|
||||
|
||||
scope.reportName = routeParams.name;
|
||||
scope.reportType = routeParams.type;
|
||||
scope.pentahoReportDetail=[];
|
||||
|
||||
resourceFactory.runReportsResource.getReport({reportSource: 'FullParameterList', parameterType : true, R_reportListing: "'"+routeParams.name+"'"}, function(data){
|
||||
|
||||
for (var i in data.data ) {
|
||||
var temp = {
|
||||
name: data.data[i].row[0],
|
||||
variable: data.data[i].row[1],
|
||||
label: data.data[i].row[2],
|
||||
displayType: data.data[i].row[3],
|
||||
formatType: data.data[i].row[4],
|
||||
defaultVal: data.data[i].row[5],
|
||||
selectOne: data.data[i].row[6],
|
||||
selectAll: data.data[i].row[7],
|
||||
parentParameterName: data.data[i].row[8],
|
||||
inputName: "R_"+ data.data[i].row[1] //model name
|
||||
};
|
||||
scope.reqFields.push(temp);
|
||||
if (temp.displayType == 'select' && temp.parentParameterName == null) {
|
||||
intializeParams(temp,{});
|
||||
} else if (temp.displayType == 'date') {
|
||||
scope.reportDateParams.push(temp);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
if (scope.reportType == 'Pentaho') {
|
||||
resourceFactory.runReportsResource.getReport({reportSource: 'FullReportDetails', parameterType : true, R_reportName: routeParams.name}, function(data){
|
||||
|
||||
var prevId = -1;
|
||||
var currId;
|
||||
var tmpParameters;
|
||||
for (var i in data.data )
|
||||
{
|
||||
currId = data.data[i].row[0]
|
||||
if (currId != prevId)
|
||||
{
|
||||
tmpParameters = [];
|
||||
if (!(data.data[i].row[5] == null))
|
||||
{
|
||||
tmpParam = [];
|
||||
tmpParam.push(data.data[i].row[6]);
|
||||
tmpParam.push(data.data[i].row[7]);
|
||||
tmpParameters.push(tmpParam);
|
||||
}
|
||||
tmpRow = {
|
||||
id: data.data[i].row[0],
|
||||
name: data.data[i].row[1],
|
||||
type: data.data[i].row[2],
|
||||
subtype: data.data[i].row[3],
|
||||
category: data.data[i].row[4],
|
||||
parameters: tmpParameters
|
||||
}
|
||||
scope.pentahoReportDetail.push(tmpRow);
|
||||
prevId = currId;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
tmpParam = [];
|
||||
tmpParam.push(data.data[i].row[6]);
|
||||
tmpParam.push(data.data[i].row[7]);
|
||||
scope.pentahoReportDetail[(scope.pentahoReportDetail.length - 1)].parameters.push(tmpParam);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function getSuccuessFunction (paramData) {
|
||||
var tempDataObj = new Object();
|
||||
var successFunction = function(data) {
|
||||
var selectData = [];
|
||||
var isExistedRecord = false;
|
||||
for (var i in data.data ) {
|
||||
selectData.push({id: data.data[i].row[0], name: data.data[i].row[1]});
|
||||
}
|
||||
for (var i in scope.reportParams ) {
|
||||
if (scope.reportParams[i].name == paramData.name) {
|
||||
scope.reportParams[i].selectOptions = selectData;
|
||||
isExistedRecord = true;
|
||||
}
|
||||
}
|
||||
if (!isExistedRecord) {
|
||||
paramData.selectOptions = selectData;
|
||||
scope.reportParams.push(paramData);
|
||||
}
|
||||
};
|
||||
return successFunction;
|
||||
}
|
||||
|
||||
function intializeParams (paramData, params) {
|
||||
params.reportSource = paramData.name;
|
||||
params.parameterType = true;
|
||||
var successFunction = getSuccuessFunction(paramData);
|
||||
resourceFactory.runReportsResource.getReport(params, successFunction);
|
||||
}
|
||||
|
||||
scope.getDependencies = function (paramData) {
|
||||
for (var i = 0; i < scope.reqFields.length; i++) {
|
||||
var temp = scope.reqFields[i];
|
||||
if (temp.parentParameterName == paramData.name) {
|
||||
if (temp.displayType == 'select') {
|
||||
var parentParamValue = this.formData[paramData.inputName];
|
||||
if (parentParamValue != undefined) {
|
||||
eval("var params={};params." + paramData.inputName + "='" + parentParamValue + "';");
|
||||
intializeParams(temp, params);
|
||||
}
|
||||
} else if (temp.displayType == 'date') {
|
||||
scope.reportDateParams.push(temp);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
scope.checkStatus = function () {
|
||||
var collapsed = false;
|
||||
if (scope.isCollapsed) {
|
||||
collapsed = true;
|
||||
}
|
||||
return collapsed;
|
||||
};
|
||||
|
||||
function buildReportParms() {
|
||||
var paramCount = 1;
|
||||
var reportParams = "";
|
||||
for (var i = 0; i < scope.reqFields.length; i++) {
|
||||
var reqField = scope.reqFields[i];
|
||||
for (var j = 0; j < scope.pentahoReportDetail.length; j++) {
|
||||
var tempParam = scope.pentahoReportDetail[j];
|
||||
for (var k = 0; k < tempParam.parameters.length; k++) {
|
||||
if (reqField.name == tempParam.parameters[k][1]) {
|
||||
var paramName = "R_"+tempParam.parameters[k][0];
|
||||
if (paramCount > 1) reportParams += "&"
|
||||
reportParams += encodeURIComponent(paramName) + "=" + encodeURIComponent(scope.formData[scope.reqFields[i].inputName]);
|
||||
paramCount = paramCount + 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return reportParams;
|
||||
}
|
||||
|
||||
scope.runReport = function (){
|
||||
scope.isCollapsed=true;
|
||||
|
||||
switch(scope.reportType)
|
||||
{
|
||||
case "Table":
|
||||
scope.hideTable=false;
|
||||
scope.hidePentahoReport = true;
|
||||
scope.formData.reportSource = scope.reportName;
|
||||
resourceFactory.runReportsResource.getReport(scope.formData, function(data){
|
||||
scope.reportData.columnHeaders = data.columnHeaders;
|
||||
scope.reportData.data = data.data;
|
||||
});
|
||||
break;
|
||||
|
||||
case "Pentaho":
|
||||
|
||||
scope.hideTable=true;
|
||||
scope.hidePentahoReport = false;
|
||||
scope.baseURL = "https://demo.openmf.org/mifosng-provider/api/v1/runreports/" + encodeURIComponent(scope.reportName);
|
||||
scope.baseURL += "?output-type="+encodeURIComponent(scope.formData.outputType)+"&tenantIdentifier=default";
|
||||
var inQueryParameters = buildReportParms();
|
||||
if (inQueryParameters > "") scope.baseURL += "&" + inQueryParameters;
|
||||
break;
|
||||
|
||||
default:
|
||||
alert("System Error: Unknown Report Type: " + scope.reportType);
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
});
|
||||
mifosX.ng.application.controller('RunReportsController', ['$scope', '$routeParams', 'ResourceFactory', '$location', mifosX.controllers.RunReportsController]).run(function($log) {
|
||||
$log.info("RunReportsController initialized");
|
||||
});
|
||||
}(mifosX.controllers || {}));
|
||||
51
app/scripts/controllers/reports/ViewReportsController.js
Normal file
51
app/scripts/controllers/reports/ViewReportsController.js
Normal file
@ -0,0 +1,51 @@
|
||||
(function(module) {
|
||||
mifosX.controllers = _.extend(module, {
|
||||
|
||||
ViewReportsController: function(scope, routeParams, resourceFactory, location) {
|
||||
|
||||
scope.reports = [];
|
||||
|
||||
if (routeParams.type == 'all') {
|
||||
resourceFactory.runReportsResource.get({reportSource: 'FullReportList', parameterType : true, genericResultSet : false}, function(data){
|
||||
scope.reports = scope.getReports(data);
|
||||
});
|
||||
} else if (routeParams.type == 'clients') {
|
||||
resourceFactory.runReportsResource.get({reportSource: 'reportCategoryList', R_reportCategory:'Client', parameterType : true, genericResultSet : false}, function(data){
|
||||
scope.reports = scope.getReports(data);
|
||||
});
|
||||
} else if (routeParams.type == 'loans') {
|
||||
resourceFactory.runReportsResource.get({reportSource: 'reportCategoryList', R_reportCategory:'Loan', parameterType : true, genericResultSet : false}, function(data){
|
||||
scope.reports = scope.getReports(data);
|
||||
});
|
||||
} else if (routeParams.type == 'funds') {
|
||||
resourceFactory.runReportsResource.get({reportSource: 'reportCategoryList', R_reportCategory:'Fund', parameterType : true, genericResultSet : false}, function(data){
|
||||
scope.reports = scope.getReports(data);
|
||||
});
|
||||
} else if (routeParams.type == 'accounting') {
|
||||
resourceFactory.runReportsResource.get({reportSource: 'reportCategoryList', R_reportCategory:'Accounting', parameterType : true, genericResultSet : false}, function(data){
|
||||
scope.reports = scope.getReports(data);
|
||||
});
|
||||
}
|
||||
|
||||
// Remove the duplicate entries from the array. The reports api returns same report multiple times if it have more than one parameter.
|
||||
scope.getReports = function(data){
|
||||
var prevId = -1;
|
||||
var currId;
|
||||
var reports = [];
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
currId = data[i].report_id;
|
||||
if (currId != prevId) {
|
||||
reports.push(data[i]);
|
||||
};
|
||||
prevId = currId;
|
||||
}
|
||||
return reports;
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
mifosX.ng.application.controller('ViewReportsController', ['$scope', '$routeParams', 'ResourceFactory', '$location', mifosX.controllers.ViewReportsController]).run(function($log) {
|
||||
$log.info("ViewReportsController initialized");
|
||||
});
|
||||
}(mifosX.controllers || {}));
|
||||
17
app/scripts/controllers/system/AddCodeController.js
Normal file
17
app/scripts/controllers/system/AddCodeController.js
Normal file
@ -0,0 +1,17 @@
|
||||
|
||||
(function(module) {
|
||||
mifosX.controllers = _.extend(module, {
|
||||
AddCodeController: function(scope, resourceFactory, location) {
|
||||
|
||||
scope.submit = function() {
|
||||
resourceFactory.codeResources.save(this.formData,function(data){
|
||||
location.path('/viewcode/'+data.resourceId);
|
||||
});
|
||||
};
|
||||
}
|
||||
});
|
||||
mifosX.ng.application.controller('AddCodeController', ['$scope', 'ResourceFactory', '$location', mifosX.controllers.AddCodeController]).run(function($log) {
|
||||
$log.info("AddCodeController initialized");
|
||||
});
|
||||
}(mifosX.controllers || {}));
|
||||
|
||||
22
app/scripts/controllers/system/ViewCodeController.js
Normal file
22
app/scripts/controllers/system/ViewCodeController.js
Normal file
@ -0,0 +1,22 @@
|
||||
(function(module) {
|
||||
mifosX.controllers = _.extend(module, {
|
||||
ViewCodeController: function(scope, routeParams , resourceFactory, location ) {
|
||||
scope.codevalues = [];
|
||||
resourceFactory.codeResources.get({codeId: routeParams.id} , function(data) {
|
||||
scope.code = data;
|
||||
});
|
||||
resourceFactory.codeValueResource.getAllCodeValues({codeId: routeParams.id} , function(data) {
|
||||
scope.codevalues = data;
|
||||
});
|
||||
scope.delcode = function(){
|
||||
resourceFactory.codeResources.remove({codeId: routeParams.id},this.code,function(data){
|
||||
location.path('/codes');
|
||||
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
mifosX.ng.application.controller('ViewCodeController', ['$scope', '$routeParams','ResourceFactory','$location', mifosX.controllers.ViewCodeController]).run(function($log) {
|
||||
$log.info("ViewCodeController initialized");
|
||||
});
|
||||
}(mifosX.controllers || {}));
|
||||
@ -45,7 +45,20 @@ define(['underscore', 'mifosX'], function() {
|
||||
'accounting/ViewTransactionController',
|
||||
'accounting/JournalEntryController',
|
||||
'accounting/SearchTransactionController',
|
||||
'accounting/AccountingClosureController'
|
||||
'accounting/AccountingClosureController',
|
||||
'accounting/AccountingRuleController',
|
||||
'accounting/AccCreateRuleController',
|
||||
'accounting/AccEditRuleController',
|
||||
'accounting/ViewAccRuleController',
|
||||
'system/CodeController',
|
||||
'system/EditCodeController',
|
||||
'system/ViewCodeController',
|
||||
'system/AddCodeController',
|
||||
'organization/HolController',
|
||||
'organization/ViewHolController',
|
||||
'organization/AddHolController',
|
||||
'reports/ViewReportsController',
|
||||
'reports/RunReportsController'
|
||||
],
|
||||
filters: [
|
||||
'StatusLookup'
|
||||
|
||||
@ -138,6 +138,45 @@
|
||||
})
|
||||
.when('/closedaccountingDetails/:officeId', {
|
||||
templateUrl: 'views/accounting/view_close_accounting.html'
|
||||
})
|
||||
.when('/accounting_rules', {
|
||||
templateUrl: 'views/accounting/accounting_rules.html'
|
||||
})
|
||||
.when('/viewaccrule/:id', {
|
||||
templateUrl: 'views/accounting/view_acc_rule.html'
|
||||
})
|
||||
.when('/add_accrule', {
|
||||
templateUrl: 'views/accounting/add_acc_rule.html'
|
||||
})
|
||||
.when('/editaccrule/:id', {
|
||||
templateUrl: 'views/accounting/edit_acc_rule.html'
|
||||
})
|
||||
.when('/viewcode/:id', {
|
||||
templateUrl: 'views/system/viewcode.html'
|
||||
})
|
||||
.when('/addcode', {
|
||||
templateUrl: 'views/system/addcode.html'
|
||||
})
|
||||
.when('/codes', {
|
||||
templateUrl: 'views/system/codes.html'
|
||||
})
|
||||
.when('/editcode/:id', {
|
||||
templateUrl: 'views/system/editcode.html'
|
||||
})
|
||||
.when('/holidays', {
|
||||
templateUrl: 'views/organization/holidays.html'
|
||||
})
|
||||
.when('/createholiday', {
|
||||
templateUrl: 'views/organization/createholiday.html'
|
||||
})
|
||||
.when('/viewholiday/:id', {
|
||||
templateUrl: 'views/organization/viewholiday.html'
|
||||
})
|
||||
.when('/reports/:type', {
|
||||
templateUrl: 'views/reports/view_reports.html'
|
||||
})
|
||||
.when('/run_report/:name', {
|
||||
templateUrl: 'views/reports/run_reports.html'
|
||||
});
|
||||
|
||||
$locationProvider.html5Mode(false);
|
||||
|
||||
@ -126,13 +126,8 @@
|
||||
getAllHols: {method: 'GET', params: {}, isArray: true}
|
||||
}),
|
||||
holValueResource: defineResource(apiVer + "/holidays/:holId", {holId:'@holId'}, {
|
||||
getholvalues: {method: 'GET', params: {}, isArray:true},
|
||||
|
||||
getholvalues: {method: 'GET', params: {}}
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
}];
|
||||
}
|
||||
|
||||
28
app/views/accounting/accounting_rules.html
Normal file
28
app/views/accounting/accounting_rules.html
Normal file
@ -0,0 +1,28 @@
|
||||
<div>
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/accounting">{{'link.accounting' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'label.accountingrules' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="row alert-block span" >
|
||||
<div class="span4 pull-right">
|
||||
<a href="#/add_accrule" class="btn btn-primary"><i class="icon-plus icon-white"></i> {{"button.addrule" | translate}}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row alert-block span" ng-controller="AccountingRuleController">
|
||||
<table class="table" ui:sortable>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Office</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr ng-repeat="rule in rules">
|
||||
<td><a href="#/viewaccrule/{{rule.id}}">{{rule.name}}</a></td>
|
||||
<td>{{rule.officeName}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
95
app/views/accounting/add_acc_rule.html
Normal file
95
app/views/accounting/add_acc_rule.html
Normal file
@ -0,0 +1,95 @@
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/accounting">{{'link.accounting' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/accounting_rules">{{'label.accountingrules' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'button.addrule' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<form class="form-horizontal well" ng-controller="AccCreateRuleController" ng-submit="submit()">
|
||||
<fieldset>
|
||||
<legend>{{ 'label.accounting.rule.title' | translate }}</legend>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="name">{{ 'label.accounting.rule.name' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xlarge" id="name" ng-model="formData.name">
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group info">
|
||||
<label class="control-label" for="officeId">{{ 'label.office' | translate }}</label>
|
||||
<div class="controls">
|
||||
<select class="input-xlarge" ng-model="formData.office">
|
||||
<option ng-repeat="office in offices" value="{{office.id}}">{{office.name}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="description">{{ 'label.description' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xlarge" ng-model="formData.description">
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">{{ 'label.journalentry.effected.entries' | translate }}</label>
|
||||
<div class="controls">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td width="50%">
|
||||
<strong>{{ 'label.journalentry.credit' | translate }}</strong>
|
||||
</td>
|
||||
<td width="50%">
|
||||
<strong>{{ 'label.journalentry.debit' | translate }}</strong>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="50%">
|
||||
<span>{{ 'label.credit.rule.type' | translate }}</span>
|
||||
<input type="radio" ng-model="creditRuleType" value="Account" ng-change="resetCredits()">Account
|
||||
<input type="radio" ng-model="creditRuleType" value="tags" ng-change="resetCredits()">Tags
|
||||
</td>
|
||||
<td width="50%">
|
||||
<span>{{ 'label.debit.rule.type' | translate }}</span>
|
||||
<input type="radio" ng-model="debitRuleType" value="Account" ng-change="resetDebits()">Account
|
||||
<input type="radio" ng-model="debitRuleType" value="tags" ng-change="resetDebits()">Tags
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div ng-show="creditRuleType=='Account'">
|
||||
<select class="input-medium" ng-model="formData.accountToCredit" ng-options="creditAccount.name for creditAccount in glAccounts" ></select>
|
||||
</div>
|
||||
<div ng-show="creditRuleType=='tags'">
|
||||
<label for="allowMultipleCreditEntries">{{ 'label.allowMultipleCreditEntries' | translate}} <input type="checkbox" ng-model="formData.allowMultipleCreditEntries"></label>
|
||||
<select class="input-medium" ng-model="formData.creditTagTemplate" ng-options="creditTag.name for creditTag in creditTagOptions" ></select>
|
||||
<a ng-click="addCreditTag()"> <i class="icon-plus icon-white"></i></a>
|
||||
<br>
|
||||
<div ng-repeat="crTag in formData.creditTags">
|
||||
<input type="text" class="input-medium" ng-model="crTag.name" readonly>
|
||||
<a ng-click="removeCrTag($index)"> <i class="icon-remove icon-white"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div ng-show="debitRuleType=='Account'">
|
||||
<select class="input-medium" ng-model="formData.accountToDebit" ng-options="debitAccount.name for debitAccount in glAccounts" ></select>
|
||||
</div>
|
||||
<div ng-show="debitRuleType=='tags'">
|
||||
<label for="allowMultipleDebitEntries">{{ 'label.allowMultipleDebitEntries' | translate}} <input type="checkbox" ng-model="formData.allowMultipleDebitEntries"></label>
|
||||
<select class="input-medium" ng-model="formData.debitTagTemplate" ng-options="debitTag.name for debitTag in debitTagOptions" ></select>
|
||||
<a ng-click="addDebitTag()"> <i class="icon-plus icon-white"></i></a>
|
||||
<br>
|
||||
<div ng-repeat="dbTag in formData.debitTags">
|
||||
<input type="text" class="input-medium" ng-model="dbTag.name" readonly>
|
||||
<a ng-click="removeDebitTag($index)"> <i class="icon-remove icon-white"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-actions">
|
||||
<button type="reset" class="btn">{{ 'label.cancel' | translate }}</button>
|
||||
<button type="submit" class="btn btn-primary">{{ 'label.save' | translate }}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
98
app/views/accounting/edit_acc_rule.html
Normal file
98
app/views/accounting/edit_acc_rule.html
Normal file
@ -0,0 +1,98 @@
|
||||
<div ng-controller="AccEditRuleController">
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/accounting">{{'link.accounting' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/accounting_rules">{{'label.accountingrules' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/viewaccrule/{{accountingRuleId}}">{{formData.name}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'label.accounting.rule.edit.title' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<form class="form-horizontal well" ng-submit="submit()">
|
||||
<fieldset>
|
||||
<legend>{{ 'label.accounting.rule.edit.title' | translate }}</legend>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="name">{{ 'label.accounting.rule.name' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xlarge" id="name" ng-model="formData.name">
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group info">
|
||||
<label class="control-label" for="office">{{ 'label.office' | translate }}</label>
|
||||
<div class="controls">
|
||||
<select class="input-xlarge" ng-model="formData.office">
|
||||
<option ng-repeat="office in offices" value="{{office.id}}">{{office.name}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="description">{{ 'label.description' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xlarge" ng-model="formData.description">
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">{{ 'label.journalentry.effected.entries' | translate }}</label>
|
||||
<div class="controls">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td width="50%">
|
||||
<strong>{{ 'label.journalentry.credit' | translate }}</strong>
|
||||
</td>
|
||||
<td width="50%">
|
||||
<strong>{{ 'label.journalentry.debit' | translate }}</strong>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="50%">
|
||||
<span>{{ 'label.credit.rule.type' | translate }}</span>
|
||||
<input type="radio" ng-model="creditRuleType" value="Account" ng-change="resetCredits()">Account
|
||||
<input type="radio" ng-model="creditRuleType" value="tags" ng-change="resetCredits()">Tags
|
||||
</td>
|
||||
<td width="50%">
|
||||
<span>{{ 'label.debit.rule.type' | translate }}</span>
|
||||
<input type="radio" ng-model="debitRuleType" value="Account" ng-change="resetDebits()">Account
|
||||
<input type="radio" ng-model="debitRuleType" value="tags" ng-change="resetDebits()">Tags
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div ng-show="creditRuleType=='Account'">
|
||||
<select class="input-medium" ng-model="formData.accountToCredit" ng-options="creditAccount.name for creditAccount in glAccounts" ></select>
|
||||
</div>
|
||||
<div ng-show="creditRuleType=='tags'">
|
||||
<label for="allowMultipleCreditEntries">{{ 'label.allowMultipleCreditEntries' | translate}} <input type="checkbox" ng-model="formData.allowMultipleCreditEntries"></label>
|
||||
<select class="input-medium" ng-model="formData.creditTagTemplate" ng-options="creditTag.name for creditTag in creditTagOptions" ></select>
|
||||
<a ng-click="addCreditTag()"> <i class="icon-plus icon-white"></i></a>
|
||||
<br>
|
||||
<div ng-repeat="crTag in formData.creditTags">
|
||||
<input type="text" class="input-medium" ng-model="crTag.name" readonly>
|
||||
<a ng-click="removeCrTag($index)"> <i class="icon-remove icon-white"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
<td>
|
||||
<div ng-show="debitRuleType=='Account'">
|
||||
<select class="input-medium" ng-model="formData.accountToDebit" ng-options="debitAccount.name for debitAccount in glAccounts" ></select>
|
||||
</div>
|
||||
<div ng-show="debitRuleType=='tags'">
|
||||
<label for="allowMultipleDebitEntries">{{ 'label.allowMultipleDebitEntries' | translate}} <input type="checkbox" ng-model="formData.allowMultipleDebitEntries"></label>
|
||||
<select class="input-medium" ng-model="formData.debitTagTemplate" ng-options="debitTag.name for debitTag in debitTagOptions" ></select>
|
||||
<a ng-click="addDebitTag()"> <i class="icon-plus icon-white"></i></a>
|
||||
<br>
|
||||
<div ng-repeat="dbTag in formData.debitTags">
|
||||
<input type="text" class="input-medium" ng-model="dbTag.name" readonly>
|
||||
<a ng-click="removeDebitTag($index)"> <i class="icon-remove icon-white"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-actions">
|
||||
<button type="reset" class="btn">{{ 'label.cancel' | translate }}</button>
|
||||
<button type="submit" class="btn btn-primary">{{ 'label.save' | translate }}</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
54
app/views/accounting/view_acc_rule.html
Normal file
54
app/views/accounting/view_acc_rule.html
Normal file
@ -0,0 +1,54 @@
|
||||
<div ng-controller="ViewAccRuleController">
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/accounting">{{'link.accounting' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/accounting_rules">{{'label.accountingrules' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{rule.name}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div>
|
||||
<div class="pull-right">
|
||||
<div class="btn-group">
|
||||
<a href="#/editaccrule/{{rule.id}}" class="btn btn-primary"><i class="icon-edit icon-white"></i> Edit</a>
|
||||
<a class="btn btn-primary" ng-click="deleteRule()"><i class="icon-trash icon-white"></i> Delete</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row paddedleft">
|
||||
<h3>{{rule.name}}</h3>
|
||||
<label>{{ 'label.office' | translate }} {{rule.officeName}}</label>
|
||||
<label>{{ 'label.description' | translate }} {{rule.description}}</label>
|
||||
<hr/>
|
||||
<table width="100%">
|
||||
<thead>
|
||||
<th>{{ 'label.credit.account.details' | translate }}</th>
|
||||
<th align="left">{{ 'label.debit.account.details' | translate }}</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<table align="center">
|
||||
<tr ng-repeat="crAccount in rule.creditAccounts">
|
||||
<td>{{crAccount.name}}({{crAccount.glCode}})</td>
|
||||
</tr>
|
||||
<tr ng-repeat="creditTag in rule.creditTags">
|
||||
<td>{{creditTag.tag.name}}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td>
|
||||
<table align="left">
|
||||
<tr ng-repeat="dbAccount in rule.debitAccounts">
|
||||
<td>{{dbAccount.name}}({{dbAccount.glCode}})</td>
|
||||
</tr>
|
||||
<tr ng-repeat="debitTag in rule.debitTags">
|
||||
<td>{{debitTag.tag.name}}</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
80
app/views/organization/createholiday.html
Normal file
80
app/views/organization/createholiday.html
Normal file
@ -0,0 +1,80 @@
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/organization">{{'link.admin.organisation' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/holidays">{{'label.manageholidays' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'label.createholiday' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<form class="form-horizontal well" ng-controller="AddHolController" ng-submit="submit()">
|
||||
<fieldset>
|
||||
<legend>{{'label.createholiday' | translate}}</legend>
|
||||
<table>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="name">{{ 'label.holiday.name' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xlarge" ng-model="formData.name">
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="office">{{ 'label.holiday.applicableoffices' | translate }}</label>
|
||||
<div class="controls">
|
||||
<select multiple class="input-xlarge" ng-model="formData.officeId">
|
||||
<option ng-repeat="office in offices" value="{{office.id}}">{{office.name}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="control-group">
|
||||
<div class="span4 pull-left">
|
||||
<div>
|
||||
<label class="control-label" for="fromdate">{{ 'label.holiday.fromdate' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" data-ng-model="formData.fromDate"/>
|
||||
</div></div>
|
||||
<div>
|
||||
<label class="control-label" for="todate">{{ 'label.holiday.todate' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" data-ng-model="formData.toDate"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<td>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="fromdate">{{ 'label.holiday.repaymentsheduleto' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" data-ng-model="formData.repaymentsRescheduledTo"/>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="fromdate">{{ 'label.holiday.desc' | translate }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" data-ng-model="formData.description"/>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="form-actions">
|
||||
<a href="#/managehol" class="btn btn-primary">Cancel</a>
|
||||
<button type="submit" class="btn btn-primary">Save</button>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
</form>
|
||||
34
app/views/organization/holidays.html
Normal file
34
app/views/organization/holidays.html
Normal file
@ -0,0 +1,34 @@
|
||||
<div>
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/organization">{{'link.admin.organisation' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'label.manageholidays' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="row alert-block span">
|
||||
<input ng-model="filterText" type="text" class="form-control" placeholder="Filter by Office Name"/>
|
||||
<div class="span4 pull-right">
|
||||
<a href="#/createholiday" class="btn btn-primary"><i class="icon-plus icon-white"></i>{{'label.createholiday' | translate}}</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row alert-block span" data-ng-controller="HolController">
|
||||
<table class="table" ui:sortable>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Holiday Name</th>
|
||||
<th>Start Date</th>
|
||||
<th>End Date</th>
|
||||
<th>Alternate Working Day</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr data-ng-repeat="holiday in holidays | filter:filterText">
|
||||
<td><a href="#/viewholiday/{{holiday.id}}">{{holiday.name}}</a></td>
|
||||
<td>{{holiday.fromDate}}</td>
|
||||
<td>{{holiday.toDate}}</td>
|
||||
<td>{{holiday.repaymentsScheduleTO}}</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
32
app/views/organization/viewholiday.html
Normal file
32
app/views/organization/viewholiday.html
Normal file
@ -0,0 +1,32 @@
|
||||
<div ng-controller="ViewHolController">
|
||||
<h3>{{holiday.name}}</h3>
|
||||
<h3>Include Description Here</h3>
|
||||
<table >
|
||||
<tr>
|
||||
<td>{{ 'label.holiday.name' | translate }}</td>
|
||||
<td>{{holiday.name}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ 'label.holiday.fromdate' | translate }}</td>
|
||||
<td>{{holiday.fromDate}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ 'label.holiday.todate' | translate }}</td>
|
||||
<td>{{holiday.toDate}}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>{{ 'label.holiday.repaymentsheduleto' | translate }}</td>
|
||||
<td>{{holiday.repaymentsScheduleTO}}</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<td>{{ 'label.holiday.applicableoffices' | translate }}</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tr >
|
||||
<td>Include applicable offices here</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
58
app/views/reports/run_reports.html
Normal file
58
app/views/reports/run_reports.html
Normal file
@ -0,0 +1,58 @@
|
||||
<div class="row alert-block form-horizontal span" ng-controller="RunReportsController">
|
||||
<div class="row alert-block span" >
|
||||
<h3><b>{{reportName}}</b> <a class="btn" ng-show="checkStatus()" ng-click="isCollapsed=!isCollapsed"><i class="icon-sort-down icon-white"></i></a></h3>
|
||||
</div>
|
||||
|
||||
<div collapse="isCollapsed" class="row alert-block span">
|
||||
<br>
|
||||
<div class="control-group info" ng-repeat="reportParam in reportParams">
|
||||
<label class="control-label" for="{{reportParam.variable}}">{{ reportParam.label }}</label>
|
||||
<div class="controls">
|
||||
<select class="input-xlarge" ng-model="formData[reportParam.inputName]" ng-change="getDependencies(reportParam)" required>
|
||||
<option ng-show="reportParam.selectAll == 'Y'" value="-1">All</option>
|
||||
<option ng-repeat="selectOption in reportParam.selectOptions" value="{{selectOption.id}}">{{selectOption.name}}</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group info" ng-repeat="reportDateParam in reportDateParams">
|
||||
<label class="control-label" for="{{reportDateParam.variable}}">{{ reportDateParam.label }}</label>
|
||||
<div class="controls">
|
||||
<input type="text" ng-model="formData[reportDateParam.inputName]" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group info" ng-show="reportType == 'Pentaho'" >
|
||||
<label class="control-label" for="outputType">{{ 'label.report.output.type' | translate }}</label>
|
||||
<div class="controls">
|
||||
<select class="input-xlarge" ng-model="formData.outputType">
|
||||
<option value="HTML">Show Report</option>
|
||||
<option value="XLS">Export Excel Format</option>
|
||||
<option value="CSV">Export CSV Format</option>
|
||||
<option value="PDF">PDF Format</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<span><a ng-click="runReport()" class="btn btn-primary control"><i class="icon-play icon-white"></i> Run</a></span>
|
||||
</div>
|
||||
|
||||
<div collapse="hideTable" class="row alert-block span tab-content">
|
||||
<br>
|
||||
<table class="table table-striped">
|
||||
<thead>
|
||||
<tr class="graybg">
|
||||
<th ng-repeat="columnHeader in reportData.columnHeaders" >{{columnHeader.columnName}}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr ng-repeat="row in reportData.data" >
|
||||
<td ng-repeat="col in row.row" >{{col}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div collapse="hidePentahoReport" class="row alert-block span tab-content">
|
||||
<br>
|
||||
<iframe id=rptLoadingFrame src="{{baseURL}}" frameborder="0" width="100%" height="600px"></iframe>';
|
||||
</div>
|
||||
|
||||
</div>
|
||||
22
app/views/reports/view_reports.html
Normal file
22
app/views/reports/view_reports.html
Normal file
@ -0,0 +1,22 @@
|
||||
<div class="row alert-block span" >
|
||||
<input ng-model="filterText" type="text" class="form-control input-xxlarge" placeholder="Filter by name">
|
||||
</div>
|
||||
|
||||
<div class="row alert-block span" ng-controller="ViewReportsController">
|
||||
<table class="table" ui:sortable>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Type</th>
|
||||
<th>Category</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr ng-repeat="report in reports | filter:filterText">
|
||||
<td><a href="#/run_report/{{report.report_name}}?type={{report.report_type}}">{{report.report_name}}</a></td>
|
||||
<td>{{report.report_type}}</td>
|
||||
<td>{{report.report_category}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
23
app/views/system/addcode.html
Normal file
23
app/views/system/addcode.html
Normal file
@ -0,0 +1,23 @@
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/system">{{'link.admin.system' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/codes">{{'label.managecodes' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'label.addcode' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<form class="form-horizontal well" ng-controller="AddCodeController" ng-submit="submit()">
|
||||
<fieldset>
|
||||
<legend>{{'label.addcode' | translate}}</legend>
|
||||
<div>
|
||||
<label class="control-label" for="codename">Code Name</label>
|
||||
<div class="controls">
|
||||
<input type="text" class="input-xlarge" id="codename" ng-model="formData.name">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-actions">
|
||||
<a href="#/codes" class="btn btn-primary">Cancel</a>
|
||||
<button type="submit" class="btn btn-primary">Save</button>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
</form>
|
||||
29
app/views/system/codes.html
Normal file
29
app/views/system/codes.html
Normal file
@ -0,0 +1,29 @@
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/system">{{'link.admin.system' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'label.managecodes' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="span4 pull-right">
|
||||
<a href="#/addcode" class="btn btn-primary"><i class="icon-plus icon-white"></i>Add Code</a>
|
||||
</div>
|
||||
<div class="row alert-block span" data-ng-controller="CodeController">
|
||||
<table class="table" ui:sortable>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>CodeName</th>
|
||||
<th>System Defined</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr data-ng-repeat="code in codes">
|
||||
<td><a href="#/viewcode/{{code.id}}">{{code.name}}</a></td>
|
||||
<td>{{code.systemDefined}}</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
24
app/views/system/editcode.html
Normal file
24
app/views/system/editcode.html
Normal file
@ -0,0 +1,24 @@
|
||||
<div ng-controller="EditCodeController" ng-submit="submit()">
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/system">{{'link.admin.system' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/codes">{{'label.managecodes' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/viewcode/{{codeId}}">{{code.name}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{'label.editcode' | translate}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<h3>{{'label.editcode' | translate}}</h3>
|
||||
<form>
|
||||
<input ng-model="newEle.name" placeholder="Code Value" type="text"/> <input ng-model="newEle.position"
|
||||
placeholder="Position" type="text"/>
|
||||
<a data-ng-click="addCv()" class="btn btn-primary"><i class="icon-plus icon-white"></i>Add</a>
|
||||
</form>
|
||||
<div data-ng-repeat="codevalue in codevalues">
|
||||
<input disabled="" placeholder={{codevalue.name}} type="text"/> <input disabled="" placeholder={{codevalue.position}}
|
||||
type="text"/> <a ng-click='deleteCv(codevalue.id)'><i class="icon-remove"></i></a>
|
||||
</div>
|
||||
<div class="pull-right" data-ng-show="stat">
|
||||
<p>{{ 'error.delete.failed' | translate }}</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
36
app/views/system/viewcode.html
Normal file
36
app/views/system/viewcode.html
Normal file
@ -0,0 +1,36 @@
|
||||
<div ng-controller="ViewCodeController">
|
||||
<div class="paddedbottom10">
|
||||
<ul class="breadcrumb">
|
||||
<li><a href="#/system">{{'link.admin.system' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li><a href="#/codes">{{'label.managecodes' | translate}}</a> <span class="divider">/</span></li>
|
||||
<li class="active">{{code.name}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="pull-right">
|
||||
<div class="btn-group">
|
||||
<a href="#/editcode/{{code.id}}" class="btn btn-primary"><i class="icon-edit icon-white"></i> Edit</a>
|
||||
<a data-ng-click="delcode()" class="btn btn-primary" ng-show="code.systemDefined == false"><i class="icon-trash icon-white"></i> Delete</a></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row paddedleft">
|
||||
<h3>{{code.name}}</h3>
|
||||
<div>
|
||||
<table class="table" ui:sortable>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{ 'label.name1' | translate }}</th>
|
||||
<th>{{ 'label.position' | translate }}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr data-ng-repeat="codevalue in codevalues">
|
||||
<td>{{codevalue.name}}</td>
|
||||
<td>{{codevalue.position}}</td>
|
||||
</tr>
|
||||
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Loading…
Reference in New Issue
Block a user