Löschfunktion vollständigimplementiert.

This commit is contained in:
Carsten Hilmer 2016-02-03 13:51:17 +01:00
parent 5b51b8b31f
commit 4fdd18bb11
26 changed files with 232 additions and 62 deletions

View File

@ -66,7 +66,7 @@
<entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js"> <entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="421" column="0" selection-start-line="421" selection-start-column="0" selection-end-line="421" selection-end-column="0" /> <caret line="452" column="0" selection-start-line="452" selection-start-column="0" selection-end-line="452" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
@ -1264,7 +1264,7 @@
</option> </option>
<option name="modificationStamps"> <option name="modificationStamps">
<map> <map>
<entry key="$PROJECT_DIR$" value="5817820619913" /> <entry key="$PROJECT_DIR$" value="5817827086448" />
</map> </map>
</option> </option>
<option name="projectBuildClasspath"> <option name="projectBuildClasspath">
@ -1896,7 +1896,7 @@
<editor active="true" /> <editor active="true" />
<layout> <layout>
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.57310706" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Messages" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.57310706" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Build Variants" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> <window_info id="Build Variants" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> <window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
@ -1978,7 +1978,7 @@
<entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js"> <entry file="file://$PROJECT_DIR$/assets/www/js/controllers.js">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0"> <state vertical-scroll-proportion="0.0">
<caret line="421" column="0" selection-start-line="421" selection-start-column="0" selection-end-line="421" selection-end-column="0" /> <caret line="452" column="0" selection-start-line="452" selection-start-column="0" selection-end-line="452" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>

View File

