Page 3 of 4

Re: StudentPro

Posted: Thu Sep 13, 2018 8:02 pm
by Valeriam04
JosueFerMar wrote:
Thu Sep 13, 2018 6:46 pm
Sprint 7 11/09/2018

Que se hizo?
Los estudiantes ya pueden guardar sus cursos

Problemas?
Falta de tiempo

Que se va a hacer?
La posibilidad de visualizar los cursos guardados y la posibilidad de guardar los tiempos disponibles

Code: Select all

import React from 'react';
import { View, Text, ActivityIndicator, Image } from 'react-native';

import styles from './styles'

export default class extends React.Component {
    render() {
        return (
            <View style={styles.container}>
                <View style={styles.wrapper}>
                    <Image style={styles.image} source={{uri: ""}}/>
                    <Text style={styles.title}>StudentPro</Text>
                </View>
                <View style={styles.activityIndicatorContainer}>
                    <ActivityIndicator animating={true}/>
                </View>
            </View>
        );
    }
}
Image

Re: StudentPro

Posted: Thu Sep 13, 2018 8:09 pm
by Valeriam04
JosueFerMar wrote:
Thu Sep 13, 2018 6:45 pm
Sprint 6 04/09/2018

Que se hizo?
se termino el logeo y registro por roles

Problemas?
Falta de tiempo

Que se va a hacer?
Se empezara con el modulo de guardar los cursos

Code: Select all

form.js

import React from 'react';
import PropTypes from 'prop-types'

import {Text, View} from 'react-native';
import {Button} from 'react-native-elements'

import {isEmpty, validate} from '../../utils/validate'

import styles from "./styles"

import AuthTextInput from "../AuthTextInput"

class Form extends React.Component {
    constructor(props) {
        super(props);

        const { fields, error } = props;

        this.state = this.createState(fields, error);

        //bind functions
        this.onChange = this.onChange.bind(this);
        this.onSubmit = this.onSubmit.bind(this);
    }

    createState(fields, error) {
        //create the state
        const state = {};
        fields.forEach((field) => {
            let {key, type, value} = field;
            state[key] = {type: type, value: value};
        })

        state["error"] = error;
        return state;
    }

    onSubmit() {
        const data = this.state;
        const result = validate(data);

        if (!result.success) this.setState({error: result.error});
        else this.props.onSubmit(this.extractData(data));
    }

    extractData(data) {
        const retData = {};

        Object.keys(data).forEach(function (key) {
            if (key !== "error") {
                let {value} = data[key];
                retData[key] = value;
            }
        });

        return retData;
    }

    onChange(key, text) {
        const state = this.state;
        state[key]['value'] = text;
        this.setState(state);
    }

    render() {
        const { fields, showLabel, buttonTitle, onForgotPassword} = this.props;

        return (
            <View style={styles.container}>
                <View style={styles.wrapper}>
                    {
                        (!isEmpty(this.state.error['general'])) &&
                        <Text style={styles.errorText}>{this.state.error['general']}</Text>
                    }

                    {
                        fields.map((data, idx) => {
                            let {key, label, placeholder, autoFocus, secureTextEntry, keyboardType} = data;
                            return (
                                <AuthTextInput key={key}
                                               label={label}
                                               showLabel={showLabel}
                                               placeholder={placeholder}
                                               autoFocus={autoFocus}
                                               onChangeText={(text) => this.onChange(key, text)}
                                               secureTextEntry={secureTextEntry}
                                               keyboardType={keyboardType}
                                               value={this.state[key]['value']}
                                               error={this.state.error[key]}/>
                            )
                        })
                    }

                    <Button
                        raised
                        title={buttonTitle}
                        borderRadius={0}
                        containerViewStyle={styles.containerView}
                        buttonStyle={styles.button}
                        textStyle={styles.buttonText}
                        onPress={this.onSubmit}/>
                    {
                        this.props.onForgotPassword !== null &&
                        <Text style={styles.forgotText} onPress={onForgotPassword}>
                            Forgot password?</Text>
                    }

                </View>
            </View>
        );
    }
}

Form.propTypes = {
    // fields: PropTypes.object,
    showLabel: PropTypes.bool,
    buttonTitle: PropTypes.string,
    onSubmit: PropTypes.func.isRequired,
    error: PropTypes.object
}


