Sei sulla pagina 1di 85

Meycauayan City Oridinace Mobile Application

A Thesis
Presented to the Faculty of
Information and Communications Technology Program
STI College Meycauayan City

In Partial Fulfilment
of the Requirements for the Degree
Bachelor of Science in Information Technology

Paul Albert C. Velasco


Rhev II A. Merlin
Ronnie L. Suan
Rossel Anne P. Martillano

October 2018
ENDORSEMENT FORM FOR ORAL DEFENSE

TITLE OF RESEARCH: Meycauayan City Ordinance Mobile Application

NAME OF PROPONENTS: Paul Albert C. Velasco


Rhev II A. Merlin
Ronnie L. Suan
Rossel Anne P. Martillano

In Partial Fulfilment of the Requirements


for the degree Bachelor of Science in Information Technology
has been examined and is recommended for Oral Defense.

ENDORSED BY:

Mr. Jake Garfield V. Agupitan


Thesis Adviser

APPROVED FOR PROPOSAL DEFENSE:

Ms. Janice A. Capule


Thesis Coordinator

NOTED BY:

Mr. Raymond D.G. Pacionista


Program Head

October 2018

STI College Meycauayan ii


APPROVAL SHEET

This thesis titled: Meycauayan City Ordinance prepared and submitted by Paul Albert
C. Velasco; Rhev II A. Merlin; Ronnie L. Suan; and Rossel Anne P. Martillano, in
partial fulfilment of the requirements for the degree of Bachelor of Science in
Information Technology, has been examined and is recommended for acceptance an
approval.

Mr. Jake Garfield V. Agupitan


Thesis Adviser

Accepted and approved by the Thesis Review Panel


in partial fulfilment of the requirements for the degree of
Bachelor of Science in Information Technology

Mr. Erroldian Lord P. Sumile


Panel Member

Ms. Myra P. Baniquet


Lead Panelist

APPROVED:

Ms. Janice A. Capule Mr. Raymond D.G. Pacionista


Thesis Coordinator Program Head

October 2018

STI College Meycauayan iii


ACKNOWLEDGEMENTS

First of all, the developers are grateful to The Almighty God for the good health and
wellbeing that were necessary to complete this project.

We developers wish to express our sincere gratitude to Ms. Janice A. Capule, our Project
Coordinator, for the continuous encouragement and endless support;

We place on record, our sincere thank you to Mr. Jake Garfield V. Agupitan, our Project
Adviser, for his patience, motivation, enthusiasm, and immense knowledge. His guidance
helped us in all the time of writing and creating this project. We could not have imagined
having a better advisor and mentor for our Project;

Besides our advisor, we would also like to thank the rest of our Project Review Panel:
Ms. Myra P. Baniquet, Mr. Erroldian P. Sumile, for their encouragement, insightful
comments, suggestions and hard questions;

We also thank Ms. Maribel Laxamana, our School Librarian, for letting us use the
necessary documents that we used as a reference;

We take this opportunity to express our gratitude to all of our Friends and Department
faculty members for their help and support.

Last but not the least, we would like to thank our own family, who always believed in our
skills and supported our studies and of course for their unceasing encouragement, support
and attention.

Thank you for the never ending support that you gave us throughout this venture.

STI College Meycauayan iv


ABSTRACT

Title of research: Meycauayan City Ordinance Mobile Application

Researchers: Paul Albert C. Velasco


Rhev II A. Merlin
Ronnie L. Suan
Rossel Anne P. Martillano

Degree: Bachelor of Science in Information Technology

Date of Completion: June 2019

Key words: Mobile Application, Ordinance, Animation

Mobile Application is basically a computer generated program designed and develops


through smart phones and other devices. The idea of bringing the Ordinance into a
mobile application is a great way to easy understand the ordinances that existing in their
own city particularly Meycauayan. This study may even make the community to be
connecting as one. Build their personality and discipline is a choice. Choose to be good
rather than not. This Meycauayan City Ordinance Mobile application encourages you to
learn about the rules and regulation that surrounds you. Many people did not know about
the policy around them with this application helps the city and also the community to be
guide and to discipline them. This application they can read, watch, listens to the
ordinance that implemented at City of Meycauayan. Through Animation is for the person
who wants to see the one ordinance that they want to know by watching animated
scenarios with information that they need to know in the specific ordinance. Most of the
residence of Meycauayan has difficulty in reading. Reading can be encouraging them to
learn but other difficulties especially for that citizen who has deficiencies voice
implementation is for the user to the effectiveness in reading and gathering of
information.

STI College Meycauayan v


TABLE OF CONTENTS

Page
Title Page i
Endorsement Form for Proposal Defense ii
Approval Sheet iii
Acknowledgements iv
Abstract v
Table of Contents vi
List of Figures Vii
List of Appendices ix
Introduction 1–2
Background of the Problem 3
General Problem 4
4–5
Specific Problem
Overview of the Current State of Technology 6-7
Objectives of the Study
General Objectives 8
Specific Objectives 8-9
Scope and Limitations of the Study 10-14
Literature Review 15
Review of related literature, studies or systems 16
Synthesis 17
Meycauayan City Ordinance
Overview of the Project 18
System Design Specifications 18
Resources 19 – 20
Results and Discussions 26
Conclusions and Recommendations 27
References 28
Appendices 29

STI College Meycauayan vi


LIST OF FIGURES

Figure Page
1.0 Context Diagram 21
2.0 Flow Chart 22
3.0 Software Development Cycle 23 – 25

STI College Meycauayan vii


LIST OF APPENDICES

Appendix Page
A Gantt chart of activities 29 – 32
B Actual Thesis Expenses 33 – 34
C User’s Manual 35 – 43
D Code of Maintenance and Application 44 – 72
E Curriculum Vitae of Researchers 73 – 77

STI College Meycauayan viii


INTRODUCTION

Information is a stimulus that has meaning in some context for its receiver. When
information is entered into and stored in a computer, it is generally referred to as
data. After processing (such as formatting and printing), output data can again be
perceived as information. It is a communication or reception of knowledge or
intelligence. Information is any entity or form that provides the answer to a question
of some kind or resolves uncertainty. It is thus related to data and knowledge, as data
represents values attributed to parameters, and knowledge signifies understanding of
real things or abstract concepts.[WIKI,2016] Many people think data as synonymous
with information; however, information consists of data that has been organized to
help answers questions and to solve problems.

A bayan, munisipyo or munisipalidad in a province is a town with a popularly


elected administration including a mayor and is part of a province (lalawigan or
probinsya) (except for the independent municipality of Pateros, Metro Manila in the
National Capital Region). Municipalities are not the smallest division of local
government and are composed of barangays. It is municipality is usually a single
urban or administrative division having corporate status and powers of self-
government or jurisdiction as granted by national and state laws to which it is
subordinate. It is to be distinguished from the county, which may encompass rural
territory or numerous small communities such as towns, villages and
hamlets.[WIKI,2015]

Law is the principles and regulations established in a community by some


authority and applicable to its people, whether in the form of legislation or of custom
and policies recognized and enforced by judicial decision.[DCTNRY,2017] The law
serves many purposes and functions in society. Four principal purposes and
functions are establishing standards, maintaining order, resolving disputes, and
protecting liberties and rights.
A local ordinance is a law usually found in a code of laws for a political division
smaller than a state or nation, i.e., a local government such as a municipality, county,
parish, prefecture, etc.[WIKI,2016] The use of Ordinance is to be more organized
their own community and to be more effective to the society of specific ordinance.

An Information System is integrated set of components for storing, gathering and


processing data for providing information. Information system is software that helps
the user organize and analyze data. This makes it possible to answer questions and
solve problems relevant to the mission of an organization. The purpose of an
information system is to turn raw data into useful information that can be used for
decision making in an organization. Any specific information system aims to support
operations, management and decision-making.

One of example of technology is Mobile Application. It basically a computer-


generated program designed and developed through smart phones and other devices.
Millions of mobile applications today are working. Examples of this are social
networks, travel, health, banking, games and more. Most people have smart phones
and with the help of mobile application people can access easier. With help of
technology and with the use of mobile application the developer decided to make a
different mobile application that includes ordinance of Meycauayan City of Bulacan.

This Meycauayan City Ordinance App has versatile tasks that included. It
contains the policy and punishments of the law. The people will aware of having an
implemented ordinance that located in Meycauayan City. It helps the community of
Meycauayan to improve knowledge on punishment of the ordinance.

STI College Meycauayan 2


Background of the problem

People in Meycauayan City Bulacan do not have enough knowledge on rules and
regulations or the ordinance that implemented by the city officials. Most of them are
not aware of having ordinance that implemented at their own city. Before, when they
need to know about the policy, they need to ask on legal counsel or to go at city
library to gain knowledge about the ordinance. Meycauayan City does not have a
proper securing their data. Most of people neglect the reading of ordinances since it is
not interesting and not entertaining. Most of the Citizen on Meycauayan is illiterate
people they can’t read and understand English ordinances. Other citizen in
Meycauayan has deficiencies, especially those citizens that blinds and deaf.

The developers decided to developed ordinance mobile application for


Meycauayan City. This mobile application gives the user efficiency and reliability to
know the legal ordinances of Meycauayan City. This mobile application will help the
user and the community to gain more knowledge about the ordinance that
implemented at City of Meycauayan. The developers gathered information in
Meycauayan City Hall about the ordinances that existed in Meycauayan City. This
mobile application will help the community to transfer the ideas in easy way and most
effective through displaying animated videos that will interpret the ordinances.

STI College Meycauayan 3


General Problem
How to develop a Mobile Application for Meycauayan City titled Meycauayan
City Ordinance Mobile Application that will educate the users about the City
ordinances of Meycauayan.

Specific Problems
 How to develop an mobile application that embedded the ordinance of
Meycauayan City.
“Citizen of Meycauayan today is using smart phones to connect to others.
They have to go to City hall or to ask to the city officials just to have
knowledge in ordinance that implemented in their city.”

 How to develop a module to secure data and information for


Meycauayan City Ordinance Mobile Application.
“Meycauayan City community is growing bigger that is why they need to
secure all the important data and information in ordinances on database.
City hall has a poor quality of securing their data. They are just using
excel to input the information of ordinances.”

 How to develop a module that has an animated illustration of


scenarios or situation of a current ordinance.
“Most of the citizens of Meycauayan do not know how to read and
discouraging reading. Displaying information is not encouraging them to
listen to words of the rules and regulations that implemented at their own
city.”

 How to develop a voice implementation that the user can easily


gathered information that they will listen and not just reading.
“Most of the residence of Meycauayan has a difficulty in reading.
Reading can be encouraging them to learn but other difficulties might
lose the possibility to learn.”

STI College Meycauayan 4


 How to develop that allows the user to download a copy of own.
“There are some cases wherein the user would want to have a copy of the
laws of the city. They need to go to city hall just to have a copy of city
ordinance that sometimes they will get the copy in 2-3 days.”
 How to develop a link that can access the official Facebook account of
Meycauayan City Bulacan.
“Most announcements for Meycauayan do not know of most of the
citizen since there are some face book account of Meycauayan has
scattered on facebook.”

 How to develop a website that modify by the admin.


“In mobile application is hard to change the data. The beneficiaries are
not aware of implementing the other data that they need to put. Without
this, it will be hard to the admin to put the new ordinances and edit or
update it.”

 How to develop a module that improves the knowledge of citizen in


Meycauayan City on the existing ordinance in their own place.
“Residence of Meycauayan City nowadays is not aware on the ordinance
that exists in their own city. People need to ask to the city officials on
what are the policy should they know and those punishments that
includes when they misguided on their paths.”

 How to develop a module that provides user-friendly and adaptable


design interface.
“Most of the mobile application has multiple different resolutions.
Downloading an application from the market does not fitting well to your
screen. With having this screen resolution it may gain a user interest and
to increase the effectiveness of the mobile application.”

STI College Meycauayan 5


Overview of the current state of the technology

Mobile Application can perform actions much quicker than websites. It designed
to run a mobile device, such as a Smartphone or tablet computer. It allows the user to
perform specific tasks.

The developers gathered information and concepts through searching other


application.

Republic Act of the Philippines Mobile Application this mobile application includes
simple republic acts of the Philippines. When you open the application, you entered
the ordinances that given. There’s bar at implements to find the specific laws. The
Republic Act of the Philippines is uncompleted objectives and unfinished concept
but help us to build our main objectives. This mobile application provides other
features that the developers can add to the interface of Meycauayan City Ordinance
Mobile Application

Merriam Webster Mobile Application this mobile application contains of data with
meanings of the specific of a thousand words. This application helps us to improve
the developers’ mobile application about the other features. The difference of the
Merriam Webster Mobile Application to the Meycauayan City Ordinance Mobile
Application is the impurity of the ordinances and not the specific words.

Legal and Law Terms Application This Application is about searching for the
meanings of Hundreds of Legal and Law terms and contains descriptions, notes and
cross – reference. This application helps us to add other features to the proponent’s
system. It is composed of ordinance that contains alphabetically arrange and the
description of the ordinance are also included.

STI College Meycauayan 6


The differences of these applications in our Meycauayan City Ordinance Mobile
application are the whole situation or the scenarios of one ordinance that will be
illustrated with this app. It helps the user to be more adoptable and effective to use.
This mobile application can help the community and also the city of Meycauayan to
have more discipline and courage around them.

STI College Meycauayan 7


Objectives of the study

General Objectives

The main objective of the study is to be able develop a Mobile Application for
Meycauayan city that contains the ordinance of Meycauayan City to give fastest, and
reliable way and to gain more knowledge about the ordinance from the people of
Meycauayan by using smart phones.

Specific Objectives
 To develop a mobile application that embedded the ordinance of
Meycauayan City.
“The developers use Android Studio to achieve the Mobile Application
that includes Ordinance of Meycauayan City.”
 To develop a module to secure data and information for Meycauayan City
Ordinance Mobile Application.
“The developers develop a mobile application about the ordinance with a
database to secure all the information and data of Meycauayan City. The
developers give the efficiency to the beneficiary to have better inputting
information.”

 To develop a module that has an animated illustration of scenarios or