@ -1,6 +1,6 @@
angular.module('starter.controllers', []) angular.module('starter.controllers', [])
.controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$http,$filter) { .controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$filter) {
$scope.preis=""; $scope.preis="";
$scope.name=""; $scope.name="";
@ -379,19 +379,9 @@ $scope.show = function() {
}) })
.controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout) { .controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout,$cordovaFile,$ionicPopup) {
/*
$scope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {
if ($location.path() == "/tab/buys") {
$scope.show($ionicLoading);
$timeout(fill_list, 1000);
}
});
*/
$scope.$on( "$ionicView.enter", function( scopes, states ) { $scope.$on( "$ionicView.enter", function( scopes, states ) {
$scope.show($ionicLoading); $scope.show($ionicLoading);
@ -425,6 +415,48 @@ $scope.show = function() {
}; };
$scope.deleteBuy = function(id,imagefile) {
$ionicPopup.confirm({
title: 'System-Hinweis',
template: 'Möchten Sie das Bild wirklich löschen?'
})
.then(function(res) {
if (res) {
//Dateien Löschen im Programmpfad
$cordovaFile.removeFile(cordova.file.applicationStorageDirectory, imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Dateien Löschen im Public-Programmpfad
$cordovaFile.removeFile(cordova.file.externalRootDirectory + "/WolleRosenKaufen", imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Datenbank-eintrag löschen
$database.deleteBuy(id);
$scope.show($ionicLoading);
$timeout(fill_list, 300);
}
});
}
$scope.showImages = function(imagesrc) { $scope.showImages = function(imagesrc) {
$scope.imagesrc=imagesrc; $scope.imagesrc=imagesrc;
$scope.showModal('templates/image-popover.html'); $scope.showModal('templates/image-popover.html');

View File

@ -71,6 +71,16 @@ angular.module('starter.services', [])
console.error(error); console.error(error);
}); });
}, },
deleteBuy: function(id) {
query="DELETE FROM buys WHERE ID = ?;";
return $cordovaSQLite.execute(self.db,query,[id]).
then(function(result) {
console.log("Gelöscht");
query=null;
}, function(error) {
console.error(error);
});
},
getAllBuys: function(){ getAllBuys: function(){
var ArrayQ=[]; var ArrayQ=[];
query="SELECT * FROM buys order by id DESC"; query="SELECT * FROM buys order by id DESC";
@ -79,6 +89,7 @@ angular.module('starter.services', [])
for(j=0;j<result.rows.length;j++){ for(j=0;j<result.rows.length;j++){
var List={}; var List={};
//console.log(result.rows.item(j)); //console.log(result.rows.item(j));
List.id=result.rows.item(j).id;
List.name=result.rows.item(j).Name; List.name=result.rows.item(j).Name;
List.bild=result.rows.item(j).Bild; List.bild=result.rows.item(j).Bild;
List.bildtext=result.rows.item(j).Bildtext; List.bildtext=result.rows.item(j).Bildtext;

View File

@ -10,7 +10,7 @@
<div class="list card"> <div class="list card">
<div class="item item-avatar"> <img ng-src="{{i.appimgpublicpath}}"> <div class="item item-avatar"> <img ng-src="{{i.appimgpublicpath}}">
<h2> <div class="oleo">{{i.name}}</div> </h2><div class="oleo-vsmall">{{i.kaufdatum}}</div> <h2> <div class="oleo">{{i.name}}</div> </h2><div class="oleo-vsmall">Erstellt am: {{i.kaufdatum}}</div>
</div> </div>
<div class="item item-body"> <div class="item item-body">
@ -20,7 +20,7 @@
<ion-item> <ion-item>
<div class="item tabs tabs-secondary tabs-icon-left"> <div class="item tabs tabs-secondary tabs-icon-left">
<a href="#" class="tab-item"><i class="icon ion-trash-a button-custom"></i>Löschen</a> <a href="#" class="tab-item"ng-click="deleteBuy(i.id,i.bild)"><i class="icon ion-trash-a button-custom"></i>Löschen</a>
<a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a> <a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a>
<a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a> <a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a>
</div> </div>

View File

@ -1,6 +1,6 @@
angular.module('starter.controllers', []) angular.module('starter.controllers', [])
.controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$http,$filter) { .controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$filter) {
$scope.preis=""; $scope.preis="";
$scope.name=""; $scope.name="";
@ -379,19 +379,9 @@ $scope.show = function() {
}) })
.controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout) { .controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout,$cordovaFile,$ionicPopup) {
/*
$scope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {
if ($location.path() == "/tab/buys") {
$scope.show($ionicLoading);
$timeout(fill_list, 1000);
}
});
*/
$scope.$on( "$ionicView.enter", function( scopes, states ) { $scope.$on( "$ionicView.enter", function( scopes, states ) {
$scope.show($ionicLoading); $scope.show($ionicLoading);
@ -425,6 +415,48 @@ $scope.show = function() {
}; };
$scope.deleteBuy = function(id,imagefile) {
$ionicPopup.confirm({
title: 'System-Hinweis',
template: 'Möchten Sie das Bild wirklich löschen?'
})
.then(function(res) {
if (res) {
//Dateien Löschen im Programmpfad
$cordovaFile.removeFile(cordova.file.applicationStorageDirectory, imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Dateien Löschen im Public-Programmpfad
$cordovaFile.removeFile(cordova.file.externalRootDirectory + "/WolleRosenKaufen", imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Datenbank-eintrag löschen
$database.deleteBuy(id);
$scope.show($ionicLoading);
$timeout(fill_list, 300);
}
});
}
$scope.showImages = function(imagesrc) { $scope.showImages = function(imagesrc) {
$scope.imagesrc=imagesrc; $scope.imagesrc=imagesrc;
$scope.showModal('templates/image-popover.html'); $scope.showModal('templates/image-popover.html');

View File

@ -71,6 +71,16 @@ angular.module('starter.services', [])
console.error(error); console.error(error);
}); });
}, },
deleteBuy: function(id) {
query="DELETE FROM buys WHERE ID = ?;";
return $cordovaSQLite.execute(self.db,query,[id]).
then(function(result) {
console.log("Gelöscht");
query=null;
}, function(error) {
console.error(error);
});
},
getAllBuys: function(){ getAllBuys: function(){
var ArrayQ=[]; var ArrayQ=[];
query="SELECT * FROM buys order by id DESC"; query="SELECT * FROM buys order by id DESC";
@ -79,6 +89,7 @@ angular.module('starter.services', [])
for(j=0;j<result.rows.length;j++){ for(j=0;j<result.rows.length;j++){
var List={}; var List={};
//console.log(result.rows.item(j)); //console.log(result.rows.item(j));
List.id=result.rows.item(j).id;
List.name=result.rows.item(j).Name; List.name=result.rows.item(j).Name;
List.bild=result.rows.item(j).Bild; List.bild=result.rows.item(j).Bild;
List.bildtext=result.rows.item(j).Bildtext; List.bildtext=result.rows.item(j).Bildtext;

View File

@ -10,7 +10,7 @@
<div class="list card"> <div class="list card">
<div class="item item-avatar"> <img ng-src="{{i.appimgpublicpath}}"> <div class="item item-avatar"> <img ng-src="{{i.appimgpublicpath}}">
<h2> <div class="oleo">{{i.name}}</div> </h2><div class="oleo-vsmall">{{i.kaufdatum}}</div> <h2> <div class="oleo">{{i.name}}</div> </h2><div class="oleo-vsmall">Erstellt am: {{i.kaufdatum}}</div>
</div> </div>
<div class="item item-body"> <div class="item item-body">
@ -20,7 +20,7 @@
<ion-item> <ion-item>
<div class="item tabs tabs-secondary tabs-icon-left"> <div class="item tabs tabs-secondary tabs-icon-left">
<a href="#" class="tab-item"><i class="icon ion-trash-a button-custom"></i>Löschen</a> <a href="#" class="tab-item"ng-click="deleteBuy(i.id,i.bild)"><i class="icon ion-trash-a button-custom"></i>Löschen</a>
<a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a> <a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a>
<a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a> <a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a>
</div> </div>

View File

@ -1,6 +1,6 @@
angular.module('starter.controllers', []) angular.module('starter.controllers', [])
.controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$http,$filter) { .controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$filter) {
$scope.preis=""; $scope.preis="";
$scope.name=""; $scope.name="";
@ -379,19 +379,9 @@ $scope.show = function() {
}) })
.controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout) { .controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout,$cordovaFile,$ionicPopup) {
/*
$scope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {
if ($location.path() == "/tab/buys") {
$scope.show($ionicLoading);
$timeout(fill_list, 1000);
}
});
*/
$scope.$on( "$ionicView.enter", function( scopes, states ) { $scope.$on( "$ionicView.enter", function( scopes, states ) {
$scope.show($ionicLoading); $scope.show($ionicLoading);
@ -425,6 +415,48 @@ $scope.show = function() {
}; };
$scope.deleteBuy = function(id,imagefile) {
$ionicPopup.confirm({
title: 'System-Hinweis',
template: 'Möchten Sie das Bild wirklich löschen?'
})
.then(function(res) {
if (res) {
//Dateien Löschen im Programmpfad
$cordovaFile.removeFile(cordova.file.applicationStorageDirectory, imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Dateien Löschen im Public-Programmpfad
$cordovaFile.removeFile(cordova.file.externalRootDirectory + "/WolleRosenKaufen", imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Datenbank-eintrag löschen
$database.deleteBuy(id);
$scope.show($ionicLoading);
$timeout(fill_list, 300);
}
});
}
$scope.showImages = function(imagesrc) { $scope.showImages = function(imagesrc) {
$scope.imagesrc=imagesrc; $scope.imagesrc=imagesrc;
$scope.showModal('templates/image-popover.html'); $scope.showModal('templates/image-popover.html');

View File

@ -71,6 +71,16 @@ angular.module('starter.services', [])
console.error(error); console.error(error);
}); });
}, },
deleteBuy: function(id) {
query="DELETE FROM buys WHERE ID = ?;";
return $cordovaSQLite.execute(self.db,query,[id]).
then(function(result) {
console.log("Gelöscht");
query=null;
}, function(error) {
console.error(error);
});
},
getAllBuys: function(){ getAllBuys: function(){
var ArrayQ=[]; var ArrayQ=[];
query="SELECT * FROM buys order by id DESC"; query="SELECT * FROM buys order by id DESC";
@ -79,6 +89,7 @@ angular.module('starter.services', [])
for(j=0;j<result.rows.length;j++){ for(j=0;j<result.rows.length;j++){
var List={}; var List={};
//console.log(result.rows.item(j)); //console.log(result.rows.item(j));
List.id=result.rows.item(j).id;
List.name=result.rows.item(j).Name; List.name=result.rows.item(j).Name;
List.bild=result.rows.item(j).Bild; List.bild=result.rows.item(j).Bild;
List.bildtext=result.rows.item(j).Bildtext; List.bildtext=result.rows.item(j).Bildtext;

View File

@ -10,7 +10,7 @@
<div class="list card"> <div class="list card">
<div class="item item-avatar"> <img ng-src="{{i.appimgpublicpath}}"> <div class="item item-avatar"> <img ng-src="{{i.appimgpublicpath}}">
<h2> <div class="oleo">{{i.name}}</div> </h2><div class="oleo-vsmall">{{i.kaufdatum}}</div> <h2> <div class="oleo">{{i.name}}</div> </h2><div class="oleo-vsmall">Erstellt am: {{i.kaufdatum}}</div>
</div> </div>
<div class="item item-body"> <div class="item item-body">
@ -20,7 +20,7 @@
<ion-item> <ion-item>
<div class="item tabs tabs-secondary tabs-icon-left"> <div class="item tabs tabs-secondary tabs-icon-left">
<a href="#" class="tab-item"><i class="icon ion-trash-a button-custom"></i>Löschen</a> <a href="#" class="tab-item"ng-click="deleteBuy(i.id,i.bild)"><i class="icon ion-trash-a button-custom"></i>Löschen</a>
<a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a> <a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a>
<a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a> <a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a>
</div> </div>

View File

@ -18,7 +18,7 @@ document.getElementById(id+'Link').style.display = 'none';
<body> <body>
<h1>Lint Report</h1> <h1>Lint Report</h1>
<div class="titleSeparator"></div> <div class="titleSeparator"></div>
Check performed at Wed Feb 03 12:52:32 CET 2016.<br/> Check performed at Wed Feb 03 13:46:44 CET 2016.<br/>
6 errors and 0 warnings found:<br/><br/> 6 errors and 0 warnings found:<br/><br/>
<table class="overview"> <table class="overview">
<tr><td></td><td class="categoryColumn"><a href="#Correctness">Correctness</a> <tr><td></td><td class="categoryColumn"><a href="#Correctness">Correctness</a>

View File

@ -1,6 +1,6 @@
angular.module('starter.controllers', []) angular.module('starter.controllers', [])
.controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$http,$filter) { .controller('DashCtrl', function($scope,$ionicPopup,$http, $database, $timeout,$rootScope, $cordovaFileTransfer,$cordovaFile,$ionicLoading,$state,$filter) {
$scope.preis=""; $scope.preis="";
$scope.name=""; $scope.name="";
@ -375,23 +375,11 @@ $scope.show = function() {
* Rosen konsuieren ENDE * Rosen konsuieren ENDE
*/ */
}) })
.controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout) { .controller('BuysCtrl', function($scope, $database,$location,$ionicModal,$ionicLoading,$timeout,$cordovaFile,$ionicPopup) {
/*
$scope.$on('$stateChangeSuccess', function(event, toState, toParams, fromState, fromParams) {
if ($location.path() == "/tab/buys") {
$scope.show($ionicLoading);
$timeout(fill_list, 1000);
}
});
*/
$scope.$on( "$ionicView.enter", function( scopes, states ) { $scope.$on( "$ionicView.enter", function( scopes, states ) {
$scope.show($ionicLoading); $scope.show($ionicLoading);
@ -425,6 +413,48 @@ $scope.show = function() {
}; };
$scope.deleteBuy = function(id,imagefile) {
$ionicPopup.confirm({
title: 'System-Hinweis',
template: 'Möchten Sie das Bild wirklich löschen?'
})
.then(function(res) {
if (res) {
//Dateien Löschen im Programmpfad
$cordovaFile.removeFile(cordova.file.applicationStorageDirectory, imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Dateien Löschen im Public-Programmpfad
$cordovaFile.removeFile(cordova.file.externalRootDirectory + "/WolleRosenKaufen", imagefile)
.then(function (success) {
// success
}, function (error) {
// error
});
//Datenbank-eintrag löschen
$database.deleteBuy(id);
$scope.show($ionicLoading);
$timeout(fill_list, 300);
}
});
}
$scope.showImages = function(imagesrc) { $scope.showImages = function(imagesrc) {
$scope.imagesrc=imagesrc; $scope.imagesrc=imagesrc;
$scope.showModal('templates/image-popover.html'); $scope.showModal('templates/image-popover.html');

View File

@ -71,6 +71,16 @@ angular.module('starter.services', [])
console.error(error); console.error(error);
}); });
}, },
deleteBuy: function(id) {
query="DELETE FROM buys WHERE ID = ?;";
return $cordovaSQLite.execute(self.db,query,[id]).
then(function(result) {
console.log("Gelöscht");
query=null;
}, function(error) {
console.error(error);
});
},
getAllBuys: function(){ getAllBuys: function(){
var ArrayQ=[]; var ArrayQ=[];
query="SELECT * FROM buys order by id DESC"; query="SELECT * FROM buys order by id DESC";
@ -79,6 +89,7 @@ angular.module('starter.services', [])
for(j=0;j<result.rows.length;j++){ for(j=0;j<result.rows.length;j++){
var List={}; var List={};
//console.log(result.rows.item(j)); //console.log(result.rows.item(j));
List.id=result.rows.item(j).id;
List.name=result.rows.item(j).Name; List.name=result.rows.item(j).Name;
List.bild=result.rows.item(j).Bild; List.bild=result.rows.item(j).Bild;
List.bildtext=result.rows.item(j).Bildtext; List.bildtext=result.rows.item(j).Bildtext;

View File

@ -20,7 +20,7 @@
<ion-item> <ion-item>
<div class="item tabs tabs-secondary tabs-icon-left"> <div class="item tabs tabs-secondary tabs-icon-left">
<a href="#" class="tab-item"><i class="icon ion-trash-a button-custom"></i>Löschen</a> <a href="#" class="tab-item"ng-click="deleteBuy(i.id,i.bild)"><i class="icon ion-trash-a button-custom"></i>Löschen</a>
<a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a> <a href="#" class="tab-item" ng-click="showImages(i.appimgpublicpath)"><i class="icon ion-android-image button-custom"></i>Anzeigen</a>
<a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a> <a href="#" class="tab-item"><i class="icon ion-share button-custom"></i>Teilen</a>
</div> </div>