From 487274f7b8828e5bb7e5efcc914b7a72d63fcf27 Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期二, 24 十月 2023 20:20:36 +0800
Subject: [PATCH] 10.24。2
---
cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js | 620 ++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 468 insertions(+), 152 deletions(-)
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js b/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js
index d649158..0620273 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/tCompetition/tCompetition_info.js
@@ -1,9 +1,10 @@
/**
* 初始化车辆管理详情对话框
*/
-var language=$("#language").val();
+var language=1;
var TCarInfoDlg = {
tCarInfoData : {},
+ goodsPicArray1:[],
validateFields: {
carBrandId: {
validators: {
@@ -98,7 +99,7 @@
* 关闭此对话框
*/
TCarInfoDlg.close = function() {
- parent.layer.close(window.parent.TCar.layerIndex);
+ parent.layer.close(window.parent.TCompetition.layerIndex);
}
/**
@@ -159,65 +160,92 @@
if(!this.validate()){
return ;
}
- var roleType = $("#roleType").val(); //1=平台 2=分公司 3=加盟商
- var companyType = $("input[name='companyType']:checked").val();
- if (1 == roleType){
- if (2 == companyType){
- var oneId = $("#oneId").val();
- if ("" == oneId){
- if(language==1){
- Feng.info("所属分公司不能为空!");
- }else if(language==2){
- Feng.info("The subordinate branch cannot be empty!");
- }else {
- Feng.info("Cabang subordinat tidak dapat kosong!");
- }
- return;
- }
- }
- }
- var serverBox =[];
- $('input[name="serverBox"]:checked').each(function(){
- serverBox.push($(this).val());
- });
- if (serverBox.length == 0){
- if(language==1){
- Feng.info("请选择经营业务");
- }else if(language==2){
- Feng.info("Please select business");
- }else {
- Feng.info("Pilih bisnis");
- }
+
+
+
+ var pCode = $("#pCode").val();
+ if(pCode==""){
+ Feng.info("请选择省");
return;
}
- var carPhoto = $("#carPhoto").valueOf();
- if ("" == carPhoto){
- if(language==1){
- Feng.info("请上传车辆照片");
- }else if(language==2){
- Feng.info("Please upload a photo of the vehicle");
- }else {
- Feng.info("Silakan mengunggah foto kendaraan");
- }
-
+ var cCode = $("#cCode").val();
+ if(cCode==""){
+ Feng.info("请选择市");
return;
}
- var drivingLicensePhoto = $("#drivingLicensePhoto").valueOf();
- if ("" == drivingLicensePhoto){
- if(language==1){
- Feng.info("请上传行驶证照片");
- }else if(language==2){
- Feng.info("Please upload a photo of your vehicle. Please upload a photo of your driving license");
- }else {
- Feng.info("Silakan mengunggah foto kendaraanmu. Silakan mengunggah foto dari lisensi mengemudi Anda");
- }
+ var shopId = $("#shopId").val();
+ if(shopId==""){
+ Feng.info("请选择门店");
+ return;
+ }
+ var shopIdString = shopId.join(",");
+ var name = $("#name").val();
+ if(name==""){
+ Feng.info("请输入赛事名称");
+ return;
+ }
+ var startTime = $("#startTime").val();
+ console.log(startTime)
+ if(startTime==""){
+ Feng.info("请选择开始时间");
+ return;
+ }
+ var endTime = $("#endTime").val();
+ if(endTime==""){
+ Feng.info("请选择结束时间");
+ return;
+ }
+ var registerEndTime = $("#registerEndTime").val();
+ let registerCondition = document.querySelector('input[name="registerCondition"]:checked').value;
+ var startAge = $("#startAge").val();
+ var endAge = $("#endAge").val();
+ var cashPrice = $("#cashPrice").val();
+ var playPaiCoin = $("#playPaiCoin").val();
+ var classPrice = $("#classPrice").val();
+ var address = $("#address").val();
+ if(address==""){
+ Feng.info("请输入参加地点");
+ return;
+ }
+ var applicantsNumber = $("#applicantsNumber").val();
+ if(applicantsNumber==""){
+ Feng.info("请输入报名人数");
+ return;
+ }
+ var baseNumber = $("#baseNumber").val();
+ let realName = document.querySelector('input[name="realName"]:checked').value;
+ var introduction = $("#introduction").val();
+ if(introduction==""){
+ Feng.info("请输入赛事简介");
return;
}
+ var goodImgs = TCarInfoDlg.goodsPicArray1;
+ if(goodImgs.length==0){
+ Feng.info("请上传赛事活动图片")
+ return;
+ }
+ var imgOne ="";
+ for (let i = 0; i <goodImgs.length; i++) {
+ if(i==goodImgs.length-1){
+ imgOne += (goodImgs[i].response)
+ }else {
+ imgOne+=(goodImgs[i].response+",")
+ }
+
+ }
+
+ var coverDrawing = $("#coverDrawing").val();
+ var coverDrawing = $("#coverDrawing").val();
+ var registrationNotes = $("#registrationNotes").val()
+ if(registrationNotes==""){
+ Feng.info("请上传报名须知图片");
+ return;
+ }
//提交信息
- var ajax = new $ax(Feng.ctxPath + "/tCar/add", function(data){
- if(data.status == 200){
+ var ajax = new $ax(Feng.ctxPath + "/tCompetition/add", function(data){
+ if(data.code == 200){
if(language==1){
Feng.success("添加成功!");
}else if(language==2){
@@ -225,7 +253,7 @@
}else {
Feng.success("Sangat berhasil ditambah!");
}
- window.parent.TCar.table.refresh();
+ window.parent.TCompetition.table.refresh();
TCarInfoDlg.close();
}else{
Feng.error(data.msg);
@@ -234,27 +262,29 @@
},function(data){
Feng.error("添加失败!" + data.responseJSON.message + "!");
});
- ajax.set(this.tCarInfoData);
- ajax.set("serverBox",serverBox.toString());
- ajax.set("zcModel",$("#zcModel").val());
- ajax.set("kcModel",$("#kcModel").val());
- ajax.set("roleType",roleType);
- if (1 == roleType){
- ajax.set("companyType",companyType);
- ajax.set("oneId",$("#oneId").val());
- ajax.set("twoId",$("#twoId").val());
- ajax.set("franchiseeId",0);
- } else if (2 == roleType) {
- ajax.set("franchiseeId",$("#franchiseeId").val());
- ajax.set("companyType",0);
- ajax.set("oneId",0);
- ajax.set("twoId",0);
- }else if (3 == roleType){
- ajax.set("franchiseeId",0);
- ajax.set("companyType",0);
- ajax.set("oneId",0);
- ajax.set("twoId",0);
- }
+ ajax.set("provinceCode",pCode);
+ ajax.set("cityCode",cCode);
+ ajax.set("storeId",shopIdString);
+ ajax.set("name",name);
+ ajax.set("startTime",startTime);
+ ajax.set("endTime",endTime);
+ ajax.set("registerEndTime",registerEndTime);
+ ajax.set("registerCondition",registerCondition);
+ ajax.set("startAge",startAge);
+ ajax.set("endAge",endAge);
+ ajax.set("cashPrice",cashPrice);
+ ajax.set("playPaiCoin",playPaiCoin);
+ ajax.set("classPrice",classPrice);
+ ajax.set("address",address);
+ ajax.set("applicantsNumber",applicantsNumber);
+ ajax.set("baseNumber",baseNumber);
+ ajax.set("realName",realName);
+ ajax.set("coverDrawing",coverDrawing);
+ ajax.set("introduction",introduction);
+ ajax.set("imgs",imgOne);
+ ajax.set("registrationNotes",registrationNotes);
+ ajax.set("longitude", $("#longitude").val());
+ ajax.set("latitude", $("#latitude").val());
ajax.start();
}
@@ -269,62 +299,89 @@
return ;
}
- var roleType = $("#roleType").val(); //1=平台 2=分公司 3=加盟商
- var companyType = $("input[name='companyType']:checked").val();
- if (1 == roleType){
- if (2 == companyType){
- var oneId = $("#oneId").val();
- if ("" == oneId){
- if(language==1){
- Feng.info("所属分公司不能为空!");
- }else if(language==2){
- Feng.info("The subordinate branch cannot be empty!");
- }else {
- Feng.info("Cabang subordinat tidak dapat kosong!");
- }
- return;
- }
- }
- }
- var serverBox =[];
- $('input[name="serverBox"]:checked').each(function(){
- serverBox.push($(this).val());
- });
- if (serverBox.length == 0){
- if(language==1){
- Feng.info("请选择经营业务");
- }else if(language==2){
- Feng.info("Please select business");
- }else {
- Feng.info("Pilih bisnis");
- }
+ var pCode = $("#pCode").val();
+ if(pCode==""){
+ Feng.info("请选择省");
return;
}
- var carPhoto = $("#carPhoto").valueOf();
- if ("" == carPhoto){
- if(language==1){
- Feng.info("请上传车辆照片");
- }else if(language==2){
- Feng.info("Please upload a photo of the vehicle");
- }else {
- Feng.info("Silakan mengunggah foto kendaraan");
- }
+ var cCode = $("#cCode").val();
+ if(cCode==""){
+ Feng.info("请选择市");
return;
}
- var drivingLicensePhoto = $("#drivingLicensePhoto").valueOf();
- if ("" == drivingLicensePhoto){
- if(language==1){
- Feng.info("请上传行驶证照片");
- }else if(language==2){
- Feng.info("Please upload a photo of your vehicle. Please upload a photo of your driving license");
- }else {
- Feng.info("Silakan mengunggah foto kendaraanmu. Silakan mengunggah foto dari lisensi mengemudi Anda");
- }
+ var shopId = $("#shopId").val();
+ if(shopId==""){
+ Feng.info("请选择门店");
return;
}
+ var shopIdString = shopId.join(",");
+
+ var name = $("#name").val();
+ if(name==""){
+ Feng.info("请输入赛事名称");
+ return;
+ }
+ var startTime = $("#startTime").val();
+ console.log(startTime)
+ if(startTime==""){
+ Feng.info("请选择开始时间");
+ return;
+ }
+ var endTime = $("#endTime").val();
+ if(endTime==""){
+ Feng.info("请选择结束时间");
+ return;
+ }
+ var registerEndTime = $("#registerEndTime").val();
+ var startAge = $("#startAge").val();
+ var endAge = $("#endAge").val();
+ var cashPrice = $("#cashPrice").val();
+ var playPaiCoin = $("#playPaiCoin").val();
+ var classPrice = $("#classPrice").val();
+ var address = $("#address").val();
+ if(address==""){
+ Feng.info("请输入参加地点");
+ return;
+ }
+ var applicantsNumber = $("#applicantsNumber").val();
+ if(applicantsNumber==""){
+ Feng.info("请输入报名人数");
+ return;
+ }
+ var baseNumber = $("#baseNumber").val();
+ let realName = document.querySelector('input[name="realName"]:checked').value;
+ var introduction = $("#introduction").val();
+ if(introduction==""){
+ Feng.info("请输入赛事简介");
+ return;
+ }
+
+ var goodImgs = TCarInfoDlg.goodsPicArray1;
+
+ if(goodImgs.length==0){
+ Feng.info("请上传赛事活动图片")
+ return;
+ }
+ var imgOne ="";
+ console.log(goodImgs)
+ console.log(goodImgs.length)
+ for (let i = 0; i <goodImgs.length; i++) {
+ console.log(goodImgs[i].response,11)
+ if(i==goodImgs.length-1){
+ imgOne += (goodImgs[i].response)
+ }else {
+ imgOne+=(goodImgs[i].response+",")
+ }
+
+ }
+ console.log(imgOne)
+
+ var coverDrawing = $("#coverDrawing").val();
+ var coverDrawing = $("#coverDrawing").val();
+ var registrationNotes = $("#registrationNotes").val()
//提交信息
- var ajax = new $ax(Feng.ctxPath + "/tCar/update", function(data){
- if(data.status == 200){
+ var ajax = new $ax(Feng.ctxPath + "/tCompetition/update", function(data){
+ if(data.code == 200){
if(language==1){
Feng.success("修改成功!");
}else if(language==2){
@@ -332,7 +389,7 @@
}else {
Feng.success("Mengubah dengan sukses!");
}
- window.parent.TCar.table.refresh();
+ window.parent.TCompetition.table.refresh();
TCarInfoDlg.close();
}else{
Feng.error(data.msg);
@@ -340,50 +397,213 @@
},function(data){
Feng.error("修改失败!" + data.responseJSON.message + "!");
});
- ajax.set(this.tCarInfoData);
- ajax.set("serverBox",serverBox.toString());
- ajax.set("zcModel",$("#zcModel").val());
- ajax.set("kcModel",$("#kcModel").val());
- ajax.set("roleType",roleType);
- if (1 == roleType){
- ajax.set("companyType",companyType);
- ajax.set("oneId",$("#oneId").val());
- ajax.set("twoId",$("#twoId").val());
- ajax.set("franchiseeId",0);
- } else if (2 == roleType) {
- ajax.set("franchiseeId",$("#franchiseeId").val());
- ajax.set("companyType",0);
- ajax.set("oneId",0);
- ajax.set("twoId",0);
- }else if (3 == roleType){
- ajax.set("franchiseeId",0);
- ajax.set("companyType",0);
- ajax.set("oneId",0);
- ajax.set("twoId",0);
- }
+ ajax.set("id",$("#id").val());
+ ajax.set("provinceCode",pCode);
+ ajax.set("cityCode",cCode);
+ ajax.set("storeId",shopIdString);
+ ajax.set("name",name);
+ ajax.set("startTime",startTime);
+ ajax.set("endTime",endTime);
+ ajax.set("registerEndTime",registerEndTime);
+ ajax.set("startAge",startAge);
+ ajax.set("endAge",endAge);
+ ajax.set("cashPrice",cashPrice);
+ ajax.set("playPaiCoin",playPaiCoin);
+ ajax.set("classPrice",classPrice);
+ ajax.set("address",address);
+ ajax.set("applicantsNumber",applicantsNumber);
+ ajax.set("baseNumber",baseNumber);
+ ajax.set("realName",realName);
+ ajax.set("coverDrawing",coverDrawing);
+ ajax.set("introduction",introduction);
+ ajax.set("imgs",imgOne);
+ ajax.set("registrationNotes",registrationNotes);
+ ajax.set("longitude", $("#longitude").val());
+ ajax.set("latitude", $("#latitude").val());
ajax.start();
}
$(function() {
Feng.initValidator("carInfoForm", TCarInfoDlg.validateFields);
// 初始化图片上传
- var carPhoto = new $WebUpload("carPhoto");
+ var carPhoto = new $WebUpload("coverDrawing");
+ carPhoto.setUploadBarId("progressBar");
+ carPhoto.init();
+ var carPhoto = new $WebUpload("registrationNotes");
carPhoto.setUploadBarId("progressBar");
carPhoto.init();
var drivingLicensePhoto = new $WebUpload("drivingLicensePhoto");
drivingLicensePhoto.setUploadBarId("progressBar");
drivingLicensePhoto.init();
+ TCarInfoDlg.searchByStationName();
});
/**
* 选择分公司后执行
*/
-TCarInfoDlg.oneChange = function (e) {
+// TCarInfoDlg.oneChange = function (e) {
+// var oneId=$(e).val();
+// var ajax = new $ax(Feng.ctxPath + "/tDriver/oneChange", function(data){
+// if(data!=null){
+// if(language==1){
+// var content='<option value="">选择所属加盟商</option>';
+// }else if(language==2){
+// var content='<option value="">Choose your franchisee</option>';
+// }else {
+// var content='<option value="">Pilih franchisee Anda</option>';
+// }
+// $.each(data, function(k,v) {
+// content += "<option value='"+v.id+"'>"+v.name+"</option>";
+// });
+// $("#twoId").empty().append(content);
+// }
+// });
+// ajax.set("oneId",oneId);
+// ajax.start();
+// }
+
+TCarInfoDlg.oneChange2 = function (e) {
+ console.log(111)
var oneId=$(e).val();
- var ajax = new $ax(Feng.ctxPath + "/tDriver/oneChange", function(data){
+ var ajax = new $ax(Feng.ctxPath + "/tShop/onChange2", function(data){
if(data!=null){
if(language==1){
- var content='<option value="">选择所属加盟商</option>';
+ var content='<option value="">选择市</option>';
+ }else if(language==2){
+ var content='<option value="">Choose your franchisee</option>';
+ }else {
+ var content='<option value="">Pilih franchisee Anda</option>';
+ }
+ $.each(data, function(k,v) {
+ content += "<option value='"+v.code+"'>"+v.name+"</option>";
+ });
+ $("#cCode").empty().append(content);
+ }
+ });
+ ajax.set("oneId",oneId);
+ ajax.start();
+}
+
+
+TCarInfoDlg.oneChange = function (e) {
+ var oneId=$(e).val();
+ var ajax = new $ax(Feng.ctxPath + "/tCompetition/onChange", function(data){
+ if(data!=null){
+ if(language==1){
+ var content='<option value="">选择市</option>';
+ }else if(language==2){
+ var content='<option value="">Choose your franchisee</option>';
+ }else {
+ var content='<option value="">Pilih franchisee Anda</option>';
+ }
+ $.each(data, function(k,v) {
+ content += "<option value='"+v.code+"'>"+v.name+"</option>";
+ });
+ $("#cCode").empty().append(content);
+ }
+ });
+
+ if (typeof(oneId) == "undefined" || oneId == "undefined") {
+ ajax.set("oneId",0);
+ }else{
+ ajax.set("oneId",oneId);}
+ ajax.start();
+}
+
+
+TCarInfoDlg.oneChangeYys = function(e){
+
+ var oneId= $("input[name='pt']:checked").val()
+
+ console.log("===========oneId=========="+oneId)
+ var SelectValue="";
+ if(SelectValue=='0' ){
+ oneId=0
+ }
+ // var ajax = new $ax(Feng.ctxPath + "/tSite/getChangeOne", function(data){
+ // if(data!=null){
+ // // var content1 = '<option value="0">平台</option>';
+
+ //
+ //
+ // var content='<option value="">选择门店</option>';
+ // $.each(data, function(k,v) {
+ // content += "<option value='"+v.id+"'>"+v.name+"</option>";
+ // });
+ // $("#shopId").empty().append(content);
+ // }
+ // });
+
+
+
+ var ajax = new $ax(Feng.ctxPath + "/tShop/onChange1", function(data){
+ if(data!=null){
+ if (typeof(oneId) != "undefined") {
+ $("#account").prop('disabled', true);
+ }
+ if(language==1){
+ var content='<option value="">选择省</option>';
+ }else if(language==2){
+ var content='<option value="">Choose your franchisee</option>';
+ }else {
+ var content='<option value="">Pilih franchisee Anda</option>';
+ }
+ $.each(data, function(k,v) {
+ content += "<option value='"+v.code+"'>"+v.name+"</option>";
+ });
+ $("#pCode").empty().append(content);
+ }
+ });
+ ajax.set("oneId",0);
+ ajax.start();
+
+
+ if (typeof(oneId) == "undefined"){
+ console.log("===============")
+
+ var button = document.getElementById("account");
+ button.removeAttribute("disabled");
+
+ }
+
+ ajax.set("oneId",oneId);
+ ajax.start();
+
+
+
+};
+
+
+
+TCarInfoDlg.oneChange1 = function (e) {
+ console.log(111)
+ var oneId=$(e).val();
+ var ajax = new $ax(Feng.ctxPath + "/tShop/onChange1", function(data){
+ if(data!=null){
+ if(language==1){
+ var content='<option value="">选择省</option>';
+ }else if(language==2){
+ var content='<option value="">Choose your franchisee</option>';
+ }else {
+ var content='<option value="">Pilih franchisee Anda</option>';
+ }
+ $.each(data, function(k,v) {
+ content += "<option value='"+v.operatorId+"'>"+v.name+"</option>";
+ });
+ $("#pCode").empty().append(content);
+ }
+ });
+ ajax.set("oneId",oneId);
+ ajax.start();
+}
+
+
+TCarInfoDlg.oneChangeNext = function (e) {
+ var oneId=$(e).val();
+ var ajax = new $ax(Feng.ctxPath + "/tCompetition/oneChangeNext", function(data){
+ if(data!=null){
+ if(language==1){
+ var content='<option value="">选择门店</option>';
}else if(language==2){
var content='<option value="">Choose your franchisee</option>';
}else {
@@ -392,13 +612,12 @@
$.each(data, function(k,v) {
content += "<option value='"+v.id+"'>"+v.name+"</option>";
});
- $("#twoId").empty().append(content);
+ $("#shopId").empty().append(content);
}
});
ajax.set("oneId",oneId);
ajax.start();
}
-
/**
* 类型改变执行
* @param e
@@ -416,7 +635,7 @@
*/
TCarInfoDlg.brandChange = function (e) {
var carBrandId=$(e).val();
- var ajax = new $ax(Feng.ctxPath + "/tCar/brandChange", function(data){
+ var ajax = new $ax(Feng.ctxPath + "/tCompetition/brandChange", function(data){
if(data!=null){
if(language==1){
var content='<option value="">选择车辆类型</option>';
@@ -459,3 +678,100 @@
$("#kcModelDiv").hide();
}
}
+var map = new AMap.Map('container', {
+ resizeEnable: true, // 允许缩放
+ zoom: 15 // 设置地图的缩放级别,0 - 20
+});
+var marker;
+//搜索地图
+TCarInfoDlg.searchByStationName = function(e,type){
+ var keyword="成都";
+ if(type==2){
+ keyword = $(e).parent().prev().find("input").val();
+ }else {
+ if($("#address").val()!=null && $("#address").val()!=''){
+ keyword = $("#address").val();
+ }
+ }
+ type=1;
+ AMap.plugin('AMap.Geocoder', function() {
+ var geocoder = new AMap.Geocoder();
+ console.log(geocoder)
+ console.log(keyword)
+ geocoder.getLocation(keyword, function(status, result) {
+ console.log(status,result)
+ if (status === 'complete' && result.info === 'OK') {
+ // 经纬度
+ var lng = result.geocodes[0].location.lng;
+ var lat = result.geocodes[0].location.lat;
+ $("#longitude").val(lng)
+ $("#latitude").val(lat)
+ // 地图实例
+ map = new AMap.Map('container', {
+ resizeEnable: true, // 允许缩放
+ center: [lng, lat], // 设置地图的中心点
+ zoom: 15 // 设置地图的缩放级别,0 - 20
+ });
+ //地图画点
+ //addMarker(lng,lat);
+ if(type==1 || type==2){
+ showInfoClick();
+ if(lng == null){
+ }else{
+ addMarker(lng,lat);
+ }
+ }else{
+ addMarker(lng,lat);
+ }
+ } else {
+ console.log('定位失败!');
+ }
+ });
+ });
+
+}
+//地图点击事件
+function showInfoClick(){
+ map.on('click', function (e) {
+ addMarker(e.lnglat.getLng(),e.lnglat.getLat());
+ });
+}
+//删除点
+function removeMarkers(){
+ if(marker!=null){
+ map.remove(marker);
+ }
+
+}
+// 实例化点标记
+function addMarker(lon,lat) {
+ removeMarkers();
+ marker = new AMap.Marker({
+ map: map,
+ position: new AMap.LngLat(lon, lat), // 经纬度
+ });
+ //加经纬度
+ $("#lon").val(lon);
+ $("#lat").val(lat);
+ var lnglatXY = [lon, lat];//地图上所标点的坐标
+ AMap.service('AMap.Geocoder',function() {//回调函数
+ geocoder = new AMap.Geocoder({
+ });
+ geocoder.getAddress(lnglatXY, function (status, result) {
+ if (status === 'complete' && result.info === 'OK') {
+ //获得了有效的地址信息:
+ //即,result.regeocode.formattedAddress
+ // alert(result.regeocode.formattedAddress)
+ //document.getElementById("address").value=result.regeocode.formattedAddress;//将获取到的地址信息赋值给文本框,保存进数据库
+
+ var address = result.regeocode.formattedAddress;
+ var city = result.regeocode.addressComponent.city;
+ var province = result.regeocode.addressComponent.province;
+ var district = result.regeocode.addressComponent.district;
+ $("#address").val(address);
+ } else {
+ //获取地址失败
+ }
+ });
+ })
+}
\ No newline at end of file
--
Gitblit v1.7.1