situation of a current ordinance.
“The developers develop a detailed illustration with the use of particular
software to enhance the scenarios in different situation of ordinance. The
developers will research and look the information about the ordinance to
create better presentation videos for the user.”

 To develop a voice implementation of the current ordinance for the user.


“The developers develop voice implementation for the user for the
effectiveness of the reading and gathering of information”

STI College Meycauayan 8


 To develop a button that allows the user to download a copy of own
ordinance.
“The developers develop a button that contains PDF (Portable Document
Format) that can access by the user with an internet connection to
provide more information and to have a separate copy for the user.”

 To develop a link that can access the official Facebook account of


Meycauayan City Bulacan.
“The proponents develop a module that can easily access by the user of
the official Facebook account of Meycauayan City Bulacan for them able
to look the updates and announcements.”

 To be able develop a module that will modify by the admin.


“The developers develop a module add, edit, update that can admin input
and update information of Meycauayan City Ordinance. This website will
be the brain of the whole system of mobile application.”

 To develop a module that improves the knowledge of citizen in


Meycauayan City on the existing ordinance in their own place.
“The developers develop an application that has data and information of
Meycauayan City Ordinance. Having some features that the user able to
enjoy while learning.”

 To develop a module that will provide user-friendly and adaptable design


interface.
“The proposed application should be able adopt on any resolution that
performs properly while being user-friendly. Vivid Illustrations, buttons
and text are easily to acquaint and also the information are displayed in
simple language”

STI College Meycauayan 9


Scope and limitations of the study

The study aims to develop a Mobile Application that will use to manage data
regarding the information. The application allows the user to view the information
that the developers gathered about the ordinance the Meycauayan City.

The developers’ main goal is to make new available technology out on the market
and use this as a new way to educate users while they are having fun. Since most of
the users are active Smartphone users, it will not be hard for them to access the
platforms that the developers will provide.

This mobile application can use only in android users with android Mallows or higher.

FRONT END

Splash Screen
 The user able to see the logo of the application in three seconds. The
purpose of this splash screen to find out of the user that he will entering
the Meycauayan City Ordinance Mobile Application.
Home Module
 In this module contains the displayed ordinances including title
ordinance, resolution number and also the bookmark button. This module
is the landing for of the mobile application.
Navigation Bar
 It contains the logo of Meycauayan City Ordinance and the navigation
lists. In this navigation bar will choose the user on where he may going to
figure out. The developers use the navigation bar to be more organize and
easy for the user to identify the ordinances navigation list, Bookmark
navigation list, website and face book navigation lists and other
navigation lists that includes on the navigation bar.

STI College Meycauayan 10


Navigation List
 It contains the ordinances including videos, bookmarks, exit, website,
help and about.
o Ordinance Navigation List
 It contains the module list of ordinance and ordinance
number. In this module have a button of the video and the
button of voice implementation. This navigation list helps
the user to see the information about the specific
ordinance.
o Bookmarks Navigation List
 This module list allows the user to see the saved
ordinances for reminding them the ordinance that they
have read.
o Exit Navigation button List
 This exit navigation button list is used to exit the
application. If this button is clicked, the application will
exit and end all the current session.
o Facebook Navigation List
 This list allows the user to easy access the Facebook page
of Meycauayan City to help the user to enter the official
Face Book of Meycauayan City that has an announcements
and updates at Meycauayan City.
o Feedback Navigation List
 In this module allows the user to send a feedback to
Meycauayan City gmail account.
o Help Navigation List
 In this module list allows the user to view the instruction
manual on how to use the Meycauayan City Ordinance
Application

STI College Meycauayan 11


o About Navigation List
 In this module list allow the user to view the history of the
Meycauayan City Ordinance.
Voice Implementation Button
 This button allows the user to play voice to read the information about
the ordinance and for them to enjoy the user of in reading.
Bookmark Button
 In this button it will save the current page or the current module.
o Remove Bookmark Button
 This button allows the user to remove a certain ordinances
that they have already read it.
Download PDF Button
 This button helps the user to have their copy of the
ordinance of Meycauayan that includes the full
information.
Video Button
 In this button the user can play a video. A scenario or a sequence that
includes about the information of the specific ordinance that the users
want to learn.

STI College Meycauayan 12


BACK END
Ordinance Module
 This module contains the category list of ordinance and it allows the
admin to add an ordinance.
List of Ordinance Module
 This module allows the admin to see the list of ordinance that contains
resolution number, ordinance title, section, documents, URL video and
date.
o Search Bar
 This search bar allows the admin to find specific
characters of information by resolution number, or
ordinance title, section.
Add Ordinance
 This module allows the admin to add resolution number, ordinance title,
section, URL video and PDF File.
Admin Update Module
 This module allows the admin to change the logo and password.
o Change Logo Module
 It allows the admin to change the logo of the maintenance.
The admin can change it if Meycauayan has new logo.
o Change Password Module
 It allows the admin to change the old password into new
for the secured database.
Archive Module
 This module allows the admin to have a back up files of his deleted file.
o Restore Button
 It allows the admin to restore the deleted ordinance that
included in the archive.
o Delete Button
 It allows the admin to delete the ordinance that include in
archive.

STI College Meycauayan 13


Limitation
The animated video cannot access by the user without internet connection.

The user cannot edit the data of the ordinances.

The mobile application is not a game entertainment.

STI College Meycauayan 14


LITERATURE REVIEW

Review of related literature, studies or systems

Using Mobile Application to Teach about City Ordinance

Information System is a set of interrelated components that work together to collect, process,
and store and disseminate information to support decision making, coordination, control
analysis, and visualization in an organization. The purpose of an information system is to
turn raw data into useful information that can be used for decision making in an organization.
Many information systems are designed to support a particular process within an
organization or to carry out very specific analysis. Through the help of information system,
the developers decided to develop a mobile application that contains law.

Cell phones have become a necessity for many people throughout the world. The ability to
keep in touch with family, business associates, and access to email are only a few of the
reasons for the increasing importance of cell phones. Today's technically advanced cell
phones are capable of not only receiving and placing phone calls, but storing data, taking
pictures, and can even be used as walkie talkies, to name just a few of the available options.

Mobile applications often stand in contrast to desktop applications which run on desktop
computers, and with web applications which run in mobile web browsers rather than directly
on the mobile device. It’s a type of application software designed to run on a mobile device
such as smart phones or tablet computer by the help of this idea, the developers gathered idea
to conduct a system that’s contains ordinance of City of Meycauayan.
Philippine National Police Lunch “Know Your Rights” Mobile Application

The PNP Know Your Rights is a mobile application that helps policemen and civilians. It allows
the users to easy to access to human rights advisories and policies that provide information on
their fundamental rights as citizens and basic information on police operational procedures and
rules of engagement.

PNP Know Your Rights is engage in the intensified campaign of the Philippine national Police
against criminality, corruption and illegal drugs. It equips PNP personnel with the right
information, materials with which to advise citizens or persons placed under police custody of
their rights under the law.

VAWfreePH Mobile Application

This VAWfreePH is a mobile application that has information and emergency tools for reporting
incidents of violence against women (VAW) it is now a fingertip away as the Philippine
Commission on Women (PCW) and Technological Institute of the Philippines.

The features of this mobile application can be used during emergencies or crisis situations. It can
send a discreet short messaging system or SMS to three pre-selected contacts alerting them of
user’s exact location using global positioning system using GPS.

Aside from the emergency features, this mobile application can help user search for the nearest
hospitals and police women’s desk where Violence against Women victim- survivors can seek
help and ask for assistance.

Philippine Laws & Jurisprudence Mobile Application

This Philippine Laws & Jurisprudence is a mobile application that has information about the
Jurisprudence (1996-2017), Laws including Republic Acts, Commonwealth, and Acts. There is
also Executive Issuances that contains administrative order, executive order and other executive
issuances.

STI College Meycauayan 16


Synthesis

Almost of residence in Meycauayan City, Bulacan today are not aware on the law and ordinance
that exists in the own city. They have to ask to the officials what are the policy should they know
and those punishments that includes when they misguided on their paths that they will take.

The developers decided to develop a mobile application for the Meycauayan City and for the
meycauayaños about ordinance. Through this application they can read and the ordinance that
implemented at City of Meycauayan. In this technology, it is better on the user to read and to
understand the ordinance that prevailing in Meycauayan City. In just a simple touch you can
bring efficiency and accuracy of learning’s in your hands and to clarify and to build yourself the
discipline and the courage around you.

Many people did not know about the policy around them with our Mobile Application this will
help the City and the community to be guide and to discipline them.
The developers conducted data and information needed to be able develop the system. The
developers research about the ordinances to give them knowledge on what kind of mobile
application they will develop and to build the courage and discipline around them.

STI College Meycauayan 17


MEYCAUAYAN CITY ORDINANCE MOBILE APPLICATION

Overview of the project

The system is information mobile application that will educate the community users about the
ordinance in their own city including Meycauayan. The application is developed in Information
system wherein the user capable to know the information and data including policy and
punishments about the different ordinances. There are different system and hardware
requirements that required running the application smoothly. The purpose of an information
system is to turn raw data into useful information that can be used for decision making in an
organization. Many information systems are designed to support a particular process within an
organization or to carry out very specific analysis. Through the help of information system the
developers decided to develop a mobile application that contains law.

System design specification

A context diagram defines the boundary between the system, or part of a system, and its
environment showing the entities that interact with it. This section will show the data flow of the
system by using different tools. The developers will able to provide an overview on how the
whole system will function. It’s able to show how the procedures and ideas of functionalities that
an information mobile application does have.

User Interface and Application

The conducted research of the developers is how the users will be interest to the mobile
application that contains ordinance of their own city. The developers determined that the user
want more pictures to see the details especially the punishments. Based on the result, most
people are not aware about the rules and regulations that exist in their own city.
Resources
This section will allow showing the requirements needed in developing and running the
application.
Hardware

Lowest Configuration Recommended


Configuration
Android OS Android Mallows Android 7.0 Nougat
RAM 2GB RAM 3GB RAM
Processor 1Ghz Single Core 1.3Ghz Dual Core or
better

Software
The software requirements that were used for developing the application include the following.
 Microsoft Windows 10

The developers used Microsoft 10 OS for the development of the proposed system.

 Android Studio

It is a powerful and a user- friendly development environment that the developers need
for the full functionality and effectiveness of implementing and developing the
Meycauayan City Ordinance Mobile Application.

 Adobe Photoshop
The developers used Adobe Photoshop for creating images for the scenarios to develop
Meycauayan City Ordinance Mobile Application.
 Notepad ++
The developers used notepad ++ for implementing codes of the maintenance of the
Meycauayan City Ordinance Mobile Application.
 PHP My Admin
The developers used php my admin for the database to secure the information and data of
the ordinances of the mobile application.

STI College Meycauayan 19


 Powtoon

The developers used powtoon to create animated characters for the animated videos of
the Meycauayan City Ordinance Mobile Application.

 Google API
The developers used Google api for the read online function and also the voice
implementation for the user wants to read online.
 Sql Lite
The developers used sql Lite as the database of the system that will restore the data that
the admin need to put.

STI College Meycauayan 20


USER

Knowledge about the ordinance Learn and Interact


Animated Videos View the Information
Voice implementation Improve Discipline

1.0

Meycauayan City
Ordinance Mobile
Application

Provide Information
Feedback Update of the information and data
Manage Database

ADMIN

Figure 1.0 Context Diagram

The Context Diagram summarizes all processing activity within the system in single process
symbol. The application context diagram consists of admin that provides all the necessary
information to the user who will navigate through the application and will gather knowledge and
gain more useful information. The admin then receives feedback which he can use to improve
the application’s features and information.

STI College Meycauayan 21


Admin

Log in
Database
Feed back

Main Page
Help Application Add Ordinance

About Splash Screen


Ordinance Admin
Change
Update
Passwords
Navigation Bar Main Form
List of Ordinance

Change Main
Facebook
Exit Archive Page Logo

Website Search Ordinance

Bookmarks List of Ordinance List of Ordinance

Bookmark BTN
Internet Connection Text to Speech Information
of ordinance

Video Animation Download PDF Read PDF

Figure 2.0 Flow Chart


Figure 3.0 Agile Software Development Cycle

Agile is known of set of Values and Principles. It is collection of beliefs that the teams
can make their own decision on how to developing software. This practice help the developers to
build a foundation for teams that can use to make decision that result a better developing a
mobile application.

These are the Values and Principles from [AGLMNFSTO, 2015]


VALUES
 INDIVIDUALS AND INTERACTIONS over processes and tools
 WORKING SOFTWARE over comprehensive documentation
 CUSTOMER COLLABORATION over contract negotiation
 RESPONDING TO CHANGE over following a plan
PRINCIPLES
 Continuous delivery of valuable software.
 Welcome changing requirements, even late in development. Agile processes harness
change for the customer's competitive advantage.
 Deliver working software frequently, from a couple of weeks to a couple of months, with
a preference to the shorter timescale.
 Business people and developers must work together daily throughout the project. Build
projects around motivated individuals.
 Give them the environment and support they need, and trust them to get the job done.
The most efficient and effective method of conveying information to and within a
development team is face-to-face conversation.
 Working software is the primary measure of progress. Agile processes promote
sustainable development. The sponsors, developers, and users should be able to maintain
a constant pace indefinitely.
 Continuous attention to technical excellence and good design enhances agility.
Simplicity--the art of maximizing the amount of work not done--is essential.
 The best architectures, requirements, and designs emerge from self-organizing teams.
 At regular intervals, the team reflects on how to become more effective, then tunes and
adjusts its behavior accordingly.

PLAN
 In this phase the developers gathered all information and requirements to use in
application. The developers build concepts and ideas that the beneficiary’s
required to be more effective the transferring the information to them. Individuals
and interactions. Every researcher allows contributing and brainstorming a unique
value to Meycauayan City Ordinance Mobile application to have result that can be
more powerful to apply in developing the mobile application. The developers
follow the beneficiary’s wants in developing the Meycauayan City Ordinance
Mobile Application.
DESIGN
 Designing is a phase where to make the system more approachable and