Form.defaultProps = {
    onForgotPassword: null,
}


export default Form;

Code: Select all

style.js

import { StyleSheet } from 'react-native';

import { theme } from "../../index"
const  { color, padding, windowWidth, normalize, fontSize, fontFamily } = theme;

const styles = StyleSheet.create({
    container: {
        flex: 1,
        backgroundColor: color.white,
    },

    wrapper:{
        justifyContent:"center",
        alignItems:"center"
    },

    errorText:{
        color: color.red,
        width: (windowWidth - 45),
        marginTop: 20,
    },

    containerView:{
        marginVertical: padding * 3,
        width: windowWidth - 40
    },

    socialButton:{
        height: normalize(55),
        borderRadius:4,
        marginTop:0,
        marginBottom:0
    },

    button:{
        backgroundColor: "#FF553F",
        height: normalize(55)
    },

    buttonText:{
        fontSize: fontSize.regular + 2,
        fontFamily: fontFamily.medium
    },

    forgotText:{
        textAlign:"center",
        color:color.black,
        marginBottom: padding,
        fontSize: fontSize.regular,
        fontFamily: fontFamily.medium,
    }
});


export default styles;

Code: Select all

index.js

import Form from './Form'

export default Form;
Image

Re: StudentPro

Posted: Tue Sep 18, 2018 6:16 pm
by Valeriam04
Sprint 6 18/09/2018

Que se hizo?
Se continua con el modulo de añadir la posibilidad de agregar horarios y cursos para estudiantes universitarios

Problemas?
Falta de tiempo

Que se va a hacer?
La posibilidad de visualizar los cursos guardados y la posibilidad de guardar los tiempos disponibles

Re: StudentPro

Posted: Tue Sep 18, 2018 7:03 pm
by Valeriam04
Preentrega


Re: StudentPro

Posted: Thu Sep 20, 2018 11:18 am
by JosueFerMar

Re: StudentPro

Posted: Tue Sep 25, 2018 10:51 am
by JosueFerMar
Sprint 8 20/09/2018

¿Que se hizo?
Los padres de familia ahora pueden ver los cursos y horas de tutoria que guardaron, ademas de ello pueden eliminar aquello que deseen

¿Que problemas Hubieron?
El tiempo siempre ha sido el mayor problema y en este sprint no es la excepcion

¿Que se va a hacer?
Que los padres puedan ver los tutores disponibles

Re: StudentPro

Posted: Tue Sep 25, 2018 10:54 am
by JosueFerMar
Avance Sprint 9 de 27/09/2018 25/09/2018

¿Que se hizo?
Los padres ahora pueden ver los tutores disponibles y su perfil

¿Que problemas hubieron?
falta de tiempo

¿Que se va a hacer?
Que los padres puedan solicitar una tutoria y que a los tutores se les notifique

Re: StudentPro

Posted: Mon Oct 01, 2018 8:11 pm
by Valeriam04
Avance Sprint 9 de 27/09/2018

¿Que se hizo?
Se añadió la forma de crear los APK para Android e iOS

¿Que problemas hubieron?
falta de tiempo

¿Que se va a hacer?
Que los padres puedan solicitar una tutoria y que a los tutores se les notifique

Re: StudentPro

Posted: Tue Oct 02, 2018 10:37 am
by JosueFerMar
Avance Sprint 10 de 04/10/2018

¿Que se hizo?
Como tal no se pudo avanzar en el proyecto

¿Que problemas hubieron?
falta de tiempo

¿Que se va a hacer?
Que los padres puedan solicitar una tutoria y que a los tutores se les notifique

Re: StudentPro

Posted: Sat Oct 06, 2018 12:30 pm
by Valeriam04
JosueFerMar wrote:
Tue Oct 02, 2018 10:37 am
Avance Sprint 10 de 04/10/2018

¿Que se hizo?
Como tal no se pudo avanzar en el proyecto, se termino la automatización del informe de Code Review.
En el archivo se pueden marcar las celdas que no cumplen con los items establecidos y se envía el correo a la persona responsable del proyecto

¿Que problemas hubieron?
falta de tiempo

¿Que se va a hacer?
Que los padres puedan solicitar una tutoria y que a los tutores se les notifique