Skip to content

Commit 73c0147

Browse files
committed
Borra comentarios de libros
1 parent b98f972 commit 73c0147

File tree

3 files changed

+43
-10
lines changed

3 files changed

+43
-10
lines changed

App.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,6 @@ const AppNavigator = createStackNavigator({
2323
AllCategories: AllCategoriesScreen,
2424
Product: Product,
2525
EditComment: EditComment
26-
}, { headerMode: 'none', initialRouteName: 'Product'});
26+
}, { headerMode: 'none', initialRouteName: 'Home'});
2727

2828
export default createAppContainer(AppNavigator);

src/views/main/categories/allCategories/product/product.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ export default class Product extends Component {
3838
</Button>
3939
</HeaderComponent>
4040
{
41-
this.state.product && this.state.comments ?
41+
this.state.product ?
4242
<ScrollView contentContainerStyle={styles.viewContainer}>
4343
<Text style={[styles.title, styles.green]}>
4444
{this.state.product.NombreL}
@@ -125,6 +125,8 @@ export default class Product extends Component {
125125
</Button>
126126
</View>
127127
{
128+
this.state.comments
129+
&&
128130
this.state.comments.map(item => item)
129131
}
130132
</View>

src/views/main/categories/allCategories/product/productModel.js

Lines changed: 39 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import fetchBlob from '../../../../../utils/fetchBlob/RNFetchBlob'
22
import AsyncStorage from '@react-native-community/async-storage'
3-
import { ToastAndroid } from 'react-native'
3+
import { ToastAndroid, Alert } from 'react-native'
44
import React from 'react'
5-
import { Card, CardItem, Body, Text, View, Icon, Textarea } from 'native-base'
5+
import { Card, CardItem, Body, Text, View, Icon, Textarea, Toast } from 'native-base'
66
import stylesContainer from './styles'
77

88
const styles = stylesContainer.styles;
@@ -80,7 +80,7 @@ const loadComments = async (idProducto, context) => {
8080
&&
8181
<View style={styles.flexRowCommentButtons}>
8282
<Icon onPress={() => handleEditComment(item.idComent, context)} style={styles.commentIcon} type="FontAwesome" name='pencil' />
83-
<Icon onPress={() => handleDeleteComment(item.idComent)} style={styles.commentIcon} type="FontAwesome" name='trash' />
83+
<Icon onPress={() => handleDeleteComment(item.idComent, context)} style={styles.commentIcon} type="FontAwesome" name='trash' />
8484
</View>
8585
}
8686
</Body>
@@ -90,18 +90,49 @@ const loadComments = async (idProducto, context) => {
9090
context.setState({
9191
comments: resp.data
9292
})
93+
} else {
94+
context.setState({
95+
comments: undefined
96+
})
9397
}
9498
}
9599

96100
const handleEditComment = async (idComentario, context) => {
97101
const idCliente = context.state.dataClient.idCliente
98-
let comentario = context.state.commentsRaw.filter( item => parseInt(item.idComent) == parseInt(idComentario))
102+
let comentario = context.state.commentsRaw.filter(item => parseInt(item.idComent) == parseInt(idComentario))
99103
comentario = comentario[0].comentario
100-
context.props.navigation.navigate('EditComment', {idComentario, comentario, idCliente, context})
104+
context.props.navigation.navigate('EditComment', { idComentario, comentario, idCliente, context })
101105
}
102106

103-
const handleDeleteComment = async (idComment) => {
104-
ToastAndroid.show(`Has eliminado el comentario ${idComment}`, ToastAndroid.SHORT)
107+
const handleDeleteComment = async (idComment, context) => {
108+
Alert.alert(
109+
'Atención',
110+
'¿Quieres borrar tu comentario?',
111+
[
112+
{
113+
text: 'No, cancelar',
114+
onPress: () => ToastAndroid.show('Comentario NO borrado', ToastAndroid.SHORT)
115+
},
116+
{
117+
text: 'Si, borrar',
118+
onPress: async() => {
119+
const idCliente = context.state.dataClient.idCliente
120+
data = [{ name: 'idComentario', data: String(idComment) },
121+
{ name: 'idCliente', data: String(idCliente) }]
122+
const resp = await fetchBlob.postData('comentarioLibroApp.php?site=public&action=delete', data);
123+
if (resp.status) {
124+
const idProduct = context.state.product.idLibro
125+
await loadReactions(idProduct, context)
126+
await loadComments(idProduct, context)
127+
await loadProduct(idProduct, context)
128+
ToastAndroid.show('Comentario borrado :D', ToastAndroid.SHORT)
129+
} else {
130+
alert('Error al borrar comentario')
131+
}
132+
}
133+
}
134+
]
135+
)
105136
}
106137

107138
const handleLikeClick = async (context) => {
@@ -184,8 +215,8 @@ const addComment = async (context) => {
184215
console.log(resp)
185216
if (resp.status) {
186217
await loadReactions(idProduct, context)
187-
await loadProduct(idProduct, context)
188218
await loadComments(idProduct, context)
219+
await loadProduct(idProduct, context)
189220
ToastAndroid.show('¡Comentario agregado!', ToastAndroid.SHORT);
190221
} else {
191222
alert('Error al crear comentario')

0 commit comments

Comments
 (0)