presentable to the user. We ask beneficiary’s if what they want to add or their
ideas in having a mobile application. After the gathering of ideas and information
the developers chose proper tools for the system and the feature to be added to
make it unique and adoptable to the society and even more convenient to use. The
developers develop a creative and effective scenarios for the animated video for
them to absorb the information that they need to know.

STI College Meycauayan 24


DEVELOP
 This phase is the implementation and execution of plans. The proponent focuses
on the interface and functionality of the system of mobile application. The
transferring the data through admin website that connects to the mobile
application. Other features that the application needs like voice implementation,
the categories, animation videos that has to implement on the mobile application.
TEST
 Testing stage is where the developers to start to test every unit for its
functionality. These are searching bar, the admin page or the website, the
implementing of data that connects through the user’s mobile application and also
the voice implementation and animated videos. After testing, the developers went
to beneficiary’s asking if they want exclusive changes for the Meycauayan City
Ordinance Mobile Application.

EVALUATE
 When the testing is done and the application is finalized. The developers fix the
bugs that emission in testing. When the system is now running with complete
functions it is ready to use. The deployment stage is the phase where the system is
now available for use.
RELEASE
 This phase is when the mobile application is done and ready to use of the people
in Meycauayan City and will release on the market.

STI College Meycauayan 25


RESULTS AND DISCUSSIONS

Researching

Research is broad used method for gathering information through internet, books, and articles of
the subject reports of past and until present. Most of the researchers use set of questions that are
needed to find answer using specific browser that is needed for research. Researching through
internet is very useful and helpful in conducting data, activities, options and other opinions.

Data Gathering

Data gathering and information is essential in creating a system or any types of such
thing. In order to build an efficient system, the proponent must meet all the required information
and idea. Proponent gathers most related data that can be useful in the study.

Results and Analysis


The results of all the conducted experiments were gathered and combined together to
form the hypothesis and the ideas and functions of the system. All the information and ideas that
the developers collected are solely the foundation of the system that the developers developed.
The developers found a way to provide a much convenient and easier way to distribute
knowledge and information to the users. The developers also test and analyzed the functions so if
there is something else that needs to be change, the researchers can still think of a new and better
way that the functions can perform.

STI College Meycauayan 26


CONCLUSIONS AND RECOMMENDATIONS

This study has shown the way that the Mobile Application can be a necessity in the future
users, developers or even researchers through the use of computer- generated images. The
application that is developed is provided and may be uses as tools for the study of the users
mainly in City Ordinance.
The developers had hard time on build the concepts of this project since it was their first
time to develop a new kind of software. But unlike websites mobile phones is good to develop by
a future researchers or programmers. Mobile Application is one of the more often to use.
The developers did a brainstorming to form and gather different ideas that serves as our
foundation in developing this application, brainstorming should be considered essential in
developing this kind of project since one idea alone can’t form the whole system’s function and
features. Working as a team is easy than working alone, having someone to help you out can
lessen the workloads and it can also fasten your works and you can still have spare time to polish
all your systems features and functions.
This kind of work will emerge in no time and will be well-known to everyone. As the
technology is advancing faster than anyone expected, society will become more and more
dependent on technology. Further studies should still be considered to explore and maximize the
capabilities of a new technology.
REFERENCES

A Guide to Modern Mobile Application Development Strategies. (2013, December) from


https://whatis.techtarget.com/definition/mobile-app
Rajput, M. (2015, November 27). Tracing the History and Evolution of Mobile Apps from
https://tech.co/mobile-app-history-evolution-2015-11

Information System (2011,October) from https://www.britannica.com/topic/information-system

Harris, B. (2013-2018) Purposes and Functions of the Law from


http://www.businesslawbasics.com/chapter-3-purposes-and-functions-law-1
Zandbergen, P. Information Systems-Definition & Types from
https://study.com/academy/lesson/what-are-information-systems-definition-types-quiz.html
Kingston, K. (2018) the Importance of Cell Phones In Modern Society. From
http://www.streetdirectory.com/travel_guide/153893/cell_phones/the_importance_of_cell_phon
es_in_modern_society.html
Local Ordinance (2010, December) from https://en.wikipedia.org/wiki/Local_ordinance
VAWfreePH (2017, November) from http://pcw.gov.ph/article/pcw-tip-qc-launches-mobile-app-
violence-against-women
PNP Know Your Rights (2017, December) from http://www.pnphrao.org/index.php/latest-
news/152-pnp-know-your-rights-mobile-app
Research and Development of Mobile Application for Android Platform (2018, August) from
https://www.researchgate.net/publication/273903911_Research_and_Development_of_Mobile_
Application_for_Android_Platform

Agile Manifesto (2015) from http://agilemanifesto.org


Appendix A. Gantt Chart

STI College Meycauayan 29


Calendar of Activities

 Last Week of June & First Week of July


o Planning and Searching for 10 Proposals.
 Second Week of July
o Planning and Searching for 10 Proposals.
o Research to Universities for the revision of 10 Proposals.
o Revision of documentation of 10 proposals.
 Third Week of July
o The revision documentation was approved.
o Planning of the system that was given.
 Fourth Week of July
o Planning for the documentation for the title defense.
o Research at city hall to gather information.
o Documentation for the title defense.
o Designing of system and the flow.
o Coding for the system and the functions.
 First Week of August
o Planning for the documentation for the title defense.
o Research at city hall to gather information.
o Documentation for the title defense.
o Designing of system and the flow.
o Coding for the system and the functions.
 Second Week of August
o Documentation for the title defense.
o Coding for the system and the functions.
o Start of Title Defense
 Third Week of August
o Revision of documentation for the title defense.
o Coding for the system and the function.

STI College Meycauayan 30


 Fourth Week of August
o Research to City Hall to gather the ordinances information.
o Final documentation
o Designing of the maintenance for application
o Coding for the maintenance for the application
 First Week of September
o Research to City Hall to gather the ordinances information.
o Final documentation revise
o Designing of the maintenance and application for application
o Coding for the maintenance and application for the application
 Second Week of September
o Revision of Final Documentation
o Designing of the application for application
o Coding for the maintenance and application for the mobile application
 Third Week of September
o Research to City Hall to gather the ordinances information.
o Revision of Final Documentation
o Designing of the maintenance and application for application
o Coding for the maintenance and application for the mobile application
 Fourth Week of September
o Revision of Final Documentation
o Designing of the application for application
o Coding for the maintenance and application for the mobile application
 First Week of October
o Documentation for final Documents.
o Designing of the application for application
o Coding for the maintenance and application for the mobile application
o Final Defense.

STI College Meycauayan 31


Gantt chart of Activities

MONTH JUNE JULY AUGUST SEPTEMBER OCTOBER NOVEMBER DECEMBER JANUARY FEBRUARY MARCH
ACTIVITY
10 Proposals
Planning
Research to university
Research to City Hall
Documentation
Designing
Coding
Defense

COMPLETE ON GOING
Appendix B. Actual Thesis Expenses
THESIS EXPENSES

Quantity Specifics Approximate Cost Actual Cost

529 Pages of Paper Printing Php 3.00 Php 1587.00

10 Yellow Folder Php. 13.00 Php. 130.00

3 Entrance in TIP Research Php. 50.00 Php.150.00

For a total of Php. 1867.00

STI College Meycauayan 34


Prepared by:

Paul Albert C. Velasco Rhev II A. Merlin

Ronnie L. Suan Rossel Anne P. Martillano

Noted by:
Catherine A. Certeza Daisy A. Merlin

Jose Socrates R. Suan Marissa P. Martillano

Approved by:

Mr. Jake Garfield V. Agupitan Ms. Janice A. Capule

STI College Meycauayan 35


Appendix C.USER’s MANUAL

STI College Meycauayan 36


Appendix C. User’s Manual
Admin Maintenance

Dashboard Module

Add Ordinance Module

STI College Meycauayan 37


List of Ordinance Module

Logo Update Module

STI College Meycauayan 38


Change Password Module

Archive Module

STI College Meycauayan 39


Mobile Application

Splash Screen

List Ordinance
STI College Meycauayan 40
Ordinance Module

Bookmark Module

STI College Meycauayan 41


Navigation Lists

About Module

STI College Meycauayan 42


Feedback Module

STI College Meycauayan 43


Appendix D. Codes of Maintenance & Application

STI College Meycauayan 44


APPLICATION open(); }
ContentValues values = new
ContentValues(); public List<Ordinance>
package com.bulacan.meycauayan; getAllBookmarkedOrdinances() {
values.put(DatabaseHandler.COLU List<Ordinance>
import MN_ORDINANCEID, ordinancesBookmarked = new
android.content.ContentValues; bookmark.getOrdinanceid()); ArrayList<>();
import android.content.Context; List<Bookmark> bookmarks =
import android.database.Cursor; database.insert(DatabaseHandler.T getAllBookmarks();
import ABLE_BOOKMARK,null,values); for (Bookmark bookmark:
android.database.sqlite.SQLiteData close(); bookmarks) {
base; return bookmark;
import } ordinancesBookmarked.add(ordina
android.database.sqlite.SQLiteOpen nceOperation.getOrdinance(bookm
Helper; public Bookmark ark.getBookmarkid()));
getBookmark(long id) { }
import java.util.ArrayList; open(); return
import java.util.List; Cursor cursor = ordinancesBookmarked;
database.query(DatabaseHandler.T }
public class BookmarkOperation { ABLE_ORDINANCE,allColumns,
DatabaseHandler.COLUMN_ID + public int getBookmarkCount(){
private SQLiteOpenHelper "=?",new open();
dbhandler; String[]{String.valueOf(id)},null,nu String countQuery =
private SQLiteDatabase ll, null, null); "SELECT * FROM " +
database; if (cursor != null) DatabaseHandler.TABLE_BOOKM
private Context context; cursor.moveToFirst(); ARK;
Cursor cursor =
private OrdinanceOperation Bookmark mt = new database.rawQuery(countQuery,
ordinanceOperation; Bookmark(); null);
int count = cursor.getCount();
private static final String[] mt.setBookmarkid(cursor.getInt(0)); cursor.close();
allColumns = { close();
mt.setOrdinanceid(cursor.getInt(1)); return count;
DatabaseHandler.COLUMN_BOO cursor.close(); }
KMARK_ID, close();
return mt; public void
DatabaseHandler.COLUMN_ORDI } removeBookmark(Bookmark
NANCEID bookmark) {
}; public List<Bookmark> open();
getAllBookmarks() {
public open(); database.delete(DatabaseHandler.T
BookmarkOperation(Context Cursor cursor = ABLE_BOOKMARK,
context){ database.query(DatabaseHandler.T DatabaseHandler.COLUMN_ID +
dbhandler = new ABLE_BOOKMARK,allColumns,n "=" + bookmark.getBookmarkid(),
DatabaseHandler(context); ull,null,null, null, null); null);
ordinanceOperation = new List<Bookmark> bookmarks = close();
OrdinanceOperation(context); new ArrayList<>(); }
this.context = context; if(cursor.getCount() > 0){
} public boolean exists(Bookmark
while(cursor.moveToNext()){ bookmark) {
public void open(){ Bookmark mt = new open();
database = Bookmark(); String countQuery =
dbhandler.getWritableDatabase(); "SELECT * FROM " +
} mt.setBookmarkid(cursor.getInt(0)); DatabaseHandler.TABLE_BOOKM
ARK + " WHERE " +
public void close(){ mt.setOrdinanceid(cursor.getInt(1)); DatabaseHandler.COLUMN_ORDI
dbhandler.close(); bookmarks.add(mt); NANCEID + "=" +
} } bookmark.getOrdinanceid();
} Cursor cursor =
public Bookmark cursor.close(); database.rawQuery(countQuery,
addBookmark(Bookmark close(); null);
bookmark){ return bookmarks; int count = cursor.getCount();
cursor.close(); public boolean isSuccess() { AppCompatActivity
close(); return success; implements
return count > 0; } NavigationView.OnNavigationIte
} mSelectedListener {
public void setSuccess(boolean
} success) { private BookmarkOperation
this.success = success; bookmarkOperation;
public class SplashScreen extends }
Activity { @Override
public String getMessage() { protected void
public static int splash_interval return message; onCreate(Bundle
= 3000; } savedInstanceState) {
@Override
protected void onCreate(Bundle public void setMessage(String super.onCreate(savedInstanceStat
savedInstanceState) { message) { e);
this.message = message;
super.onCreate(savedInstanceState) } setContentView(R.layout.activity_
; } main);
Toolbar toolbar =
setContentView(R.layout.activity_s findViewById(R.id.toolba
plash_screen); package
com.bulacan.meycauayan;
new
Handler().postDelayed(new import android.app.AlertDialog; r);
Runnable() { import
@Override android.content.DialogInterface; setSupportActionBar(toolbar);
public void run() { import android.content.Intent;
Intent login_intent = new import android.net.Uri; bookmarkOperation = new
Intent(getApplicationContext(), import android.os.Bundle; BookmarkOperation(this);
MainActivity.class); import
android.support.annotation.NonN DrawerLayout drawer =
startActivity(login_intent); ull; findViewById(R.id.drawer_layout
finish(); import );
} android.support.v4.app.Fragment ActionBarDrawerToggle
}, splash_interval); Manager; toggle = new
} import ActionBarDrawerToggle(
} android.support.design.widget.Na this, drawer, toolbar,
vigationView; R.string.navigation_drawer_open,
import R.string.navigation_drawer_close)
android.support.v4.view.Gravity ;
package com.bulacan.meycauayan; Compat;
import drawer.addDrawerListener(toggl
import android.support.v4.widget.Drawe e);
com.google.gson.annotations.Seriali rLayout; toggle.syncState();
zedName; import
android.support.v7.app.ActionBa NavigationView
public class WebResponse { rDrawerToggle; navigationView =
@SerializedName("success") import findViewById(R.id.nav_view);
private boolean success; android.support.v7.app.AppCom
patActivity; navigationView.setNavigationIte
@SerializedName("message") import mSelectedListener(this);
private String message; android.support.v7.widget.Toolba
r; setTitle("Meycauayan
public WebResponse() { import android.view.Menu; City");
} import android.view.MenuItem; OrdinanceFragment
import android.widget.Toast; ordinanceFragment = new
public WebResponse(boolean OrdinanceFragment();
success, String message) { FragmentManager manager
this.success = success; import =
this.message = message; com.bulacan.meycauayan.R; getSupportFragmentManager();
}
public class MainActivity extends manager.beginTransaction().repla

STI College Meycauayan 46


ce(R.id.fragment, }); Intent browserIntent =
ordinanceFragment).commit(); new
alertDialog.setButton(AlertDialog Intent(Intent.ACTION_VIEW,
} .BUTTON_NEGATIVE, "NO", Uri.parse("https://www.facebook.
new com/CITYINFORMATIONAND
DialogInterface.OnClickListener( COMMUNITYRELATIONSOFF
@Override ){ ICE/"));
public void onBackPressed() { public void
DrawerLayout drawer = onClick(DialogInterface dialog, startActivity(browserIntent);
findViewById(R.id.drawer_layout int which) {
); dialog.dismiss(); }else if(id ==
if } R.id.nav_feedback) {
(drawer.isDrawerOpen(GravityC }); FeedbackFragment
ompat.START)) { alertDialog.show(); feedbackFragment = new
} FeedbackFragment();
drawer.closeDrawer(GravityCom
pat.START); return manager.beginTransaction().repla
} else { super.onOptionsItemSelected(ite ce(R.id.fragment,
super.onBackPressed(); m); feedbackFragment).commit();
} } }else if(id == R.id.nav_help){
} HelpFragment
helpFragment = new
@Override @SuppressWarnings("Statement HelpFragment();
public boolean WithEmptyBody")
onCreateOptionsMenu(Menu @Override manager.beginTransaction().repla
menu) { public boolean ce(R.id.fragment,
// Inflate the menu; this adds onNavigationItemSelected(@Non helpFragment).commit();
items to the action bar if it is Null MenuItem item) { }else if(id ==
present. int id = item.getItemId(); R.id.nav_about){
FragmentManager manager AboutFragment
getMenuInflater().inflate(R.menu. = aboutFragment = new
main, menu); getSupportFragmentManager(); AboutFragment();
return true;
} if (id == R.id.nav_ordinances) manager.beginTransaction().repla
{ ce(R.id.fragment,
@Override OrdinanceFragment aboutFragment).commit();
public boolean ordinanceFragment = new } else if (id ==
onOptionsItemSelected(MenuIte OrdinanceFragment(); R.id.nav_logout) {
m item) { AlertDialog alertDialog =
int id = item.getItemId(); manager.beginTransaction().repla new
ce(R.id.fragment, AlertDialog.Builder(MainActivity
if (id == R.id.action_exit) { ordinanceFragment).commit(); .this).create();
AlertDialog alertDialog = }else if(id ==
new R.id.nav_bookmarks){ alertDialog.setTitle("Exit?");
AlertDialog.Builder(MainActivity
.this).create(); if(bookmarkOperation.getBookm alertDialog.setMessage("Do you
arkCount() > 0){ want to exit?");
alertDialog.setTitle("Exit"); BookmarkFragment
bookmarkFragment = new alertDialog.setButton(AlertDialog
alertDialog.setMessage("Do you BookmarkFragment(); .BUTTON_POSITIVE, "Yes",
want to exit?"); new
manager.beginTransaction().repla DialogInterface.OnClickListener(
alertDialog.setButton(AlertDialog ce(R.id.fragment, ){
.BUTTON_POSITIVE, "Yes", bookmarkFragment).commit(); public void
new }else{ onClick(DialogInterface dialog,
DialogInterface.OnClickListener( Toast.makeText(this, int which) {
){ "You do not have any
public void bookmarks!", MainActivity.super.onBackPresse
onClick(DialogInterface dialog, Toast.LENGTH_LONG).show(); d();
int which) { } }
finish(); }else if(id == });
} R.id.nav_share){

STI College Meycauayan 47


alertDialog.setButton(AlertDialog private ProjectCustomAdapter
.BUTTON_NEGATIVE, "NO", public void setPdf_path(String mAdapter;
new pdf_path) { private
DialogInterface.OnClickListener( this.pdf_path = pdf_path; RecyclerView.LayoutManager
){ } mLayoutManager;
public void
onClick(DialogInterface dialog, public String getVideo() { SwipeRefreshLayout
int which) { return video; mSwipeRefreshLayout;
dialog.dismiss(); } OrdinanceOperation
} ordinanceOperation;
}); public void setVideo(String TextView txtsearchordinance;
alertDialog.show(); video) {
} this.video = video; @Override
DrawerLayout drawer = } public void
findViewById(R.id.drawer_layout onViewCreated(View view,
); public int getId() { @Nullable Bundle
return id; savedInstanceState) {
drawer.closeDrawer(GravityCom }
pat.START); mDataset = new
return true; public void setId(int id) { ArrayList<>();
} this.id = id; mRecyclerView =
} } view.findViewById(R.id.my_recycl
er_view);
public String
getResolution_number() { mRecyclerView.setHasFixedSize(t
package com.bulacan.meycauayan; return resolution_number; rue);
} ordinanceOperation = new
import OrdinanceOperation(getContext());
com.google.gson.annotations.Seriali public void
zedName; setResolution_number(String mLayoutManager = new
resolution_number) { LinearLayoutManager(getContext(),
import java.io.Serializable; this.resolution_number = LinearLayoutManager.VERTICAL,
resolution_number; false);
public class Ordinance implements }
Serializable{ mRecyclerView.setLayoutManager
@SerializedName("id") public String (mLayoutManager);
private int id; getOrdinance_title() {
return ordinance_title; mSwipeRefreshLayout =
} view.findViewById(R.id.swipeRefr
@SerializedName("resolution_nu eshLayout_blogposts);
mber") public void
private String setOrdinance_title(String mSwipeRefreshLayout.setOnRefre
resolution_number; ordinance_title) { shListener(new
this.ordinance_title = SwipeRefreshLayout.OnRefreshList
ordinance_title; ener() {
@SerializedName("ordinance_title } @Override
") public String getSection() { public void onRefresh() {
private String ordinance_title; return section; refreshItems();
} }
@SerializedName("section") });
private String section; public void setSection(String
section) { refreshItems();
this.section = section;
@SerializedName("video_path") } txtsearchordinance =
private String video; } view.findViewById(R.id.txtsearcho
public class OrdinanceFragment rdinance);
@SerializedName("pdf_path") extends Fragment {
private String pdf_path; txtsearchordinance.addTextChang
List<Ordinance> mDataset; edListener(new TextWatcher() {
public String getPdf_path() { @Override
return pdf_path; private RecyclerView public void
} mRecyclerView; beforeTextChanged(CharSequence

STI College Meycauayan 48


charSequence, int i, int i1, int i2) { ordinanceOperation.insertAllOrdi TextView resolutionnumber;
nancesFromList(response.body());
} } Button btnbookmark;
progressDialog.dismiss(); Button btnview;
@Override }
public void ViewHolder(View v) {
onTextChanged(CharSequence @Override super(v);
charSequence, int i, int i1, int i2) { public void ordinancetitle =
onFailure(Call<List<Ordinance>> v.findViewById(R.id.ordinancetitle
mAdapter.setData(ordinanceOper call, Throwable t) { );
ation.retrieveOrdinances(charSeque progressDialog.dismiss(); resolutionnumber =
nce.toString())); } v.findViewById(R.id.resolutionnu
}); mber);
mAdapter.notifyDataSetChanged() btnbookmark =
; mDataset = v.findViewById(R.id.btnbookmark)
} ordinanceOperation.getAllOrdina ;
nce(); btnview =
@Override mAdapter = new v.findViewById(R.id.btnview);
public void ProjectCustomAdapter(mDataset,
afterTextChanged(Editable editable) getContext()); }
{ }

} mRecyclerView.setAdapter(mAda
}); pter); public void add(int position,
Ordinance item) {
progressDialog.dismiss(); mDataset.add(position, item);
super.onViewCreated(view, notifyItemInserted(position);
savedInstanceState); onItemsLoadComplete(); }
} } public void remove(Ordinance
item) {
void onItemsLoadComplete() { int position =
void refreshItems() { mDataset.indexOf(item);
final ProgressDialog mSwipeRefreshLayout.setRefreshi mDataset.remove(position);
progressDialog = new ng(false); notifyItemRemoved(position);
ProgressDialog(getContext()); } }

progressDialog.setTitle("Loading... @Override
"); public View
onCreateView(LayoutInflater ProjectCustomAdapter(List<Ordina
progressDialog.setMessage("Please inflater, ViewGroup container, nce> myDataset, Context context) {
wait..."); Bundle mDataset = myDataset;
progressDialog.show(); savedInstanceState) { bookmarkOperation = new
return BookmarkOperation(context);
ApiInterface service = inflater.inflate(R.layout.fragment_b
ApiClient.getClient().create(ApiInte log_posts, container, false);
rface.class); } this.context = context;
Call<List<Ordinance>> call = } }
service.getAllOrdinance(); public class ProjectCustomAdapter @NonNull
call.enqueue(new extends @Override
Callback<List<Ordinance>>() { RecyclerView.Adapter<ProjectCust public
@Override omAdapter.ViewHolder> { ProjectCustomAdapter.ViewHolder
public void private Context context; onCreateViewHolder(@NonNull
onResponse(Call<List<Ordinance> ViewGroup parent,
> call, Response<List<Ordinance>> private List<Ordinance>
response) { mDataset; int viewType) {
BookmarkOperation View v =
if bookmarkOperation; LayoutInflater.from(parent.getConte
(response.isSuccessful()) { xt()).inflate(R.layout.recycler_card
_project, parent, false);
ordinanceOperation.deleteAllOrdi class ViewHolder extends return new ViewHolder(v);
nances(); RecyclerView.ViewHolder { }
TextView ordinancetitle; @Override

STI College Meycauayan 49


public void com.bulacan.meycauayan.R;
onBindViewHolder(@NonNull @Override
ViewHolder holder, final int public int getItemCount() { public class VideoPlayerActivity
position) { return mDataset.size(); extends AppCompatActivity {

final Ordinance ordinance = @Override


mDataset.get(position); protected void onCreate(Bundle
package com.bulacan.meycauayan; savedInstanceState) {
holder.ordinancetitle.setText(ordin
ance.getOrdinance_title()); import super.onCreate(savedInstanceState)
com.google.gson.annotations.Seriali ;
holder.resolutionnumber.setText(" zedName;
ORDINANCE NUMBER: " + setContentView(R.layout.activity_vi
ordinance.getResolution_number()); public class Video { deo_player);

@SerializedName("id") Ordinance news


holder.btnview.setOnClickListener( private int id; =(Ordinance)getIntent().getSerializa
view -> { bleExtra("CurrentOrdinance");
Intent view_intent = new @SerializedName("url")
Intent(context, private String url; WebView mWebView =
ViewOrdinanceActivity.class); (WebView)
public int getId() { findViewById(R.id.videoWebView)
view_intent.putExtra("CurrentOrd return id; ;
inance", ordinance); }
WebSettings webSettings =
context.startActivity(view_intent); public void setId(int id) { mWebView.getSettings();
}); this.id = id;
} webSettings.setJavaScriptEnabled(t
rue);
public String getUrl() {
return url; String videoUrl =
holder.btnbookmark.setOnClickLi } news.getVideo().replace("watch?v
stener((view) ->{ =", "embed/");
Bookmark bookmark =new public void setUrl(String url) { String frameVideo =
Bookmark(); this.url = url; String.format("<html><body><br
} > <iframe width=\"100%%\"
bookmark.setOrdinanceid(ordinance } height=\"100%%\" src=\"%s\"
.getId()); frameborder=\"0\"
} allowfullscreen></iframe></body
></html>", videoUrl);
if(bookmarkOperation.exists(book
package com.bulacan.meycauayan;
mark)) { Log.d("YOUTUBE",
Toast.makeText(context, frameVideo);
import android.net.Uri;
"Ordinance is already
import
bookmarked!", mWebView.loadData(frameVideo,
android.support.v7.app.AppCompat
Toast.LENGTH_LONG).show(); "text/html", "utf-8");
Activity;
}else {
import android.os.Bundle;
import android.util.Log;
bookmarkOperation.addBookmar mWebView.setWebViewClient(ne
import android.view.View;
k(bookmark); w WebViewClient());
import
Toast.makeText(context, }
android.webkit.WebChromeClient;
"Bookmark successfully added!", }
import
Toast.LENGTH_LONG).show(); package com.bulacan.meycauayan;
android.webkit.WebSettings;
}
import android.webkit.WebView;
}); import android.content.Context;
import
} import android.content.Intent;
android.webkit.WebViewClient;
import android.graphics.Color;
import
public void import android.media.MediaPlayer;
android.widget.MediaController;
setData(List<Ordinance> import android.net.Uri;
import android.widget.VideoView;
ordinances) { import
this.mDataset = ordinances; android.support.annotation.NonNull
} ;
import

STI College Meycauayan 50


import @Override String.valueOf(Html.fromHtml(html
android.support.v7.widget.Recycler public ,
View; VideosCustomAdapter.ViewHolder Html.FROM_HTML_MODE_LEG
import android.text.Html; onCreateViewHolder(@NonNull ACY));
import ViewGroup parent, } else {
android.view.LayoutInflater; return
import android.view.View; int viewType) { String.valueOf(Html.fromHtml(html
import android.view.ViewGroup; View v = ));
import android.widget.Button; LayoutInflater.from(parent.getConte }
import xt()).inflate(R.layout.recycler_card }
android.widget.MediaController; _videos, parent, false); }
import android.widget.TextView; return new ViewHolder(v);
import android.widget.Toast; } package com.bulacan.meycauayan;
import android.widget.VideoView; @Override
public void import android.app.ProgressDialog;
onBindViewHolder(@NonNull import android.media.MediaPlayer;
import ViewHolder holder, final int import android.os.Bundle;
com.bulacan.meycauayan.R; position) { import
android.support.annotation.Nullable
import java.util.List; MediaController ;
mediaController = new import
public class VideosCustomAdapter MediaController(context); android.support.v4.app.Fragment;
extends import
RecyclerView.Adapter<VideosCust mediaController.setAnchorView(ho android.support.v4.widget.SwipeRe
omAdapter.ViewHolder> { lder.videoView); freshLayout;
private Context context; final Video video = import
mDataset.get(position); android.support.v7.widget.LinearLa
private List<Video> mDataset; Uri youtManager;
uri=Uri.parse(video.getUrl()); import
android.support.v7.widget.Recycler
class ViewHolder extends holder.videoView.setMediaControll View;
RecyclerView.ViewHolder { er(mediaController); import
VideoView videoView; android.view.LayoutInflater;
holder.videoView.setVideoURI(uri) import android.view.View;
; import android.view.ViewGroup;
ViewHolder(View v) {
super(v);
videoView = holder.videoView.setOnClickListen import
v.findViewById(R.id.myvideoview); er(new View.OnClickListener() { com.bulacan.meycauayan.R;
@Override
} public void onClick(View import java.util.ArrayList;
} view) { import java.util.List;
public void add(int position, holder.videoView.start();
Video item) { } import retrofit2.Call;
mDataset.add(position, item); }); import retrofit2.Callback;
notifyItemInserted(position); import retrofit2.Response;
}
public void remove(Video item) } public class VideosFragment
{ extends Fragment {
int position = @Override
mDataset.indexOf(item); public int getItemCount() { List<Video> mDataset;
mDataset.remove(position); return mDataset.size(); private RecyclerView
notifyItemRemoved(position); } mRecyclerView;
} private RecyclerView.Adapter
private String stripHtml(String mAdapter;
html) { private
VideosCustomAdapter(List<Video> if RecyclerView.LayoutManager
myDataset, Context context) { (android.os.Build.VERSION.SDK_ mLayoutManager;
mDataset = myDataset; INT >=
this.context = context; android.os.Build.VERSION_CODE SwipeRefreshLayout
} S.N) { mSwipeRefreshLayout;
@NonNull return OrdinanceOperation

STI College Meycauayan 51


ordinanceOperation; // ApiInterface service = VideosCustomAdapter(mDataset,
ApiClient.getClient().create(ApiInte getContext());
@Override rface.class);
public void // Call<List<Ordinance>> call mRecyclerView.setAdapter(mAda
onViewCreated(View view, = service.getAllOrdinance(); pter);
@Nullable Bundle // call.enqueue(new
savedInstanceState) { Callback<List<Ordinance>>() { progressDialog.dismiss();
// @Override
mDataset = new // public void onItemsLoadComplete();
ArrayList<>(); onResponse(Call<List<Ordinance> }
mRecyclerView = > call,
view.findViewById(R.id.my_recycl Response<List<Ordinance>> void onItemsLoadComplete() {
er_view_video); response) {
// mSwipeRefreshLayout.setRefreshi
mRecyclerView.setHasFixedSize(t // if ng(false);
rue); (response.isSuccessful()) { }
ordinanceOperation = new //
OrdinanceOperation(getContext()); // } @Override
// public View
mLayoutManager = new progressDialog.dismiss(); onCreateView(LayoutInflater
LinearLayoutManager(getContext(), // } inflater, ViewGroup container,
LinearLayoutManager.VERTICAL, // Bundle
false); // @Override savedInstanceState) {
// public void return
mRecyclerView.setLayoutManager onFailure(Call<List<Ordinance>> inflater.inflate(R.layout.fragment_v
(mLayoutManager); call, Throwable t) { ideos, container, false);
// }
mSwipeRefreshLayout = progressDialog.dismiss();
view.findViewById(R.id.swipeRefr // } }
eshLayout_videos); // }); package com.bulacan.meycauayan;

mSwipeRefreshLayout.setOnRefre List<Video> videos = new import android.app.ProgressDialog;


shListener(new ArrayList<>(); import android.content.Context;
SwipeRefreshLayout.OnRefreshList Video video = new Video(); import
ener() { video.setId(1); android.content.DialogInterface;
@Override import android.content.Intent;
public void onRefresh() { video.setUrl("http://techslides.com import android.net.Uri;
refreshItems(); /demos/sample- import android.os.AsyncTask;
} videos/small.mp4"); import android.os.PowerManager;
}); videos.add(video); import
android.speech.tts.TextToSpeech;
refreshItems(); Video video2 = new Video(); import
video2.setId(2); android.support.v7.app.AppCompat
Activity;
super.onViewCreated(view, video2.setUrl("https://www.sampl import android.os.Bundle;
savedInstanceState); e- import android.view.Menu;
} videos.com/video/mp4/480/big_bu import android.view.MenuItem;
ck_bunny_480p_20mb.mp4"); import android.view.View;
void refreshItems() { videos.add(video2); import
final ProgressDialog android.webkit.WebChromeClient;
progressDialog = new Video video3 = new Video(); import
ProgressDialog(getContext()); video3.setId(3); android.webkit.WebSettings;
import android.webkit.WebView;
progressDialog.setTitle("Loading... video3.setUrl("https://www.sampl import android.widget.Button;
"); e- import android.widget.TextView;
videos.com/video/mp4/360/big_bu import android.widget.Toast;
progressDialog.setMessage("Please ck_bunny_360p_10mb.mp4");
wait..."); videos.add(video3); import
progressDialog.show(); com.bulacan.meycauayan.R;

//Todo: Fetch all Ordinance mDataset = videos; import java.io.FileOutputStream;


data in Database mAdapter = new import java.io.IOException;

STI College Meycauayan 52


import java.io.InputStream; vity.this); public void onInit(int
import java.io.OutputStream; status) {
import mProgressDialog.setMessage("Do if (status !=
java.net.HttpURLConnection; wnloading File..."); TextToSpeech.ERROR) {
import java.net.URL;
import java.util.Locale; mProgressDialog.setIndeterminate( t1.setLanguage(Locale.UK);
true); }
public class }
ViewOrdinanceActivity extends mProgressDialog.setProgressStyle( });
AppCompatActivity { ProgressDialog.STYLE_HORIZON
TextView tvnewstitle, TAL); t1.setSpeechRate(0.95f);
tvnewsdescription;
mProgressDialog.setCancelable(tr
WebView tvnewswcontent; ue);
TextToSpeech t1; getSupportActionBar().setDisplayH
Ordinance ordinance; btndownload = omeAsUpEnabled(true);
Button btndownload; findViewById(R.id.news_btndownl
Button btnreadonline; oad); }
ProgressDialog
mProgressDialog; @Override
public boolean
btndownload.setOnClickListener(n onCreateOptionsMenu(Menu menu)
@Override ew View.OnClickListener() { {
protected void onCreate(Bundle @Override
savedInstanceState) { public void onClick(View getMenuInflater().inflate(R.menu.m
view) { enu_preview, menu);
super.onCreate(savedInstanceState) //check permission return true;
; //download file }

setContentView(R.layout.activity_vi // instantiate it within the @Override


ew_blog_post); onCreate method public boolean
onOptionsItemSelected(MenuItem
setTitle("Ordinance"); final DownloadTask item) {
ordinance downloadTask = new switch (item.getItemId()) {
=(Ordinance)getIntent().getSerializa DownloadTask(ViewOrdinanceActi case android.R.id.home:
bleExtra("CurrentOrdinance"); vity.this, finish();
ordinance.getResolution_number()) break;
; case R.id.action_speak:
tvnewstitle = if(t1.isSpeaking()) {
findViewById(R.id.news_title); downloadTask.execute(ordinance.g if(t1 !=null){
tvnewsdescription = etPdf_path()); t1.stop();
findViewById(R.id.news_descriptio }
n); }else {
tvnewswcontent = mProgressDialog.setOnCancelList
findViewById(R.id.news_content); ener(new t1.speak(ordinance.getOrdinance_ti
DialogInterface.OnCancelListener() tle() + " Ordinance Number: " +
{ ordinance.getResolution_number()
tvnewstitle.setText(ordinance.getO @Override + " " + ordinance.getSection(),
rdinance_title()); public void TextToSpeech.QUEUE_FLUSH,
onCancel(DialogInterface dialog) { null);
tvnewsdescription.setText("ORDI }
NANCE NO. " + downloadTask.cancel(true); break;
ordinance.getResolution_number()) } case R.id.action_video:
; }); Intent view_intent = new
} Intent(getApplicationContext(),
tvnewswcontent.loadData(ordinan }); VideoPlayerActivity.class);
ce.getSection(), "text/html", null);
t1 = new view_intent.putExtra("CurrentOrd
TextToSpeech(getApplicationConte inance", ordinance);
xt(), new startActivity(view_intent);
mProgressDialog = new TextToSpeech.OnInitListener() { break;
ProgressDialog(ViewOrdinanceActi @Override

STI College Meycauayan 53


} } CPU from going off if the user
return true; // presses the power button
} // this will be useful to during download
@Override display download percentage PowerManager pm =
public boolean // might be -1: server did (PowerManager)
onSupportNavigateUp(){ not report the length context.getSystemService(Context.
finish(); int fileLength = POWER_SERVICE);
return true; connection.getContentLength(); mWakeLock =
} pm.newWakeLock(PowerManager.
// download the file PARTIAL_WAKE_LOCK,
public void onPause(){ input = getClass().getName());
if(t1 !=null){ connection.getInputStream(); mWakeLock.acquire();
t1.stop(); output = new mProgressDialog.show();
t1.shutdown(); FileOutputStream("/sdcard/ordina }
} nce_" + filename + ".pdf");
super.onPause(); @Override
} byte data[] = new protected void
byte[4096]; onProgressUpdate(Integer...
private class DownloadTask long total = 0; progress) {
extends AsyncTask<String, Integer, int count;
String> { while ((count = super.onProgressUpdate(progress);
input.read(data)) != -1) { // if we get here, length is
private Context context; // allow canceling with known, now set indeterminate to
private back button false
PowerManager.WakeLock if (isCancelled()) {
mWakeLock; input.close(); mProgressDialog.setIndeterminate(
String filename; return null; false);
}
public DownloadTask(Context total += count; mProgressDialog.setMax(100);
context, String filename) { // publishing the
progress.... mProgressDialog.setProgress(progr
this.context = context; if (fileLength > 0) // ess[0]);
this.filename = filename; only if total length is known }
} publishProgress((int)
(total * 100 / fileLength)); @Override
@Override output.write(data, 0, protected void
protected String count); onPostExecute(String result) {
doInBackground(String... sUrl) { } mWakeLock.release();
InputStream input = null; } catch (Exception e) { mProgressDialog.dismiss();
OutputStream output = null; return e.toString(); if (result != null)
HttpURLConnection } finally { Toast.makeText(context,
connection = null; try { "Download error! Please try
try { if (output != null) again",
URL url = new output.close(); Toast.LENGTH_LONG).show();
URL(sUrl[0]); if (input != null) else
connection = input.close(); Toast.makeText(context,
(HttpURLConnection) } catch (IOException "File downloaded. File is located
url.openConnection(); ignored) { in your storage.",
connection.connect(); } Toast.LENGTH_SHORT).show();
}
// expect HTTP 200 OK, if (connection != null) }
so we don't mistakenly save error }
report connection.disconnect();
// instead of the file }
if return null; package com.bulacan.meycauayan;
(connection.getResponseCode() != }
HttpURLConnection.HTTP_OK) { import android.os.Bundle;
return "Server @Override import
returned HTTP " + protected void onPreExecute() android.support.annotation.Nullable
connection.getResponseCode() { ;
+""+ super.onPreExecute(); import
connection.getResponseMessage(); // take CPU lock to prevent android.support.v4.app.Fragment;

STI College Meycauayan 54


import import java.util.List; import android.widget.TextView;
android.view.LayoutInflater;
import android.view.View; import retrofit2.Call;
import import retrofit2.http.GET; import
android.view.ViewGroup; com.bulacan.meycauayan.R;
public interface ApiInterface { import java.util.List;
public class AboutFragment
extends Fragment { @GET("fetchAllOrdinance.php") public class
Call<List<Ordinance>> BookmarkCustomAdapter extends
getAllOrdinance(); RecyclerView.Adapter<BookmarkC
@Override } ustomAdapter.ViewHolder> {
public void private Context context;
onViewCreated(View view,
@Nullable Bundle private List<Bookmark>
savedInstanceState) { mDataset;
package com.bulacan.meycauayan; BookmarkOperation
super.onViewCreated(view, bookmarkOperation;
savedInstanceState); public class Bookmark { OrdinanceOperation
} private int bookmarkid; ordinanceOperation;
private int ordinanceid;
@Override
public View public int getBookmarkid() { class ViewHolder extends
onCreateView(LayoutInflater return bookmarkid; RecyclerView.ViewHolder {
inflater, ViewGroup container, } TextView ordinancetitle;
Bundle TextView resolutionnumber;
savedInstanceState) { public void setBookmarkid(int
return bookmarkid) { Button btnremove;
inflater.inflate(R.layout.fragment_a this.bookmarkid = Button btnview;
bout, container, false); bookmarkid;
} } ViewHolder(View v) {
} super(v);
package com.bulacan.meycauayan; public int getOrdinanceid() { ordinancetitle =
return ordinanceid; v.findViewById(R.id.ordinancetitle
import retrofit2.Retrofit; } );
import resolutionnumber =
retrofit2.converter.gson.GsonConve public void setOrdinanceid(int v.findViewById(R.id.resolutionnu
rterFactory; ordinanceid) { mber);
this.ordinanceid = btnremove =
public class ApiClient { ordinanceid; v.findViewById(R.id.btnbookmark)
public static final String } ;
BASE_URL = } btnview =
"http://meycauayan.co.nf/api/"; v.findViewById(R.id.btnview);
private static Retrofit retrofit =
null; }
public static Retrofit getClient() }
{ public void add(int position,
if (retrofit==null) { package com.bulacan.meycauayan; Bookmark item) {
retrofit = new mDataset.add(position, item);
Retrofit.Builder() import android.content.Context; notifyItemInserted(position);
.baseUrl(BASE_URL) import android.content.Intent; }
import public void remove(Bookmark
.addConverterFactory(GsonConvert android.support.annotation.NonNull item) {
erFactory.create()) ; int position =
.build(); import mDataset.indexOf(item);
} android.support.v7.widget.Recycler mDataset.remove(position);
return retrofit; View; notifyItemRemoved(position);
} import android.text.Html; }
} import
android.view.LayoutInflater;
import android.view.View; BookmarkCustomAdapter(List<Bo
import android.view.ViewGroup; okmark> myDataset, Context
package com.bulacan.meycauayan;
import android.widget.Button; context) {

STI College Meycauayan 55


mDataset = myDataset; bookmarkOperation.removeBook import java.util.ArrayList;
bookmarkOperation = new mark(bookmark); import java.util.List;
BookmarkOperation(context);
ordinanceOperation = new mDataset.remove(bookmark); import retrofit2.Call;
OrdinanceOperation(context); notifyDataSetChanged(); import retrofit2.Callback;
}); import retrofit2.Response;
this.context = context; }
} public class BookmarkFragment
@NonNull @Override extends Fragment {
@Override public int getItemCount() {
public return mDataset.size(); List<Bookmark> mDataset;
BookmarkCustomAdapter.ViewHol } private RecyclerView
der mRecyclerView;
onCreateViewHolder(@NonNull private String stripHtml(String private RecyclerView.Adapter
ViewGroup parent, html) { mAdapter;
if private
int viewType) { (android.os.Build.VERSION.SDK_ RecyclerView.LayoutManager
View v = INT >= mLayoutManager;
LayoutInflater.from(parent.getConte android.os.Build.VERSION_CODE
xt()).inflate(R.layout.recycler_card S.N) { BookmarkOperation
_project, parent, false); return bookmarkOperation;
return new ViewHolder(v); String.valueOf(Html.fromHtml(html SwipeRefreshLayout
} , mSwipeRefreshLayout;
@Override Html.FROM_HTML_MODE_LEG
public void ACY)); @Override
onBindViewHolder(@NonNull } else { public void
ViewHolder holder, final int return onViewCreated(View view,
position) { String.valueOf(Html.fromHtml(html @Nullable Bundle
)); savedInstanceState) {
Bookmark bookmark = }
mDataset.get(position); } bookmarkOperation = new
final Ordinance ordinance = } BookmarkOperation(getContext());
ordinanceOperation.getOrdinance( mDataset = new
bookmark.getOrdinanceid()); ArrayList<>();
mRecyclerView =
holder.ordinancetitle.setText(ordin view.findViewById(R.id.my_recycl
ance.getOrdinance_title()); package com.bulacan.meycauayan; er_view_bookmark);

holder.resolutionnumber.setText(" import android.app.ProgressDialog; mRecyclerView.setHasFixedSize(t


ORDINANCE NUMBER: " + import android.os.Bundle; rue);
ordinance.getResolution_number()); import
android.support.annotation.Nullable
; mLayoutManager = new
holder.btnview.setOnClickListener( import LinearLayoutManager(getContext(),
view -> { android.support.v4.app.Fragment; LinearLayoutManager.VERTICAL,
Intent view_intent = new import false);
Intent(context, android.support.v4.widget.SwipeRe
ViewOrdinanceActivity.class); freshLayout; mRecyclerView.setLayoutManager
import (mLayoutManager);
view_intent.putExtra("CurrentOrd android.support.v7.widget.LinearLa
inance", ordinance); youtManager; mSwipeRefreshLayout =
import view.findViewById(R.id.swipeRefr
context.startActivity(view_intent); android.support.v7.widget.Recycler eshLayout_bookmark);
}); View;
import mSwipeRefreshLayout.setOnRefre
android.view.LayoutInflater; shListener(new
holder.btnremove.setText("Remov import android.view.View; SwipeRefreshLayout.OnRefreshList
e"); import android.view.ViewGroup; ener() {
import android.widget.Toast; @Override
holder.btnremove.setOnClickListen import public void onRefresh() {
er((view) ->{ com.bulacan.meycauayan.R; refreshItems();
}

STI College Meycauayan 56


}); package com.bulacan.meycauayan; COLUMN_ORDTITLE + "
TEXT, " +
refreshItems(); import android.content.Context; COLUMN_SECTION
import + " TEXT, " +
super.onViewCreated(view, android.database.sqlite.SQLiteData
savedInstanceState); base; COLUMN_VIDEO_PATH + "
} import TEXT, " +
android.database.sqlite.SQLiteOpen
void refreshItems() { Helper; COLUMN_PDF_PATH + "
final ProgressDialog import android.util.Log; TEXT) ";
progressDialog = new
ProgressDialog(getContext()); import
com.google.gson.annotations.Seriali public static final String
progressDialog.setTitle("Loading... zedName; TABLE_BOOKMARK =
"); "bookmarks";
public static final String
progressDialog.setMessage("Please public class DatabaseHandler COLUMN_BOOKMARK_ID =
wait..."); extends SQLiteOpenHelper { "id";
progressDialog.show(); private static final String public static final String
DATABASE_NAME = COLUMN_ORDINANCEID =
"ordinance.db"; "ordinanceid";
private static final int
mDataset = DATABASE_VERSION = 27; private static final String
bookmarkOperation.getAllBookm TABLE_BOOKMARK_CREATE =
arks(); public static final String "CREATE TABLE " +
mAdapter = new TABLE_ORDINANCE = TABLE_BOOKMARK + " (" +
BookmarkCustomAdapter(mDatase "ordinances";
t, getContext()); COLUMN_BOOKMARK_ID + "
public static final String INTEGER PRIMARY KEY
mRecyclerView.setAdapter(mAda COLUMN_RECORDID = AUTOINCREMENT, " +
pter); "record_id";
public static final String COLUMN_ORDINANCEID + "
progressDialog.dismiss(); COLUMN_ID = "id"; INTEGER)";
onItemsLoadComplete(); public static final String
} COLUMN_RESNUM =
"resolution_number"; public DatabaseHandler(Context
void onItemsLoadComplete() { public static final String context) {
COLUMN_ORDTITLE = super(context,
mSwipeRefreshLayout.setRefreshi "ordinance_title"; DATABASE_NAME, null,
ng(false); public static final String DATABASE_VERSION);
} COLUMN_SECTION = "section"; }
public static final String
@Override COLUMN_VIDEO_PATH = @Override
public View "video_path"; public void
onCreateView(LayoutInflater public static final String onCreate(SQLiteDatabase db) {
inflater, ViewGroup container, COLUMN_PDF_PATH =
Bundle "pdf_path"; db.execSQL(TABLE_ORDINANC
savedInstanceState) { E_CREATE);
return private static final String
inflater.inflate(R.layout.fragment_b TABLE_ORDINANCE_CREATE db.execSQL(TABLE_BOOKMAR
ookmark, container, false); = K_CREATE);
} "CREATE TABLE " + }
TABLE_ORDINANCE + " (" +
} @Override
COLUMN_RECORDID + " public void
INTEGER PRIMARY KEY onUpgrade(SQLiteDatabase db, int
AUTOINCREMENT, " + oldVersion, int newVersion) {
COLUMN_ID + "
INTEGER , " + db.execSQL("DROP TABLE
COLUMN_RESNUM IF EXISTS " +
+ " TEXT, " + TABLE_ORDINANCE);

STI College Meycauayan 57


db.execSQL(TABLE_ORDINANC if($data[0] > 1){ <textarea type="text"
E_CREATE); class="form-control"
echo style="resize:none;height:300px;wi
db.execSQL("DROP TABLE "<script>alert('Failed To Add Data dth:500px" name
IF EXISTS " + is Already Exists')</script>"; ="Section"required></textarea>
TABLE_BOOKMARK); } </div>
else{ <div
db.execSQL(TABLE_BOOKMAR class="form-group">VideoLink
K_CREATE); $sql = "INSERT INTO <input type="text"
} law_tbl ( class="form-control"
} Resolution_Number,Ordinance_Titl style="resize:none;height:50px;widt
e,Section,Path,VideoUrl,date) h:500px" name ="Url"required>
WEBSITE VALUES('$ResolutionNumber', </div>
'$OrdinanceTitle','$Section','$np','$ <div class="form-
<html> Url','$post_date')"; group">PDF File
<head> if <input type = "file"
<title></title> (mysqli_query($conn,$sql)){ </div>
<meta name="viewport"
content="width=device-width, echo
initial-scale=1"> "<script>alert('Add Law
<link rel="stylesheet" Successfuly')</script>"; <div class="modal-
href="mystyle.css"> footer"style="resize:none;height:60
<link rel="stylesheet" } px;width:1100px">
href="https://maxcdn.bootstrapcdn.c else{ <button type"submit"
om/bootstrap/3.3.7/css/bootstrap.mi echo name="register" class="btn btn-
n.css"> "Error To Add Law "; primary">ADD
</head> } Ordinance</button>
<style> } </div>
tbody tr:nth-child(odd) { }
background-color: #e1e1e1; </form>
} </div>
</style> </div>
<body> </div>
?> </div>
<?php </center>
include 'connection.php';
</body>
if(isset($_POST['register'])){ <script
<form method="POST" enctype = src="https://ajax.googleapis.com/aja
$ResolutionNumber = "multipart/form-data"> x/libs/jquery/3.2.1/jquery.min.js"><
$_POST['ResolutionNumber']; /script>
$OrdinanceTitle = <script
$_POST['OrdinanceTitle']; src="https://maxcdn.bootstrapcdn.c
<center><br><br>
$Section = <div class="form- om/bootstrap/3.3.7/js/bootstrap.min.
$_POST['Section']; group">Resolution Number js"></script>
$Url = $_POST['Url']; <input type="text" </html>
$post_date = date('m-d- class="form-control"
y'); style="resize:none;height:50px;widt
$tf = h:500px" name
'Documents/'.basename($_FILES['F ="ResolutionNumber"required>
ileToUpload']['name']); </div> <?php
$np = "".$tf; <div
class="form-group">Ordinance
session_start();
$check="SELECT * Title
FROM law_tbl WHERE <input type="text"
class="form-control" if(isset($_SESSION['Admin']))
Ordinance_Title =
'$OrdinanceTitle'"; style="resize:none;height:50px;widt
h:500px" name {
$rs =
mysqli_query($conn,$check); ="OrdinanceTitle"required>
$data = </div> ?>
mysqli_fetch_array($rs, <div class="form-
MYSQLI_NUM); group">Section <! DOCTYPE HTML>

STI College Meycauayan 58


<head> <link rel="stylesheet" echo
<title>Admin Panel</title>
href="mystyle.css"> "<script>alert('Update Law
successfuly')</script>";
</head> </head> }
<style>
<center><body><td><img
src="Logomo.PNG"
tbody tr:nth-child(odd) { elseif(isset($_POS
alt="RRRP"></center> background-color: T['btn-delete'])) {
#e1e1e1; $id_no =
<center> } $_POST['id'];
<?php include 'Header3.php';?>
</style> $sql =
<body><br><br> mysqli_query($conn,"DEL
<iframe src = "Show.php" style = ETE FROM deactive
"border: 1px; width:1330px; <?php include WHERE id_no = $id_no");
height:615px;" name="frame"
scrolling = yes> 'connection.php'; mysqli_query($con
if(isset($_POST['btn- n,$sql);
this is iframe</iframe> update'])){ }
$id_no = elseif(isset($_POST['btn-
<?php include 'Footer.php'; ?>
$_POST['id']; Restore'])) {
</body> $ResolutionNumbe $id = $_POST['id'];
r= $ResolutionNumbe
</html> $_POST['ResolutionNumb r=
</center>
er']; $_POST['ResolutionNumb
$OrdinanceTitle = er'];
<?php $_POST['OrdinanceTitle']; $OrdinanceTitle =
$Section = $_POST['OrdinanceTitle'];
}
$_POST['Section']; $Section =
else $tf = $_POST['Section'];
'Documents/'.basename($_ $Url =
{ POST['FileToUpload']); $_POST['Url'];
$np = "".$tf; $Signby =
header("location:admin.php");
$Url = $_POST['Url']; $_POST['Signby'];
} $post_date =
$sql = "UPDATE date('m-d-y');
?> deactive SET $tf =
Resolution_Numbe 'Documents/'.basename($_
r = '$ResolutionNumber', POST['FileToUpload']);
<html>
Ordinance_Title = $np = "".$tf;
<head>
'$OrdinanceTitle', Section $sql1 = "INSERT
<title></title>
= '$Section', INTO law_tbl (
<meta name="viewport"
Path = '$np', Resolution_Number,Ordin
content="width=device-
VideoUrl = '$Url' WHERE ance_Title,Section,Path,Vi
width, initial-scale=1">
id_no = '$id'"; deoUrl,date,Signby)
<link rel="stylesheet"
mysqli_query($con VALUES('$ResolutionNu
href="https://maxcdn.boots
n,$sql); mber',
trapcdn.com/bootstrap/3.3.
'$OrdinanceTitle','$Section
7/css/bootstrap.min.css">

STI College Meycauayan 59


','$np','$Url','$post_date','$ <td target='#edit".$row['0']."'>
Signby')"; style='padding:10px'>Reso Read</button></td>";
$sql = lution Number</td> echo
mysqli_query($conn,"DEL <td style='padding:10px'> "<td>".$row[2]."</td>";
ETE FROM deactive </td> echo
WHERE id_no = $id"); <td "<td>".$row[4]."</td>";
mysqli_query($con style='padding:10px'>Ordi echo
n,$sql1,$sql); nance Title </td> "<td>".$row[6]."</td>";
echo <td style='padding:10px'>
"<script>alert('Restore law File Name</td> "<td>".$row[7]."</td>";
successfuly ')</script>"; echo "<td><button
} type='button' class='btn
?> <td btn-danger' data-
style='padding:10px'>Date toggle='modal' data-
</td> target='#Delete".$row['0'].
"'>Delete</button>
<?php include <td <button type='button'
'connection.php'; style='padding:10px'></td class='btn btn-primary'
> data-toggle='modal' data-
echo "<h1 class='f' target='#myModal".$row['
style='text-align:center' > </thead> 0']."'>Restore</button>
Deleted Ordinance </h1> <tr> </td>";
<hr>"; ";
echo "<tr>";
echo "<table cellspacing =
0 cellpadding = 100 $result =
style='font-family:Futura mysqli_query($conn,"selec ?>
Lt BT; font-weight:400;'> t * from deactive") or
<tr align = center style = die("Error in Selecting <div id="Delete<?php
'background- Data from Contactus echo $row[0]?>"
color:#e8e9e7;'>"; Table"); class="modal fade"
$i=0; role="dialog">
echo " while($row = <div class="modal-
<table mysqli_fetch_row($result)) dialog"
style='width:100%;paddin { style="resize:none;height:1
g:80px' cellspacing=0> 50px;width:200px">
<thead style='font- echo "<td
family:Futura Lt BT; font- style='text- <!-- Modal content-->
weight:400;background- align:center'>".++$i."</td> <div class="modal-
color:#336699;color:#fff;p "; content">
adding:10px;'> echo <div class="modal-
"<td>".$row[1]."</td>"; header">
<td echo "<td><button
style='padding:10px'>NO. type='button' data- <h4 class="modal-
</td> toggle='modal' data- title">DELETE
FILE!!!</h4>

STI College Meycauayan 60


</div> <div
<div class="modal- </div> class="col-md-6">
body">
<form </div> <div class="form-
method="POST"> group">
<div
class="row"> <div <label
class="col-md-6"> for=""></label>
<center><br>
<div class="form- <input
<button group"> type="hidden"
type="submit" class="btn class="form-control"
btn-primary" name="btn- <label value="<?php echo
delete">Yes</button> for=""></label> $row[5]?>" name
&nbsp &nbsp &nbsp ="Url"required>
&nbsp &nbsp &nbsp <input </div>
&nbsp type="hidden"
name="OrdinanceTitle" </div>
<button class="form-control" <div
type="button" class="btn value="<?php echo class="col-md-6">
btn-primary" data- $row[2]?>">
dismiss="modal">No</but <div class="form-
ton> </div> group">
</center>
</div> <label
<div for=""></label>
class="col-md-6"> <div
class="col-md-6"> <input
<div class="form- type="hidden"
group"> <div class="form- class="form-control"
group"> value="<?php echo
<label $row[7]?>" name
for=""></label> <label ="Url"required>
for=""></label> </div>
<input
type="hidden" name="id" <input </div>
value="<?php type="hidden"
echo$row[0]?>"> name="Section" <div
class="form-control" class="col-md-6">
<input value="<?php echo
type="hidden" $row[3]?>"> <div class="form-
name="ResolutionNumber group">
" class="form-control" </div>
value="<?php echo <label
$row[1]?>"> </div> for=""></label>

STI College Meycauayan 61


</div> class="form-control"
<input <div class="modal- value="<?php echo
type="hidden" name= body"> $row[2]?>">
"FileToUpload" <form
class="form-control" method="POST"> </div>
value="<?php echo <div
$row[4]?>" required> class="row"> </div>
</div> <div
</div> class="col-md-6"> <div
class="col-md-6">
</div> <div class="form-
group"> <div class="form-
</div> group">
<label
for="">Resolution <label
Number</label> for="">Section</label>
</form>
</div> <input
type="hidden" name="id" <input
</div> value="<?php type="text"
</div> echo$row[0]?>"> name="Section"
class="form-control"><a
<input target = '_blank'
<!-- Modal --> type="text" href=https://wordtohtml.ne
<div id="myModal<?php name="ResolutionNumber t?sna=$sna >Open
echo $row[0]?>" " class="form-control" Editor</a>
class="modal fade" value="<?php echo
role="dialog"> $row[1]?>">
<div class="modal- </div>
dialog" </div>
style="resize:none;height:1 </div>
600px;width:1200px" > </div>
<div
<!-- Modal content--> <div class="col-md-6">
<div class="modal- class="col-md-6">
content"> <div class="form-
<div class="modal- <div class="form- group">
header"> group">
<button <label
type="button" <label for="">VideoLink</label>
class="close" data- for="">Ordinance_Title</l
dismiss="modal">&times; abel> <input
</button> type="text" class="form-
<h4 class="modal- <input control" value="<?php
title"><?php echo type="text" echo $row[5]?>" name
$row[1]?></h4> name="OrdinanceTitle" ="Url"required>

STI College Meycauayan 62


</div></div> </form>
<div class="col-md-6"> </div> <?php echo
$row[3]?>
<div class="form- </div>
group"> </div> </div>
<!-- Modal --> </div>
<label for="">PDF <div id="edit<?php <div
File</label> echo $row[0]?>" class="col-md-4"></div>
class="modal fade" </div>
<input role="dialog"> <div
type="File" name= <div class="modal- class="modal-
"FileToUpload" dialog"style="resize:none; footer"><?php echo
class="form-control" height:1200px;width:1000 $row[1]?>
value="<?php echo px">
$row[4]?>" required> </div>
</div> <!-- Modal content-->
<div class="modal- </form>
content"> </div>
<div class="modal- <?php
</div> header"> }
<div <button echo "</tr><tr style =
class="col-md-6"> type="button" 'background-
class="close" data- color:#e8e9e7;'> <td
<div class="form- dismiss="modal">&times; colspan = 9 align =
group"> </button> right></table>";
<h4 class="modal- ?>
<label for="">Sign title"><?php echo </body>
By</label> $row[2]?></h4> <script
<input type="text" </div> src="https://ajax.googleapi
name="Signby" <div class="modal- s.com/ajax/libs/jquery/3.2.
class="form-control" > body"> 1/jquery.min.js"></script>
<form <script
</div> method="POST" enctype = src="https://maxcdn.bootst
</div> "multipart/form-data"> rapcdn.com/bootstrap/3.3.7
<div <div /js/bootstrap.min.js"></scri
class="modal-footer"> class="row"> pt>
<div <div </html>
class="btn-group"> class="col-md-12"></div>
<button <div <?php
type="submit" class="btn class="col-md-12"> include 'connection.php';
btn-primary" name="btn- session_start();
Restore">Restore</button <div class="form- $email =
> group"> $_SESSION['Admin'];
$query =
</div> <label mysqli_query($conn,"SEL
</div> for=""></label> ECT * FROM admin

STI College Meycauayan 63


WHERE login = <link rel="stylesheet" var result =
'$email'"); href="https://maxcdn.boots $('#result').html();
trapcdn.com/bootstrap/3.3. if(result == 'Strong'
7/css/bootstrap.min.css"> || result == 'Good') {
<script
if(isset($_POST['submit'])) language="javascript" $('#validate').attr('disabled'
{ src="jquery.js"></script> ,false);
$password = <script } else {
mysqli_real_escape_string( language="javascript"
$conn,$_POST['password'] src="passwordStrengthMet $('#validate').attr('disabled'
); er.js"></script> ,true);
$cf = <script }
mysqli_real_escape_string( src="validation.js"></scrip });
$conn,$_POST['cf']); t> })
if($cf != $password) { <script </script>
echo 'Password language="javascript"> </head>
mismatched.'; <body>
} else { $(document).ready(functio
$query = n() {
mysqli_query($conn,"UPD <form method="POST"
ATE admin SET Password $('#username').keyup(funct name="signin">
= '$password' WHERE ion(){ <div class="row">
EmailId = '$email'"); <div
echo $('#result').html(passwordS class="container">
'<script>alert("Password trength($('#pa').val(),$('#us <h3 class='f'
has been ername').val())) style="text-
changed.");location.href=" var result = align:center">Change
change-admin- $('#result').html(); Password</h3>
password.php"</script>'; if(result == 'Strong' <hr>
} || result == 'Good') { <div class="col-md-
} 4"></div>
?> $('#validate').attr('disabled' <div class="col-md-
<!DOCTYPE html> ,false); 4">
<html lang="en"> } else { <div class="form-
<head> group">
<title></title> $('#validate').attr('disabled' <label>New
<meta charset="UTF- ,true); Password</label>
8"> } <input
<meta }); type="hidden" id =
name="viewport" "username" name="email"
content="width=device- $('#pa').keyup(function(){ class = "in" size="25"
width, initial-scale=1"> placeholder = "Email Id"
<link rel="stylesheet" $('#result').html(passwordS maxlength="40" onblur =
href="mystyle.css"> trength($('#pa').val(),$('#us "validateEmail()"
ername').val())) value="<?php echo
$email?>" >

STI College Meycauayan 64


<input <script <body><br><br>
type="password" src="https://maxcdn.bootst <form action="search.php"
class="form-control" id = rapcdn.com/bootstrap/3.3.7 method="POST">
"pa" name="password" /js/bootstrap.min.js"></scri &nbsp &nbsp &nbsp
size="25" placeholder = pt> &nbsp &nbsp &nbsp
"Password" minlength="8" </body> &nbsp &nbsp &nbsp
required/> </html> &nbsp &nbsp &nbsp
</div> &nbsp &nbsp &nbsp
<?php &nbsp &nbsp &nbsp
<div class="form- $servername = &nbsp &nbsp &nbsp
group"> "fdb23.biz.nf"; &nbsp &nbsp &nbsp
<label>Confirm $username = &nbsp &nbsp &nbsp
New Password</label> "2830906_itp"; &nbsp &nbsp &nbsp
<input $password = &nbsp &nbsp &nbsp
type="password" "ronniesuan123"; &nbsp &nbsp &nbsp
name="cf" class="form- $dbName = &nbsp &nbsp &nbsp
control confirm-password" "2830906_itp"; &nbsp &nbsp &nbsp
id = "pa" &nbsp &nbsp &nbsp
name="password" $conn =new mysqli &nbsp &nbsp &nbsp
size="25" placeholder = ($servername , $username &nbsp &nbsp &nbsp
"Password" minlength="8" , $password , $dbName) &nbsp &nbsp &nbsp
onblrequired/> &nbsp &nbsp &nbsp
</div> or die("Connection &nbsp &nbsp &nbsp
Failed........!!!"); &nbsp &nbsp &nbsp
<div class="form- ?> &nbsp &nbsp &nbsp
group"> &nbsp &nbsp &nbsp
<span <html> &nbsp &nbsp &nbsp
style="color:green" <head> &nbsp &nbsp &nbsp
id='result'></span> <title></title> &nbsp &nbsp &nbsp
</div> <meta name="viewport" &nbsp &nbsp &nbsp
content="width=device- &nbsp &nbsp &nbsp
<div class="form- width, initial-scale=1"> &nbsp &nbsp &nbsp
group"> <link rel="stylesheet" &nbsp &nbsp &nbsp
<button href="https://maxcdn.boots &nbsp &nbsp &nbsp
type="submit" trapcdn.com/bootstrap/3.3. &nbsp &nbsp &nbsp
id="validate" name = 7/css/bootstrap.min.css"> &nbsp &nbsp &nbsp
"submit" class = "btn btn- <link rel="stylesheet" &nbsp &nbsp &nbsp
primary"/> Save Changes href="mystyle.css"> &nbsp &nbsp &nbsp
</button> &nbsp &nbsp &nbsp
</div> </head> &nbsp &nbsp &nbsp
</div> <style> &nbsp &nbsp &nbsp
<div class="col-md- tbody tr:nth-child(odd) { &nbsp &nbsp &nbsp
4"></div> background-color: &nbsp &nbsp &nbsp
</div> #e1e1e1; &nbsp &nbsp &nbsp
</div> } &nbsp &nbsp &nbsp
</form> </style> &nbsp &nbsp &nbsp

STI College Meycauayan 65


&nbsp &nbsp &nbsp
&nbsp &nbsp &nbsp elseif(isset($_POS echo "<h1 class='f'
<input type="text" T['btn-delete'])) { style='text-align:center' >
name="searchterm" $id_no = List Of Ordinance </h1>
placeholder="Search..."> $_POST['id']; <hr>";
<input type="submit" $ResolutionNumbe
value="Search"> r= echo "<table cellspacing =
</form> $_POST['ResolutionNumb 50 cellpadding = 50
<?php include er']; style='font-family:Futura
'connection.php'; $OrdinanceTitle = Lt BT; font-weight:400;'>
if(isset($_POST['btn- $_POST['OrdinanceTitle']; <tr align = center style =
update'])){ $Section = 'background-
$id_no = $_POST['i']; color:#e8e9e7;'>";
$_POST['id']; $Url =
$ResolutionNumbe $_POST['Url']; echo "
r= <table
$_POST['ResolutionNumb $post_date = style='width:100%;paddin
er']; date('m-d-y'); g:100px' cellspacing=0>
$OrdinanceTitle = $tf = <thead style='font-
$_POST['OrdinanceTitle']; 'Documents/'.basename($_ family:Futura Lt BT; font-
$Section = POST['FileToUpload']); weight:400;background-
$_POST['Section']; $np = "".$tf; color:#336699;color:#fff;p
$tf = $sql1 = "INSERT adding:10px;'>
'Documents/'.basename($_ INTO deactive (
POST['FileToUpload']); Resolution_Number,Ordin <td
$np = "".$tf; ance_Title,Section,Path,Vi style='padding:10px'>NO.
$Url = $_POST['Url']; deoUrl,date) </td>
VALUES('$ResolutionNu <td
$sql = "UPDATE mber', style='padding:10px'>Reso
law_tbl SET '$OrdinanceTitle','$Section lution Number</td>
Resolution_Numbe ','$np','$Url','$post_date')"; <td style='padding:10px'>
r = '$ResolutionNumber', $sql = </td>
Ordinance_Title = mysqli_query($conn,"DEL <td
'$OrdinanceTitle', Section ETE FROM law_tbl style='padding:10px'>Ordi
= '$Section', WHERE id_no = $id_no"); nance Title </td>
Path = '$np', echo <td style='padding:10px'>
VideoUrl = '$Url' WHERE "<script>alert('Law File Name</td>
id_no = '$id_no'"; Remove
mysqli_query($con Successfuly')</script>";
n,$sql); mysqli_query($con <td
n,$sql1,$sql); style='padding:10px'>Date
} </td>
echo ?> <td
"<script>alert('Update Law style='padding:10px'></td
successfuly')</script>"; <?php include >
} 'connection.php';

STI College Meycauayan 66


</thead> ?> value="<?php
<tr> <!-- Modal --> echo$row[0]?>">>
"; <div id="myModal<?php
echo $row[0]?>" <input
class="modal fade" type="text"
$result = role="dialog"> name="ResolutionNumber
mysqli_query($conn,"selec <div class="modal- " class="form-control"
t * from law_tbl") or dialog"> value="<?php echo
die("Error in Selecting $row[1]?>">
Data from Contactus <!-- Modal content-->
Table"); <div class="modal- </div>
$i=0; content">
while($row = <div class="modal- </div>
mysqli_fetch_row($result)) header"> <div class="col-
{ <button md-6">
type="button"
echo "<td class="close" data- <div class="form-
style='text- dismiss="modal">&times; group">
align:center'>".++$i."</td> </button>
"; <h4 class="modal- <label
echo title"><?php echo for="">Ordinance_Title</l
"<td>".$row[1]."</td>"; $row[1]?></h4> abel>
echo "<td><button </div>
type='button' data- <div class="modal- <input
toggle='modal' data- body"> type="text"
target='#edit".$row['0']."'> <form name="OrdinanceTitle"
Read</button></td>"; method="POST"> class="form-control"
echo <div value="<?php echo
"<td>".$row[2]."</td>"; class="row"> $row[2]?>">
echo <div </div>
"<td>".$row[4]."</td>"; class="col-md-6"> </div>
echo <div
"<td>".$row[6]."</td>"; <div class="form- class="col-md-6">
group">
"<td>".$row[7]."</td>"; <div class="form-
<label group">
echo "<td><button for="">Resolution
type='button' class='btn Number</label> <label
btn-primary' data- <input for="">Section</label>
toggle='modal' data- type="hidden" name="i"
target='#myModal".$row[' value="<?php
0']."'>Modify</button></td echo$row[3]?>">> <input
>"; type="text"
echo "<tr>"; <input name="Section"
type="hidden" name="id" class="form-control" >

STI College Meycauayan 67


dismiss="modal">&times;
<a target = '_blank' </div> </button>
href=https://wordtohtml.ne <h4 class="modal-
t?sna=$sna >Open </div> title"><?php echo
Editor</a> <div $row[2]?></h4>
class="modal-footer"> </div>
</div> <div <div class="modal-
class="btn-group"> body">
</div> <form
<button method="POST" enctype =
<div type="submit" class="btn "multipart/form-data">
class="col-md-6"> btn-danger" name="btn- <div
delete">Delete</button> class="row">
<div class="form- <div
group"> <button class="col-md-12"></div>
type="submit" class="btn <div
<label btn-primary" name="btn- class="col-md-12">
for="">VideoLink</label> update">Save
Changes</button> <div class="form-
<input group">
type="text" class="form- </div>
control" value="<?php </div> <label
echo $row[5]?>" name </div> for=""></label>
="Url"required> </form>
</div> </div> <?php echo
</div> </div> $row[3]?>
<div class="col-md-6"> </div>
</div> </div>
<div class="form- <!-- Modal -->
group"> <div id="edit<?php </div>
echo $row[0]?>" <div
<label for="">PDF class="modal fade" class="col-md-4"></div>
File</label> role="dialog">
<div class="modal- </div>
<input dialog"style="resize:none; <div
type="File" name= height:1200px;width:1000 class="modal-
"FileToUpload" px"> footer"><i>Sign
class="form-control" By:</i><b><?php echo
value="<?php echo <!-- Modal content--> $row[7]?></b>
$row[4]?>" > <div class="modal-
</div> content"> </div>
<div class="modal- </div>
</div> header"> </div>
<button </form>
type="button" </div>
class="close" data-

STI College Meycauayan 68


</div> $_SESSION['Admin'] = var cv2 =
</div> $eid; cv.value.length;
echo"
<?php <script type = if(nc2 == 0)
} 'text/javascript'> {
echo "</tr><tr style = alert('Success');
'background- window.location = alert("Please Enter
color:#e8e9e7;'> <td 'admin.php?'; Name on Credit Card....");
colspan = 9 align = </script>"; document.checkout
right></table>"; } .Nc.focus();
?> }
</body> else else
</html> { {
<?php echo " <script type document.checkout
= 'text/javascript'> .ccn.focus();
session_start(); alert('Login
Failed'); }
require 'connection.php'; window.location = if(ccn2 == 0)
'index.php?'; {
if(isset($_POST['Email_id' </script>";
])) } alert("Please Enter
{ Credit Card Number.....");
} document.checkout
$eid = .ccn.focus();
$_POST['Email_id']; mysqli_close($conn); }
else
$pass = {
$_POST['password']; VALIDATION document.checkout
.cvv.focus();
function c2()
{ }
$query = "SELECT * if(document.checko
FROM Admin where ut.payment.checked) if(cv2 == 0)
EmailId = '$eid' and { {
Password = '$pass'"; var nc =
$result = document.checkout.Nc; alert("Please Enter
mysqli_query($conn,$quer var ccn = CVV Number");
y) or die("Error in query"); document.checkout.CCno; document.checkout
$row2 = var cv = .cvv.focus();
mysqli_num_rows($result) document.checkout.cvv; }
; else
var nc2 = {
nc.value.length; document.checkout
if($row2 == 1) var ccn2 = .mon.focus();
{ ccn.value.length;
}

STI College Meycauayan 69


}
} if(numb())
{ }
function c(radio) else if(fl == 0)
{ {
return true; f.value = "Could
var visSetting = } not be Empty";
(radio.checked) ? "visible" if(numb2()) f.style.color =
: "hidden" { "red";
document.checkout
document.getElementById return true; .sfname.focus();
("creditcard").style.visibilit return false;
y = visSetting; }
}
} if(validateE()) else
{ {
function c2(radio)
{ return true; f.value = "Only
} Letter are aceepted";
var visSetting = f.style.color =
(radio.checked) ? "hidden" "red";
: "visible" return false; document.checkout
.sfname.focus();
document.getElementById } return false;
("creditcard").style.visibilit }
y = visSetting; function alphabet()
{ }
} function alphabet2()
f= {
document.checkout.sfname
; l=
function validation5() fl = f.value.length; document.checkout.slname
{ ;
var alphaExpe2 = /^[a-zA- len = l.value.length;
if(alphabet()) Z]+$/; var alphaExp = /^[a-zA-
{ Z]+$/;
if(f.value.match(alp
return true; haExpe2))
} {
f.style.color if(l.value.match(alp
if(alphabet2()) = "black"; haExp))
{ {
document.checkout
return true; .slname.focus(); document.checkout
.semail.focus();
} return true;

STI College Meycauayan 70


c=
l.style.color = document.checkout.stel2; document.checkout
"black"; .stel2.focus();
cl = c.value.length;
return true; return false;
var nExp = /^[0-9]+$/;
} }
else if(len }
== 0)
{ if(c.value.match(nE function numb2()
xp)) {
{
l.value = "Could c2 =
not be Empty"; c.style.color = document.checkout.zcode;
"black";
l.style.color = c3 = c.value.length;
"red"; return true;
var nExp = /^[0-9]+$/;
document.checkout }
.slname.focus(); else if(cl ==
0)
return false; { if(c2.value.match(n
} Exp))
else c.value = "Could {
{ Not be Empty";
c2.style.color =
c.style.color = "black";
l.value = "Only "red";
Letter are aceepted"; return true;
document.checkout
l.style.color = .stel2.focus(); }
"red"; else if(c3
return false; == 0)
document.checkout {
.slname.focus(); }
else c2.value = "Could
return false; { Not be Empty";

} c.value = "Only c2.style.color =


} Numbers are accepted"; "red";

document.checkout
function numb() c.style.color = .zcode.focus();
{ "red";
return false;

STI College Meycauayan 71


} "Could Not be Empty";
else
{
uemail.style.color =
c2.value = "Only "red";
Numbers are accepted";
document.checkout
.semail.focus();
c2.style.color =
"red"; return false;

document.checkout }
.zcode.focus(); else
{
return false;
uemail.value =
} "Invalid Email id";

uemail.style.color =
} "red";

function validateE() document.checkout


{ .semail.focus();
var uemail =
document.checkout.semail; return false;
var el = }
uemail.value.length; }
var mailformat = /^\w+([\.-
]?\w+)*@\w+([\.-
]?\w+)*(\.\w{2,4})+$/;
if(uemail.value.mat
ch(mailformat))
{

uemail.style.color =
"black";

return true;
}
else if(el ==
0)
{

uemail.value =

STI College Meycauayan 72


Appendix E. Curriculum Vitae of Researchers
Curriculum Vitae of
PAUL ALBERT C. VELASCO
143 Degueno St. Hulo Meycauayan City Bulacan
Paulalbertvelasco0517@gmail.com
092685582453

EDUCATIONAL BACKGROUND
Level Inclusive Dates Name of school/ Institution
Tertiary Present STI College of Meycauayan
TechVoc - -
High School - Nazarenuz College Foundation
Elementary - St. Mary’s College of Meycauayan

PROFESSIONAL OR VOLUNTEER EXPERIENCE


Nature of Experience/ Name and Address of Company or
Inclusive Dates
Job Title Organization
June 2018 Service Crew Reyes Barbeque
March 2015 Warehouse Staff Aficionado Germany

Listed in reverse chronological order (most recent first).

AFFILIATIONS
Inclusive Dates Name of Organization Position
N/A N/A N/A

Listed in reverse chronological order (most recent first).

SKILLS
SKILLS Level of Competency Date Acquired
Computer Literate (Word, Competent 2005
PowerPoint, Excel, etc.)

TRAININGS, SEMINARS OR WORKSHOP ATTENDED


Inclusive Dates Title of Training, Seminar or Workshop
September 2018 Tech Tutor 10 The Digital Generation
September 2017 Tech Tutor
November 2016 22nd National Youth Convention
February 2016 21st NYC “I will Lead Innovation”

STI College Meycauayan 74


Curriculum Vitae of
RHEV II A. MERLIN
111 St. Peter St. LFD Veinte Reales Valenzuela City
yhevyhev58@gmail.com
09395209675

EDUCATIONAL BACKGROUND
Level Inclusive Dates Name of school/ Institution
Tertiary Present STI College of Meycauayan
TechVoc - -
High School 2007-2011 Dalandanan National High School
Elementary 2001-2007 Luis Francisco Elementary School

PROFESSIONAL OR VOLUNTEER EXPERIENCE


Nature of Experience/ Name and Address of Company or
Inclusive Dates
Job Title Organization
N/A N/A N/A

Listed in reverse chronological order (most recent first).

AFFILIATIONS
Inclusive Dates Name of Organization Position
N/A N/A N/A

Listed in reverse chronological order (most recent first).

SKILLS
SKILLS Level of Competency Date Acquired
Driving 1-2 2014

TRAININGS, SEMINARS OR WORKSHOP ATTENDED


Inclusive Dates Title of Training, Seminar or Workshop
September 2018 Tech Tutor 10 The Digital Generation
September 2017 Tech Tutor
November 2016 22nd National Youth Convention
February 2016 21st NYC “I will Lead Innovation”

STI College Meycauayan 75


Curriculum Vitae of
RONNIE L. SUAN
Pinagbayanan St. Valenzuela City
marksuan23@gmail.com
09210337318

EDUCATIONAL BACKGROUND
Level Inclusive Dates Name of school/ Institution
Tertiary Present STI College of Meycauayan
TechVoc - -
High School 2004-2009 Dalandanan National High School
Elementary 1998-2004 Paltok Elementary School

PROFESSIONAL OR VOLUNTEER EXPERIENCE


Nature of Experience/ Name and Address of Company or
Inclusive Dates
Job Title Organization
April 2011 Salesman SM North Department Store Kids
Wear
November 2011 Salesman/Stackman SM Ayala Department Store FUBU
July 2012 Machine Operator Titan Rubber
May 2013 Sales Clerk SM SanLazaro Department Store
January 2014 Machine Operator Titan Rubber
Listed in reverse chronological order (most recent first).

AFFILIATIONS
Inclusive Dates Name of Organization Position
N/A N/A N/A

Listed in reverse chronological order (most recent first).

SKILLS
SKILLS Level of Competency Date Acquired
Computer Literate (Word, Competent 2005
PowerPoint, Excel, etc.)

TRAININGS, SEMINARS OR WORKSHOP ATTENDED


Inclusive Dates Title of Training, Seminar or Workshop
September 2018 Tech Tutor 10 The Digital Generation
September 2017 Tech Tutor
November 2016 22nd National Youth Convention
February 2016 21st NYC “I will Lead Innovation”

STI College Meycauayan 76


Curriculum Vitae of
ROSSEL ANNE P. MARTILLANO
#135 Raymundo St. Pandayan Meycauayan City
roromartillano29@gmail.com
09215354648

EDUCATIONAL BACKGROUND
Level Inclusive Dates Name of school/ Institution
Tertiary Present STI College of Meycauayan
TechVoc - -
High School 2011-2015 Meycauayan National High School
Elementary 2005-2011 Perez Elementary School

PROFESSIONAL OR VOLUNTEER EXPERIENCE


Nature of Experience/ Name and Address of Company or
Inclusive Dates
Job Title Organization
N/A N/A N/A

Listed in reverse chronological order (most recent first).

AFFILIATIONS
Inclusive Dates Name of Organization Position
N/A N/A N/A

Listed in reverse chronological order (most recent first).

SKILLS
SKILLS Level of Competency Date Acquired
Computer Literate (Word, Competent 2011
PowerPoint, Excel, etc.)

TRAININGS, SEMINARS OR WORKSHOP ATTENDED


Inclusive Dates Title of Training, Seminar or Workshop
September 2018 Tech Tutor 10 The Digital Generation
September 2017 Tech Tutor
November 2016 22nd National Youth Convention
February 2016 21st NYC “I will Lead Innovation”

STI College Meycauayan 77

Potrebbero piacerti anche