University of Manchester School of Computer Science. Content Management System for Module Webpages

Size: px
Start display at page:

Download "University of Manchester School of Computer Science. Content Management System for Module Webpages"

Transcription

1 University of Manchester School of Computer Science Content Management System for Module Webpages Computer Science BSc (Hons) Author: Yichen Lu Supervisor: Dr. Gavin Brown April 2016

2 Abstract Content Management System for Module Webpages Author: Yichen Lu Supervisor: Dr. Gavin Brown This report outlines the development of a Content Management System (CMS) project. This CMS is highly customized for the task of managing contents of course module webpages. It was initially designed for the module COMP61011: Foundations of Machine Learning, but with the extensibility in mind, this CMS was developed to adapt to other module website. The key feature of this CMS is What You See Is What You Get (WYSIWYG), and this makes the CMS easy to use as well as provide an intuitive user experience. This CMS provides the ability of managing site resources such as files and pictures. Another key feature of this CMS is that it enables users to manage site structure and resources such as files and pictures. Furthermore, it allows creation and deletion of web pages for a site; creation of new sites can also be easily achieved. Methodologies from software engineering has been used in the development process of this project. Justification has been made about the choice of technology and the particular design in architecture and user interface. 1

3 Acknowledgement I would like to thank Dr. Gavin Brown for his continued guidance and mentoring throughout the duration of this project. His detailed and enlightening feedback during both the development and the writing of this report has been valued. His advice is helpful not only for the development of this project but also in my future career. I would also like to thank Dr. Richard Neville for his feedback on project deliverables, which has been helpful for me to improve the development process and refine the product. Finally, I also would like thank my parents and friends for their support and encouragement which has been helpful to preserve my sanity and keep me motivated during this year. 2

4 Table of Contents List of Figures... 5 List of Tables... 6 Chapter Introduction Motivation Aims and Objectives Report Overview... 8 Chapter Background Current Module Webpages Existing CMS in the market Chapter Design Requirements System Design Use case analysis Architecture Design Database Design User Interface Design Technology selection Project Planning Chapter Development Ground Work Virtual Private Server (VPS) Virtualenv Git Repository Flask project Content management User stories User Interface Issue to Overcome Code Implementation Result Right Side Panel

5 4.3.1 User Stories User Interface Issue to Overcome Code Implementation Result Central Authentication Service (CAS) Login User Stories Issue to Overcome Result File uploading User Stories Issue to Overcome Code Implementation Result Site Management User Stories User Interface Issue to Overcome Code Implementation Result Mobile Optimization Code Implementation Result Chapter Testing and Evaluation Unit Testing Performance Analysis Chapter Conclusion Objectives Achieved in this Project Future work Summary of the Report References Appendix A Project Plan

6 List of Figures Figure 2.1: Current appearance of COMP61011 module webpage... 9 Figure 2.2: Source code of current COMP61011 module webpage, <table> tags are used for design purposes Figure 3.2.1: Use case diagram Figure 3.2: 3-tier architecture of web application Figure 3.2.3: Entity Relationship Diagram for the application database Figure 3.3: Basic UI layout design sketch Figure 4.1.4(a): the Flask project root file structure Figure 4.1.4(b): File structure inside static folder Figure 4.1.4(c): plugins in bower_components folder Figure UI sketch for content management Figure 4.2.5(a): Content editing mode is triggered by double clicking on content text Figure 4.2.5(b): Cancel editing without saving Figure User interface design sketch for right side panel Figure 4.3.5(a): Right side panel is switched on Figure 4.3.5(b): Right side panel is switched off Figure 4.3.5(c): Editing mode of the right side panel Figure 4.3.5(d): Bootstrap modal for creating new item Figure 4.3.5(e): Bootstrap modal for editing or deleting an existing item Figure 4.3.5(f): Editing the title of right side panel Figure 4.4.3(a): CAS login interface Figure 4.4.3(b): Name is returned by CAS after successful login Figure 4.5.2(a): Dropdown menu at the right most of navigation menu Figure 4.5.2(b): Bootstrap modal dialog for uploading files Figure 4.5.2(c): Select file to upload Figure 4.5.2(d): Upload successfully status Figure 4.5.2(e): Upload fail status Figure 4.6.2: Sketch for site management page Figure 4.6.5(a): Site management page Figure 4.6.5(b): Add new site Figure 4.6.5(c): Delete site confirmation Figure 4.6.5(d): Edit site title and start menu editing mode Figure 4.6.5(e): Edit All mode is started Figure 4.6.5(f): Add new item to menu (add new page to a site) Figure 4.6.5(g): Delete existing item in menu (delete pages from a site) Figure 4.7.3(a): Example of implementation of Bootstrap utility classes Figure 4.7.4(a): Web pages on mobile device (before login) Figure 4.7.4(b): Web pages on the mobile device (after login) Figure 5.1: Example of using Postman to test API [30] Figure 5.2: Example of using Chrome DevTools for performance analysis

7 List of Tables Table 3.1: Functional requirements

8 Chapter 1 Introduction The content management system (CMS) is a system that is used to manage the content of a website [1]. Website contents can be web page text, images, audio file, video file and uploaded documents. With the help of CMS, users can create, edit and manage the content of a website without any HTML programming skills. This will allow users to be more focused on producing high-quality contents rather than technical issues. 1.1 Motivation A CMS for school module webpages needs to be customized in its functionality and design. We cannot take an existing CMS and use it without any modification. Furthermore, different lecturers write their module webpages in different ways, due to the style or literacy in different web language. It would be better if we can have a system that provide a unified environment which allows lecturers write their web pages using plain English. Therefore, a CMS that customized to be used to edit module webpages is needed. In my previous study on Software Engineering course in the University of Manchester, I learned the Agile development methodology. Doing this project is a good opportunity to test my theoretical knowledge on Agile methodology. Furthermore, the interests on web development is another reason that drives me to choose this project. I could leverage this project as an opportunity to practice both my project management and development skills. 1.2 Aims and Objectives The aim of this project is to produce a CMS specifically designed for management of contents on school module webpages. There are four objectives for this project: 1. The project should reproduce the visual style of the module website COMP61011 ( The design of this content management system should be based on this visual style. 2. The project should implement What You See Is What You Get (WYSIWYG) concept in content editing feature. 3. The system should provide basic and some advanced features that fulfilled the requirements of managing module webpages. 4. The product of this project should be extensible and used by module webpages other than COMP

9 1.3 Report Overview Chapter 1 has outlined the reason of doing this project, and the aims and objectives for the project. Chapter 2 introduces the current situation of the module webpages and briefly introduces existing CMSs in the market. Chapter 3 details the requirements gathered and the design of the application. Chapter 4 is the main body of this report, it details the efforts made in the development of this project Chapter 5 describes the testing techniques used to evaluate the system. Chapter 6 gives a summary of the objectives achieved in this project and possible future works. 8

10 Chapter 2 Background This chapter explains the current situation of the module webpages and the reason of doing this project. 2.1 Current Module Webpages The current module webpages for COMP61011 are not managed by any content management system. It is maintained by Dr. Gavin Brown. Every time there is anything need to be updated for the content, Dr. Gavin Brown has to log into the server and modify the code for the webpages. When the course goes on, there will be some news or files he would like to post on the module webpages to make them accessible to the students, however, modifying the code directly is not a convenient and efficient way of managing the content of the website. Thus, a proper CMS is highly demanded. The current webpage for COMP61011 has been used for a few years, Dr. Gavin Brown has noticed that the current style of module website is a bit outdated and not fashionable enough to catch up the trend of web technologies. Figure 2.1: Current appearance of COMP61011 module webpage Moreover, since the website is developed a few years ago, table-based website structure is used to manage the layout of the webpages. This webpage writing style has already gone out of date and been recognised by the society as not practical enough in terms of maintainability, accessibility and performance; it is also an anti-pattern to HTML5 standard of semantic web [2] [3]. Therefore, a reproduction of the current website is needed. 9

11 Figure 2.2: Source code of current COMP61011 module webpage, <table> tags are used for design purposes. 2.1 Existing CMS in the market There exist many CMS products in the market, such as WordPress [4] and Drupal [5]. They are well built to suit different business purposes. Therefore, some CMS products provide a whole package includes many modules for different purposes. When selecting a CMS, without a clearly defined set of requirements, people will be seduced by fancy functionality that they will never use. Moreover, adopting a CMS product also brings some hidden costs, such as cost of training and redundancy [6]. For example, customers may need to be trained in order to use the product properly; also, the product may contain useless functionality to certain customers. That is because off the shelf solutions are designed to appeal to a wide audience. As a school module website, we do not have many complex requirements like business websites. We only need a place to display all the information and resources needed for this module. Besides, the school network environment also need some specific configurations for the CMS, such as Central Authentication Service [7]. Therefore, a customized CMS is demanded. The CMS produced in this project was named as Litash CMS. 10

12 Chapter 3 Design This chapter introduces the requirements gathered for the application. It will describe the analysis of the requirements and the basic design of the system. Based on the design, it will also describe technologies selected and the project planning. 3.1 Requirements As a content management system, the main task is managing the content. This involves in creating, retrieving, updating and deleting actions to the content of the webpages. Moreover, in order to build an easy-to-use system, I need to take user experience into consideration. As a system that will be used by the university, it is also very important for the system to be able to integrate with the existing university software and network infrastructure. The detailed requirements are shown in the following table. Priority Must Have Should Have Could Have Requirements 1. The system must have a What You See Is What You Get (WYSIWYG) text editor for user to edit the main text content on webpages. 2. The text editor must have the ability to use different text styles. 3. The text editor must have the ability to redo and undo the editing. 4. The text editor must have the ability to copy and paste text with the origin style, and also be able to edit the origin style 5. The system must be connected to the university s Central Authentication Service (CAS) and use CAS for user authentication. 1. The system should produce a tidy and understandable URL for each page. 2. The system should be able to dynamically add a new module website. 3. The system should have the ability to manage the structure of webpages in a website. 4. The system should have an interface for uploading and managing file resources. 1. In order to improve user experience when editing page content, the system could use AJAX technique to submit data. 2. The system user interface could have indicators for alerting critical actions and operational errors. 3. The system should be optimized for mobile devices. 11

13 Won t Have 1. The system will not provide a user management interface at this stage. Using CAS for authentication. 2. The system will not use its own rules to define user roles. 3. In order to follow the WYSIWYG concept as close as possible, the system will not provide a user interface as a backend to manage contents. Table 3.1: Functional requirements The requirements are categorized using MoSCoW technique [8]. Since the time of developing this project is fixed, it is vital to understand the relative importance of the tasks in order to make progress and keep everything on the plan. The MoSCoW technique provides a clear indication of relative priority of tasks and the expectations for their completion. The main aim of using this technique was to implement all requirements under the priority Must Have, as many requirements as possible under the priority Should Have and some requirements under Could Have. In order to keep my focus on the most important requirements, I have avoided the requirements under Won t Have priority. There are set of non-functional requirements need to be taken into consideration when creating the system, they are: 1. Configuration the system should be configured to be ready to deploy. As I cannot test the system under school server environment, I should setup a test environment which is as close as the school environment. 2. Expendability The developer should make sure the system is designed to be able to add more functionalities. 3. Usability the system should has an intuitive and easy to use user interface. 4. Performance The developer should optimize the coding style and follow best practices in order to achieve a better performance and improve the efficiency of the system. 5. Cost The developer should use open source tools and libraries to minimize the cost. Attempting to implement above non-functional requirements into the system will give us a good foundation of producing a better application. 12

14 3.2 System Design Use case analysis Based on the requirements, the system could have use cases as Figure shows. Figure 3.2.1: Use case diagram The system has two actors: the admin and the web page audience. In the context of module website, the admin could be a staff that has the administration right of managing the content of the webpages. The audience could be a student who only has the right to view the content of webpages and download files from the website which are uploaded by admin. 13

15 3.2.2 Architecture Design As the nature of this system is a web application, many popular web applications are implementing the tree tier architecture design pattern. This design pattern is widely used in web applications and it works well for applications with a size like this project. I decided to take this concept into this project. Figure 3.2 shows the 3-tier architecture of the web application. Figure 3.2: 3-tier architecture of web application The presentation tier provides the application's user interface (UI). Typically, this involves the use of browsers for viewing the webpages and interaction with the system. At the application tier reside the application server and the programs that access the database, business functionality of the application is implemented in this tier. The data layer provides access to database, the relations that define the data and their constraints are defined at this tier [9]. 14

16 3.2.3 Database Design Since the project is using Agile method, the design of database schema experienced several times of changes in different iterations along the development life cycle. Figure shows the final entity relationship diagram of the database design. Figure 3.2.3: Entity Relationship Diagram for the application database The basic job of this database is to store the content data of webpages. In this CMS, users are able to create a site. Each site consists of at least one navigation menu item, by default, the home page. Each menu item has a content and a right side panel. Under the right side panel, there could be some panel items and the number of panel items could be zero. Therefore, the relationship of Menu table and SidePanelItem is one to zero or many. 15

17 3.3 User Interface Design Since this project required a reproduction of current COMP61011 module website, the user interface should give user a fresh and different feeling comparing with the old design. After some experiments, I decided to use a two-column layout as the new design. The header including school logo and course title is placed at the top most of the page. Below the header, the navigation menu was moved to the top of the page. After the navigation menu, in the left side of the page is the main content of the page. At the right side of the main content, there is a panel for user to post some news or some notifications. Users can choose whether to display the right side panel. By using a switch button, the information in the right side panel will be displayed in a list format. Figure 3.3: Basic UI layout design sketch Since this project followed. agile method, the design kept evolving in each iteration as the development went on. The UI evolution will be reflected in Chapter 4. 16

18 3.4 Technology selection Since this project was to develop a web application, a number of technologies were involved. The main technologies used in this project were Flask Framework for Python [10], JQuery Library for JavaScript [11] and Bootstrap front-end framework [12]. The database was SQLite3 [13]. 3.5 Project Planning This project followed the Agile development method. Based on the Agile manifesto, the development process of the development was scheduled into multiple iterations [14]. Each iteration had a length of two weeks, and a working software should be delivered at the end of each iteration. The sequence of which module to be completed first was prioritized based on the importance of requirements. In chapter 4, we will discuss the development of each system module. The sequence of completion for each module will also be mentioned. 17

19 Chapter 4 Development In this chapter, we are going to have a close look about how this project became to a live application. During the development of this project, based on the principles of Agile method, 6 iterations were scheduled across the limited time period [15], 5 major modules are completed, they are content management, right side panel, site management, file uploading and CAS login. The result of the implementation is shown at end of the session for each module. Other than the five major modules, this chapter will also discuss the ground work for the development of this project. This chapter will also highlight the issues that need to be overcome. 4.1 Ground Work In order to make the development of this project successful, a series of ground work had to be done. This includes setting up development server, installing necessary library and frameworks Virtual Private Server (VPS) In order to host and test the application, a VPS [16] was purchased from Digital Ocean [17]. The VPS used in this project was running Linux (Ubuntu) operating system Virtualenv In order to keep the server s global site-packages directory clean and manageable, a Virtualenv [18] was created for this project. The flask framework and all required plugins were installed inside this Virtualenv instance Git Repository In order to control the versions created in each iteration of the development, Git was used in this project. Along the development process of this application, four branches were created, including the master branch. Those branches were created before the implementation of some great changes. After the new feature was successfully implemented and tested, the newly created branch was merged with the master branch. The URLs for the repository are listed below: GitHub: GitLab: Flask project Flask framework provides a very tidy file structure. Figure 4.1.4(a) shows the file structure at the root directory of the project. 18

20 Figure 4.1.4(a): the Flask project root file structure. The files inside the static folder are available to users of the application via HTTP. This is the place where CSS, JavaScript and images files go. Figure 4.1.4(b): File structure inside static folder Figure 4.1.4(c): plugins in bower_components folder This application needs to take advantage from some frameworks, libraries, and utilities to achieve a better user experience. In order to keep them updated and manage the decencies of different plugins, Bower package manager was used. Bower will create a folder called bower_components. Whenever a framework or plugin is installed through Bower, Bower will automatically install all the dependencies needed for that plugin or framework, and place all files under bower_components directory [19]. 19

21 Inside the templates folder Flask will look for Jinja2 templates. A template in Flask contains the HTML skeleton code and is integrated with Jinja2 syntax. This makes it possible to do template inheritance and reuse layout of the website in all pages [20]. When users visit a webpage, flask will render the master page template, and fill the master template with the child template and data according to the request URL. Different child template and data will be rendered according to different URL, but they are all using the same master template. Figure 4.1.4(c): File structure inside templates folder As it is shown in Figure 4.1.4(a), the file flaskr.py is the main program of the application server. The database design was implemented into SQL schema. The schema.sql file contains all the SQL create table command. SQLite3 will generate the database file flaskr.db by executing schema.sql. This database file will store all content and operation information used by the application. The file wsgi.py and flaskapp.wsgi are used for deploying the application in Apache server. 20

22 4.2 Content management As a content management system, managing content is obviously the primary feature of the system. This was the first implemented module during the development of this project User stories The following is user stories that had been satisfied in this content management module. As an admin, I want to start editing the content by double click the content or click a start button. As an admin, I want to use different font style for my content. As an admin, I want to be able to add some text with hyperlink into my content. As an admin, I want to add some images into my content. As an admin, I want to be able to use bullet list or numbered list in my content. As an admin, I want to be able to insert table into my content. As an admin, I should be able to redo or undo changes and save the content. As an admin, if I quite the editing mode without saving, I should be alerted User Interface To address the user stories, some elements in UI should be updated upon the basic UI shown in Figure 3.3. A button was added into the navigation menu. After clicking this button or double clicking the content area, the content area of the page will be replaced by the rich text editor. Figure shows the updated UI sketch for this module. Figure UI sketch for content management 21

23 Considering the situation that the content might be written very long. I placed the save and cancel buttons at the bottom of the text editor, so that users can choose to save the editing right after they finish writing their content. The save button was coloured darker than the cancel button. This created a contract between the two buttons. This will give users a psychological hint to click the save button other than cancel button to prevent sudden quit without saving [21] Issue to Overcome When developing this module, a complex part was the rich text editor. As it was stated in the user stories, there are many features needed to be supported. It is not possible to develop a delicate rich text editor in the time scale of this project. Fortunately, there exist many wellbuilt fully featured rich text editor plugins in the market. In this project, the TinyMCE editor was used [22]. By default, the Flask framework will reload the page after the edited content has been submitted to the server. This is not a comfortable user experience. In order to create a better user experience, I modified the default Flask function so that the content could be submitted asynchronously through AJAX (Asynchronous JavaScript and XML) technique [23] Code Implementation In the front-end, the code for controlling UI behaviors is written in JavaScript functions. Those functions covered the following tasks: The configuration for TinyMCE plugin Trigger the content editing mode, and change the status of UI elements. Save the content text, which is using JQuery AJAX form submit method to submit the data to the flask server. In the back-end server side, Flask functions were written to cover the following tasks: Page routing for landing page. Update the content text as HTML code, accepting AJAX request Result The Figure shows the result of this content management module. The TinyMCE editor is delicately implemented. The figure 4.2.5(a) shows the state that the content editing mode has been triggered by double clicking the content text. The origin text is filled into the editor. 22

24 Figure 4.2.5(a): Content editing mode is triggered by double clicking on content text The rich text editor was configured to support all functionalities required by the user stories. In addition, some extra features were also included (e.g. view the HTML source code of the content, insert video embedding code, insert special characters and view the editor in full screen). The text editor was end up being able to provide nearly every feature that could be used in daily content editing tasks. Figure 4.2.5(b): Cancel editing without saving 23

25 The saving function was implemented using AJAX technique, it avoided the page reloading after saving, so that the application could have a better user experience. For example, since the text editor uses JavaScript variable to store the editing history, users are allowed to trigger the text editor and use the undo button to recover previous editing after the previous editing was saved. If the user want to undo the previous editing, he/she can trigger the text editor again, and use the undo button to recover previous editing. This cannot be done if the page is reloaded because the editor will be reset and the editing history will be lost. Preventing page loading also reduced the network usage and improved the performance of the application, which means the waiting time was reduced for users. With AJAX technique, the saving function could be running smoothly without being noticed by the user. As is shown in Figure 4.2.5(b), alert window will be displayed if the user cancels the editing without saving previous changes to the content. 4.3 Right Side Panel The right side panel is the place for users to post some news or notifications. This module is the second implemented module in the entire development process User Stories The following is user stories had been satisfied in this right side panel module. As an admin, I want to post some news or notification in the right side panel As an admin, I want to edit or delete my post in the right side panel. As an admin, I want to edit the title of right side panel. As an admin, I want to be able to choose whether to display the right side panel in each of my webpages User Interface In order to address user stories, the right side panel was designed as shown in Figure

26 Figure User interface design sketch for right side panel At the top of the right side panel, there is the panel title. The title will become editable if the user double click the title. Beside the panel title, there is a button with a pencil icon. It is used for starting the editing mode for the panel items. If this button is clicked, a button item with a plus sign will be added at the top of the item list. When the button with plus sign is clicked, a pop-up window will be opened. Item text can be edited in the window Issue to Overcome There were multiple changes on the position of the editing mode trigger button, which is the one with a pencil icon on it. If it is placed beside title and inside the panel, as shown in Figure 4.3.2, it would be a bit misleading to the user and make them think that this button is used to edit the title text. After some experiments, I finally decided to place the button floating beside the panel. When creating or editing the panel items, Bootstrap modals were used (an implementation of pop up window by Bootstrap). In order to reduce the network usage when loading page and increase the performance of the application, I intended to use one modal element for both creating and editing item. However, the editing and creating modal has different element inside. I had to find a way to identify the purpose of triggering the modal, and add the corresponding element inside the modal. 25

27 4.3.4 Code Implementation Most of the codes needed for this module is in the front-end using JavaScript which was used to control the user interface. Another TinyMCE editor was configured for editing the text of the panel items. Both creating new item and editing existing item were sharing the same editor. If it is used for creating new item, the editor will be empty. If it is used for editing existing item, the text of existing item will be filled into the editor. The JavaScript function covered the following tasks: Show and hide the right side panel. Open Bootstrap modal for creating new item. Open Bootstrap modal for editing or deleting existing item. Enable or disable the editing mode for the right side panel. Save item text Update item text Start title editing and add text box with confirm and cancel buttons. In the back-end server side, Flask functions were written to cover the following tasks: Update title text Create panel items Updating panel items Delete panel items Refer to the ERD diagram in Figure 3.2.3, SidePanelState and SidePanelItem were created for this module. The SidePanelState table stored the state information of whether the panel is shown or hidden. The SidePanelItem stored the item text. Both these two tables were associated with the Menu table by the url attribute Result The switch button design was not a standard HTML element appearance, such as checkbox. It cannot be achieved by simply using <input> tag and setting the type value. Fortunately, there is a plugin called Bootstrap-switch, which could provide the elements, which is usually seen on mobile devices, for web applications. By using this plugin with some configuration, it perfectly satisfied the original design we mentioned before. Refer to Figure 4.3.5(a) and Figure 4.3.5(b), the switch button controlled the entire right side panel area to be shown or to be hidden. To gain a better user experience, the state information was submitted using AJAX technique so that there was no page reloading action when the switch button was clicked. 26

28 Figure 4.3.5(a): Right side panel is switched on Figure 4.3.5(b): Right side panel is switched off 27

29 Figure 4.3.5(c): Editing mode of the right side panel When the editing mode is started, as shown in Figure 4.3.5(c), the pencil icon of the trigger button will be replaced with an eye icon, which indicated that the user will quite the editing mode and go back into viewing mode (normal mode) by clicking it again. A new element with a plus sign inside was added at the top of the item list. The Bootstrap modal for creating new item (Figure 4.3.5(d)) will be opened if this item is clicked. If an existing item is clicked the Bootstrap modal for editing or deleting the item (Figure 4.3.5(e)) will open. 28

30 Figure 4.3.5(d): Bootstrap modal for creating new item Figure 4.3.5(e): Bootstrap modal for editing or deleting an existing item 29

31 Figure 4.3.5(f): Editing the title of right side panel When the title text is double clicked, the text will be replaced by a text box with a confirm button and cancel button attached (Figure 4.3.5(f)). It allowed user to change the title text. The changed text was submitted using AJAX as well. 30

32 4.4 Central Authentication Service (CAS) Login Since our school is using CAS to authenticate students or staffs who want to access the school information systems. It is necessary for this CMS to connect with the CAS. This module was developed in the third iteration of the entire development process User Stories The following is user stories had been satisfied in this CAS login module. The admin must log in through the CAS before they start to manage the webpages. The audience can visit webpages without log into CAS Issue to Overcome There is a simple demonstration of authentication technique using CAS provided by our school, which gives the developer a good start to connect CAS with their own applications [24]. However, the demonstration is written in PHP, I had to write a Python version of CAS login module for this CMS. The implementation of this module was mainly about writing Python code based on the given PHP code. The mechanism of CAS had to be followed Result If the user want to login and start to manage the content, the system will first redirect the user to the CAS login interface, which is shown in Figure 4.4.3(a). After successful login, the user s name registered in our school will be returned, and the user will be redirected back to the home page of his or her site, referring to the Figure 4.4.3(b). Figure 4.4.3(a): CAS login interface 31

33 Figure 4.4.3(b): Name is returned by CAS after successful login For developing purpose, the system was not restricted the login right to the staff only. This can be done when it is deployed. 4.5 File uploading As a module web site, sharing files to students is a common task in daily teaching operation. This module is a must-have module for this system. This module was developed in the fourth iteration of the entire development process User Stories The following is user stories had been satisfied in this file upload module. As an admin, I want to upload a file and share it to my audience. As an audience, I want to download files shared by admin. As an admin, I want to be able to upload all types of document that will be used in daily teaching operations Issue to Overcome To make the system robust, we should never trust input from users [25].Since this module allows user to submit files to the server. Malicious file might be delivered to the server which could break down the service. The security issue should be considered. Therefore, based on the recommendation from the Open Web Application Security Project [26], a white list file extension was used in this module [27]. The file type that are allowed to be submitted should be restricted to those are frequently used in daily teaching operations only. In order to allow audience to download the file, the uploaded file directory in the server should be able to be visited by audiences, but the audience should be authenticated first Code Implementation In the front-end, JavaScript functions were written to cover the following tasks: Open Bootstrap modal dialog for uploading files. Submit selected file using AJAX Display upload status. In the back-end, in order to address user stories and the security issue. The file extension white list was written as a collection in Python global variable (Figure 4.5.3(a)). A Flask 32

34 Extension was used to generate an index page for the admin and audience to view uploaded files. Flask functions were written to cover the following tasks: Recognize file extensions Accepting file submission in AJAX fashion Render page to display uploaded files directory Result The login button in right most side of the navigation menu was transferred into a dropdown menu. Referring to Figure 4.5.2(a), two buttons were added into the dropdown menu. The Upload Files button will bring out a Bootstrap modal dialog which allows the user to select file from his local file directories and upload the file. The Browse Files button will open the directory of uploaded files in the server. Figure 4.5.2(a): Dropdown menu at the right most of navigation menu. Figure 4.5.2(b): Bootstrap modal dialog for uploading files Figure 4.5.2(c): Select file to upload 33

35 In the Bootstrap modal, a file input will bring out the file selector to select local file to be uploaded. When Upload button was clicked, the file will be submitted to the server using AJAX technique. The file will be checked by the server and return a status. The upload status message will then be displayed at the bottom of the Bootstrap modal dialog, refer to Figure 4.5.2(d) and Figure 4.5.2(e). Figure 4.5.2(d): Upload successfully status Figure 4.5.2(e): Upload fail status 34

36 4.6 Site Management Many teachers may not only teach one module, they may want to create another module website which is under the control of the same CMS. This module is another key feature of this CMS, it enables the site management ability for this system. Although this is a key feature of the system, because of the complexity of this module, it was developed in the last two iterations. The reason to do this arrangement was that this module has a lower priority than previous modules. If the system did not have this module, it still can satisfy the very basic requirements of this project. With this module, the system became more powerful yet developing this module increased the risk of failure of this project User Stories The following is user stories had been satisfied in this site management module. As an admin, I want to add a new site into this CMS. As an admin, I want to delete an existing site and all pages associated to the site. As an admin, I want to add new pages for my sites. As an admin, I want to delete a page and all data associated to the page. As an admin, I want to change the title of my sites User Interface To address the user stories, a new site management page was designed. Figure shows the sketch of the UI design. In order to allow user to add a new site, a button with text Add New was added. It will trigger a Bootstrap modal for users to enter the site title and site name. Figure 4.6.2: Sketch for site management page 35

37 Below the Add New button, a list of existing site name is displayed. Beside each site name, there is a button with a cross sign. This button is used to delete that existing site. The page management and title management were based on previous page layout design. A button which will redirect users to the site management page was added into the dropdown menu at the right most of the navigation menu Issue to Overcome As designed in the database, web pages of a site are mapped with URLs. When a site is created, in order to make the site available to be visited, an empty home page is required. The URL of the home page has to be generated at the same time and be stored into the database. This should be the final step of creating the new site. When delete a site, all web pages and data which are associated with that site have to be deleted as well. This requires to go through every database table to perform the deletion Code Implementation In the front-end, since a new site management page was designed, a new HTML template was created. Together with the HTML template, a new JavaScript file was created, in which contains all JavaScript functions for controlling user interface interaction behaviors. JavaScript functions for managing pages were added into home_view_ctrl.js as well. All JavaScript functions for this module covered following tasks: Open Bootstrap modal for adding new site when button is clicked. Submit site information Add new item into navigation menu Delete existing item in navigation menu Edit site title In the back-end server side, Python Flask functions were created. They are handling following tasks: Add and delete site. Add and delete menu item. A menu item is a page of a site. Update site title Result At the home page of a site, refer to Figure 4.5.2(a) if the My Site button in the dropdown menu was clicked, the system will redirect the user to the site management page. Figure 4.6.5(a) shows the site management page. As it was designed, user can add a new site by clicking the Add New button. Below the Add New button, a list of existing sites is displayed. If a site name is clicked, the home page of that site will be shown. Beside each site name, a red button was attached. The site can be deleted by clicking this button. 36

38 Figure 4.6.5(a): Site management page When the Add New button is clicked, a Bootstrap modal dialog for creating new site will come up. Site title and site name should be entered to create a new site. If the red deleting button is clicked, a pop up window will alert the user that this is a danger action. Only after the user confirm to proceed, the site and its associated pages will be deleted. Figure 4.6.5(b): Add new site 37

39 Figure 4.6.5(c): Delete site confirmation Figure 4.6.5(d): Edit site title and start menu editing mode 38

40 Figure 4.6.5(e): Edit All mode is started Figure 4.6.5(f): Add new item to menu (add new page to a site) Figure 4.6.5(g): Delete existing item in menu (delete pages from a site) The site title can be added in any page of that site. A double-click on the title text will bring up a text box attached with a confirm button and a cancel button. This allows the user to change the site title. When I did the development module, I realized that it will be good to have a mode which allows me to edit every editable area at the same time. Therefore, I created the Edit All mode and placed a button just beside the right side panel switch button. When the Edit All mode is started, the trigger button will have the text View instead of Edit All as it shows in Figure 4.6.5(e). Adding and deleting pages of a site can be achieved in the navigation menu area. As it is shown in Figure 4.6.5(e), when Edit All mode is started, a plus button and a minus 39

41 button was added into the navigation menu. The plus button was used to add new menu into the menu, which means adding a new page to the site. Same UI principle was applied here for entering item text. When the minus button was clicked, each existing menu item was attached a red button with a cross on it. The menu items can be deleted by clicking this red button, which means a page of the site was deleted. 4.7 Mobile Optimization In order to make the system to be more mobile-friendly, some optimization had been implemented for the web pages. These optimizations were taken place across the entire development process. When a module was developed, it was tested on mobile devices before it was released to make sure it has a good user experience as it was in desktop browsers Code Implementation As Bootstrap is a framework that is designed to provide support to responsive and mobile first project, the optimization work used API provided by Bootstrap together with HTML5, CSS3 and JavaScript. For faster mobile-friendly development, a set of utility classes are provided by Bootstrap, they are used for showing and hiding content by device via media query [28]. Those utility classes were implemented in many different places in the template files, following Figure is an example of using utility class for the site title. Figure 4.7.3(a): Example of implementation of Bootstrap utility classes. 40

42 4.7.2 Result The result of the mobile optimization has given this web application an appearance of a native mobile application. As it is shown in Figure 4.7.4(a), the site title was integrated into the menu bar. Menu items were collected into an expandable menu, which can be shown by clicking the button at the top right corner of the screen. Figure 4.7.4(a): Web pages on mobile device (before login) If the user has logged in the system, all the editing features that work on desktop are still available and work perfectly in the mobile device. Refer to Figure 4.7.4(b) and Figure 4.7.4(c), all the elements are fitted into the small screen, the fonts are also adjusted for the mobile screens. 41

43 Figure 4.7.4(b): Web pages on the mobile device (after login) 42

44 Figure 4.7.4(c): Web pages on the mobile device ( Edit All mode is started) 43

45 Chapter 5 Testing and Evaluation This chapter will introduce the testing processes applied in this project. The first session will describe the unit testing method used in the development of this project. The last session will explain the performance evaluation for the application. 5.1 Unit Testing Since this application was developed by using Agile method, a module that was developed and integrated with the whole system in each iteration, it was natural to use unit testing method for each module and functions in those modules. In Agile, developers are encouraged to have the mindset of testers [29]. Therefore, when developing this application, I was trying to think as more alternative cases as possible to make the code to be robust to handle more cases. When a module or a function was developed, a number of manual tests were conducted. For the front-end, as the code for front-end was controlling either the appearance or the interaction behavior of the web pages. The result of the code was very intuitive. After functions were written, the test was performed immediately. If the expected result or behavior was achieved, then some alternative cases were tested to try to break the code. If the code was robust and passed the test, it would then integrate with the system and be pushed into the Git repository. For the back-end server code, manual tests were performed with the help of Postman API testing tool [30]. Since some functions in the server were used to handle the data transactions over AJAX technique. They work like a RESTful APIs [31]. With the help of Postman, the correctness of those functions could be tested before they were integrated with the front-end code. Figure 5.1: Example of using Postman to test API [30] 44

46 Sometimes, the developers might have attachment with their code, which would prevent them from making up cases that would break their code eventually. Therefore, in order to have more various test cases, I also invited my friends to test the application. Modules in this application were tested by at least 5 different people. 5.2 Performance Analysis A web application contains many resources, and it sends many requests to retrieve those resources needed when it is loaded. Loading those resources takes time and the speed of loading them significantly affects the performance of the web application. At the final stage of the development, a performance analysis was conducted for this application. This analysis was performed with the help of Chrome DevTool [32]. The Figure 5.2 shows the example of Chrome DevTool for performance analysis. Figure 5.2: Example of using Chrome DevTools for performance analysis. In the Network tab of Chrome DevTool, the loading time of each resource and the number of requests were listed. Based on this statistic, the loading time of each resources can be easily assessed and ranked. Unnecessary requests can also be detected based on the request number. According to the recommended best practice from IBM, several actions were taken, such as putting scripts at the bottom, Post-loading the components and making JavaScript and CSS external [33]. Some image resources were also compressed or replaced by SVG image to reduce their size so that they could take less time to load [34]. 45

47 Chapter 6 Conclusion This chapter will analyze the objectives achieved in this project as well as the limitations. The possible future work is outlined. Finally, a summary of the report will be provided. 6.1 Objectives Achieved in this Project The four objectives which listed at the start of this report were: 1. The project should reproduce the visual style of the module website COMP61011 ( The design of this content management system should be based on this visual style. 2. The project should implement What You See Is What You Get (WYSIWYG) concept in content editing feature. 3. The system should provide basic and some advanced features that fulfilled the requirements of managing module webpages. 4. The product of this project should be extensible and used by module webpages other than COMP61011 The first two objectives has definitely been achieved. This can be seen in the result of each module in the chapter 4. The newly designed visual style was produced at the start of this project. The WYSIWYG concept was reflected in the content management and site management. The third objective has been partially achieved. The application has provided features that allow users to edit content, manage basic site structure and resources. At the same time, although the addition of more features (e.g. creation of more complex site and addition of more admin users) is also achievable, this was greatly limited by the time given for this project. More advanced feature could be added in the future work if necessary. The fourth objective has been partially achieved as well. Currently this application allows the user to create a new site and give the new site a different name. But the appearance and layout of the site must be the same. In the future work, features to support customizable layout and themes could be added. For the requirements listed in chapter 3, all functional requirements in category Must, Should and Could has been achieved. Requirements in the Won t category were not implemented. The non-functional requirements have also been taken into consideration along with the development process of this project. 6.2 Future work Despite the great improvement that has already made, further work are yet to be conducted in order to break the limitation and unleash more powerful features. As a content management system, customizable layout and theme are not the very core features, but are good-to-have features. In the future work, these features could be added. It 46

48 could help users to build their site with more personality and make difference with other sites. Based on the current application architecture, these features are doable, and should not be very difficult to implement. I believe that if I could have more time, these features are definitely be able to be added into this application. It is challenging but of great interest at the same time. Since the aim of this project is to develop an application that could eventually be used in the real world, the deployment work is definitely necessary. To enable the application of this system in school severs, more testing of deployment on the apache server needs to be conducted at the end of the development process of the project. If there is requirement of deployment, a shell script can be produced, which will help to install necessary environment and packages for this application. Above are some ideas for the future work, I believe many more feature could be added as well. 6.3 Summary of the Report The aim of this report is to demonstrate the success of the Content Management System created in my third year project. Many new technologies were used and many best practices were followed. This has made sure that the project could produce a web application that can last for a number of years. Agile development method was applied and the system was tested to be robust. 47

49 References [1] M. Rouse, content management system (CMS), January [Online]. Available: [Accessed April 2016]. [2] G. Wavik, Table Layouts vs. Div Layouts: From Hell to Hell?, Smashing Magazine, 8 April [Online]. Available: [Accessed April 2016]. [3] StackOverflow, [Online]. Available: [Accessed April 2016]. [4] WordPress, WordPress, [Online]. Available: [Accessed April 2016]. [5] Drupal-Open Source CMS, [Online]. Available: [Accessed April 2016]. [6] P. Boag, The 5 hidden costs of running a CMS, 6 August [Online]. Available: [Accessed April 2016]. [7] Central Authentication Service, [Online]. Available: [Accessed April 2016]. [8] MoSCoW Prioritisation, DSDM Consortium, [Online]. Available: [Accessed April 2016]. [9] Three-Layered Services Application, Microsoft, [Online]. Available: [Accessed April 2016]. [10] A. Ronacher, Welcome Flask, [Online]. Available: [Accessed September 2015]. [11] jquery, [Online]. Available: [Accessed September 2015]. [12] Bootstrap The world's most popular mobile-first and responsive front-end framework., Twitter, [Online]. Available: [Accessed September 2015]. [13] SQLite Homepage, [Online]. Available: [Accessed April 2016]. [14] Manifesto for Agile Software Development, Agile Alliance, [Online]. Available: 48

50 [15] 12 Principles Behind the Agile Manifesto, Agile Alliance, [Online]. Available: [Accessed April 2016]. [16] What is a Virtual Directory Server?, Optimal IdM, [Online]. Available: [Accessed April 2016]. [17] DigitalOcean-Simple Cloud Computing, Built for Developers, [Online]. Available: [Accessed April 2016]. [18] Virtualenv, [Online]. Available: [Accessed April 2016]. [19] Bower, [Online]. Available: [Accessed April 2016]. [20] Flask Tutorial, [Online]. Available: [Accessed April 2016]. [21] C. Jarrett, 7 Basic Best Practices for Buttons, UX Matters, 7 May [Online]. Available: [Accessed April 2016]. [22] TinyMCE The Most Advanced WYSIWYG HTML Editor, Ephox, [Online]. Available: [Accessed April 2016]. [23] Ajax, MDN, [Online]. Available: [Accessed April 2016]. [24] Demonstration of authentication with University of Manchester, University of Manchester, [Online]. Available: c4e162&fullname=yichen%20lu&username=mbax3yl2&usercategory=student&dept= School%20of%20Computer%20Science. [Accessed November 2015]. [25] Don't trust user input, Open Web Application Security Project, [Online]. Available: [Accessed April 2016]. [26] About The Open Web Application Security Project, The Open Web Application Security Project, [Online]. Available: [Accessed April 2016]. [27] Unrestricted File Upload, The Open Web Application Security Project (OWASP), [Online]. Available: [Accessed April 2016]. [28] CSS, Bootstrap, [Online]. Available: [Accessed September 2015]. [29] T. Huston, What is Agile Testing?, Smart Bear, [Online]. Available: [Accessed April 2016]. 49

51 [30] Postman, Postman, [Online]. Available: [Accessed April 2016]. [31] A. Rodriguez, RESTful Web services: The basics, 09 February [Online]. Available: [Accessed April 2016]. [32] Chrome DevTools, Google, [Online]. Available: [Accessed April 2016]. [33] Luo Ling,Zhong Chen,Mu Qiao Pan,Huang Yao,Ling Xiao Sun, Improve the performance of your web applications, IBM, 21 September [Online]. Available: [Accessed April 2016]. [34] Scalable Vector Graphics (SVG) 1.1 (Second Edition), W3C, 16 August [Online]. Available: [Accessed April 2016]. [35] Flask Foreword, Flask Framework, [Online]. Available: [Accessed April 2016]. 50

52 Appendix A Project Plan 51

Create-A-Page Design Documentation

Create-A-Page Design Documentation Create-A-Page Design Documentation Group 9 C r e a t e - A - P a g e This document contains a description of all development tools utilized by Create-A-Page, as well as sequence diagrams, the entity-relationship

More information

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments. Web Development WEB101: Web Development Fundamentals using HTML, CSS and JavaScript $2,495.00 5 Days Replay Class Recordings included with this course Upcoming Dates Course Description This 5-day instructor-led

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. WordPress

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. WordPress About the Tutorial WordPress is an open source Content Management System (CMS), which allows the users to build dynamic websites and blog. WordPress is the most popular blogging system on the web and allows

More information

EIE4432 Web Systems and Technologies Project Report. Project Name: Draw & Guess GROUP 21. WatermarkPDF. shenxialin shen

EIE4432 Web Systems and Technologies Project Report. Project Name: Draw & Guess GROUP 21. WatermarkPDF. shenxialin shen EIE4432 Web Systems and Technologies Project Report s e Project Name: Draw & Guess GROUP 21 SHEN Xialin (Spark) 12131888D Introduction XUE Peng (Raymond) 12134614D This is a multi-player draw and guess

More information

University of Pittsburgh Communications Services. Basic Training Manual Drupal 7

University of Pittsburgh Communications Services. Basic Training Manual  Drupal 7 University of Pittsburgh Communications Services Basic Training Manual www.shrs.pitt.edu Drupal 7 Table of Contents Users... 3 Log In... 3 Log Out... 3 What is a Content Management System?... 4 What are

More information

Full Stack Web Developer Nanodegree Syllabus

Full Stack Web Developer Nanodegree Syllabus Full Stack Web Developer Nanodegree Syllabus Build Complex Web Applications Before You Start Thank you for your interest in the Full Stack Web Developer Nanodegree! In order to succeed in this program,

More information

Desire2Learn eportfolio Tool NEIU Instructor Guide

Desire2Learn eportfolio Tool NEIU Instructor Guide Desire2Learn eportfolio Tool NEIU Instructor Guide Introduction The Desire2Learn (D2L) eportfolio tool allows you to store, organize, reflect on, and share items that represent your learning. You can include

More information

Virto SharePoint Forms Designer for Office 365. Installation and User Guide

Virto SharePoint Forms Designer for Office 365. Installation and User Guide Virto SharePoint Forms Designer for Office 365 Installation and User Guide 2 Table of Contents KEY FEATURES... 3 SYSTEM REQUIREMENTS... 3 INSTALLING VIRTO SHAREPOINT FORMS FOR OFFICE 365...3 LICENSE ACTIVATION...4

More information

BCI.com Sitecore Publishing Guide. November 2017

BCI.com Sitecore Publishing Guide. November 2017 BCI.com Sitecore Publishing Guide November 2017 Table of contents 3 Introduction 63 Search 4 Sitecore terms 66 Change your personal settings 5 Publishing basics 5 Log in to Sitecore Editing 69 BCI.com

More information

C1 CMS User Guide Orckestra, Europe Nygårdsvej 16 DK-2100 Copenhagen Phone

C1 CMS User Guide Orckestra, Europe Nygårdsvej 16 DK-2100 Copenhagen Phone 2017-02-13 Orckestra, Europe Nygårdsvej 16 DK-2100 Copenhagen Phone +45 3915 7600 www.orckestra.com Content 1 INTRODUCTION... 4 1.1 Page-based systems versus item-based systems 4 1.2 Browser support 5

More information

TERMS OF REFERENCE Design and website development UNDG Website

TERMS OF REFERENCE Design and website development UNDG Website TERMS OF REFERENCE Design and website development UNDG Website BACKGROUND The United Nations Development Coordination and Operations Office (UN DOCO) launched a new website in 2015 to ensure accessibility

More information

OU EDUCATE TRAINING MANUAL

OU EDUCATE TRAINING MANUAL OU EDUCATE TRAINING MANUAL OmniUpdate Web Content Management System El Camino College Staff Development 310-660-3868 Course Topics: Section 1: OU Educate Overview and Login Section 2: The OmniUpdate Interface

More information

What's New in Sitecore CMS 6.4

What's New in Sitecore CMS 6.4 Sitecore CMS 6.4 What's New in Sitecore CMS 6.4 Rev: 2010-12-02 Sitecore CMS 6.4 What's New in Sitecore CMS 6.4 This document describes the new features and changes introduced in Sitecore CMS 6.4 Table

More information

Content Author's Reference and Cookbook

Content Author's Reference and Cookbook Sitecore CMS 6 Content Author's Reference and Cookbook Rev. 080627 Sitecore CMS 6 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents Chapter

More information

Oracle Application Express 5 New Features

Oracle Application Express 5 New Features Oracle Application Express 5 New Features 20th HrOUG conference October 16, 2015 Vladislav Uvarov Software Development Manager Database Server Technologies Division Copyright 2015, Oracle and/or its affiliates.

More information

JSN UniForm User Manual. Introduction. A simple contact form created by JSN UniForm. JSN UniForm is a Joomla form extension which helps you create

JSN UniForm User Manual. Introduction. A simple contact form created by JSN UniForm. JSN UniForm is a Joomla form extension which helps you create JSN UniForm User Manual Introduction A simple contact form created by JSN UniForm JSN UniForm is a Joomla form extension which helps you create forms quickly and easily - from normal forms to complex forms.

More information

Mavo Create: A WYSIWYG Editor for Mavo. Francesca Rose Cicileo

Mavo Create: A WYSIWYG Editor for Mavo. Francesca Rose Cicileo Mavo Create: A WYSIWYG Editor for Mavo by Francesca Rose Cicileo Submitted to the Department of Electrical Engineering and Computer Science in partial fulfillment of the requirements for the degree of

More information

All India Council For Research & Training

All India Council For Research & Training WEB DEVELOPMENT & DESIGNING Are you looking for a master program in web that covers everything related to web? Then yes! You have landed up on the right page. Web Master Course is an advanced web designing,

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Joomla

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Joomla About the Tutorial Joomla is an open source Content Management System (CMS), which is used to build websites and online applications. It is free and extendable which is separated into frontend templates

More information

Web Development Course (PHP-MYSQL-HTML5.0)

Web Development Course (PHP-MYSQL-HTML5.0) Mstechnologies.org https://www.facebook.com/mindscapestechnologies/ Web Development Course (PHP-MYSQL-HTML5.0) DURATION : 3 MONTHS Mindscapes Technologies Off # 01, Mezzanine Floor, Park View AptNear Usmania

More information

SharePoint User Manual

SharePoint User Manual SharePoint User Manual Developed By The CCAP SharePoint Team Revision: 10/2009 TABLE OF CONTENTS SECTION 1... 5 ABOUT SHAREPOINT... 5 1. WHAT IS MICROSOFT OFFICE SHAREPOINT SERVER (MOSS OR SHAREPOINT)?...

More information

Swiiit User Guide 09/11/2016

Swiiit User Guide 09/11/2016 Swiiit User Guide 09/11/2016 Contents Getting Started... 4 Overview of Main Tools... 5 Webpages... 6 Main pages (Sections)... 6 Rearrange Sections... 6 Subpages... 7 Change the Title of a Webpage... 8

More information

Building a Large, Successful Web Site on a Shoestring: A Decade of Progress

Building a Large, Successful Web Site on a Shoestring: A Decade of Progress Building a Large, Successful Web Site on a Shoestring: A Decade of Progress Theodore W. Frick Bude Su Yun-Jo An Instructional Systems Technology School of Education Indiana University Bloomington Abstract

More information

Microsoft Windows SharePoint Services

Microsoft Windows SharePoint Services Microsoft Windows SharePoint Services SITE ADMIN USER TRAINING 1 Introduction What is Microsoft Windows SharePoint Services? Windows SharePoint Services (referred to generically as SharePoint) is a tool

More information

SCHULICH MEDICINE & DENTISTRY Website Updates August 30, Administrative Web Editor Guide v6

SCHULICH MEDICINE & DENTISTRY Website Updates August 30, Administrative Web Editor Guide v6 SCHULICH MEDICINE & DENTISTRY Website Updates August 30, 2012 Administrative Web Editor Guide v6 Table of Contents Chapter 1 Web Anatomy... 1 1.1 What You Need To Know First... 1 1.2 Anatomy of a Home

More information

Roxen Content Provider

Roxen Content Provider Roxen Content Provider Generation 3 Templates Purpose This workbook is designed to provide a training and reference tool for placing University of Alaska information on the World Wide Web (WWW) using the

More information

eportfolio 1.1 and 2.0

eportfolio 1.1 and 2.0 User Guide Second Edition, April 14, 2009 2009 by Desire2Learn, Inc. All rights reserved 2009 by Desire2Learn, Inc. All rights reserved. 305 King Street West, Suite 200 Kitchener, Ontario N2G 1B9 Canada

More information

Lava New Media s CMS. Documentation Page 1

Lava New Media s CMS. Documentation Page 1 Lava New Media s CMS Documentation 5.12.2010 Page 1 Table of Contents Logging On to the Content Management System 3 Introduction to the CMS 3 What is the page tree? 4 Editing Web Pages 5 How to use the

More information

PlayerLync Forms User Guide (MachForm)

PlayerLync Forms User Guide (MachForm) PlayerLync Forms User Guide (MachForm) Table of Contents FORM MANAGER... 1 FORM BUILDER... 3 ENTRY MANAGER... 4 THEME EDITOR... 6 NOTIFICATIONS... 8 FORM CODE... 9 FORM MANAGER The form manager is where

More information

Content Author's Reference and Cookbook

Content Author's Reference and Cookbook Sitecore CMS 7.0 Content Author's Reference and Cookbook Rev. 130425 Sitecore CMS 7.0 Content Author's Reference and Cookbook A Conceptual Overview and Practical Guide to Using Sitecore Table of Contents

More information

ITEC447 Web Projects CHAPTER 9 FORMS 1

ITEC447 Web Projects CHAPTER 9 FORMS 1 ITEC447 Web Projects CHAPTER 9 FORMS 1 Getting Interactive with Forms The last few years have seen the emergence of the interactive web or Web 2.0, as people like to call it. The interactive web is an

More information

Adobe Marketing Cloud Best Practices Implementing Adobe Target using Dynamic Tag Management

Adobe Marketing Cloud Best Practices Implementing Adobe Target using Dynamic Tag Management Adobe Marketing Cloud Best Practices Implementing Adobe Target using Dynamic Tag Management Contents Best Practices for Implementing Adobe Target using Dynamic Tag Management.3 Dynamic Tag Management Implementation...4

More information

Xton Access Manager GETTING STARTED GUIDE

Xton Access Manager GETTING STARTED GUIDE Xton Access Manager GETTING STARTED GUIDE XTON TECHNOLOGIES, LLC PHILADELPHIA Copyright 2017. Xton Technologies LLC. Contents Introduction... 2 Technical Support... 2 What is Xton Access Manager?... 3

More information

ASP.NET MVC Training

ASP.NET MVC Training TRELLISSOFT ASP.NET MVC Training About This Course: Audience(s): Developers Technology: Visual Studio Duration: 6 days (48 Hours) Language(s): English Overview In this course, students will learn to develop

More information

Internet: An international network of connected computers. The purpose of connecting computers together, of course, is to share information.

Internet: An international network of connected computers. The purpose of connecting computers together, of course, is to share information. Internet: An international network of connected computers. The purpose of connecting computers together, of course, is to share information. WWW: (World Wide Web) A way for information to be shared over

More information

MonarchPress Software Design. Green Team

MonarchPress Software Design. Green Team MonarchPress Software Design 1 Unequipped Digital Journalism explosion of news media consumption on the internet users demand has steadily driven need for: captivating writing and reporting high-quality

More information

Website Training Guide for Staff

Website Training Guide for Staff Website Training Guide for Staff Welcome to the General Website Training Guide. This tutorial will cover a brief introduction to the Research Website for St. Michael s Hospital, the Wordpress backend,

More information

Full Stack Web Developer

Full Stack Web Developer Full Stack Web Developer Course Contents: Introduction to Web Development HTML5 and CSS3 Introduction to HTML5 Why HTML5 Benefits Of HTML5 over HTML HTML 5 for Making Dynamic Page HTML5 for making Graphics

More information

Pixelsilk Training Manual 8/25/2011. Pixelsilk Training. Copyright Pixelsilk

Pixelsilk Training Manual 8/25/2011. Pixelsilk Training. Copyright Pixelsilk Pixelsilk Training Copyright Pixelsilk 2009 1 Pixelsilk Training Guide Copyright 2009, Pixelsilk All rights reserved. No part of this book or accompanying class may be reproduced or transmitted in any

More information

Survey Creation Workflow These are the high level steps that are followed to successfully create and deploy a new survey:

Survey Creation Workflow These are the high level steps that are followed to successfully create and deploy a new survey: Overview of Survey Administration The first thing you see when you open up your browser to the Ultimate Survey Software is the Login Page. You will find that you see three icons at the top of the page,

More information

BOLT eportfolio Student Guide

BOLT eportfolio Student Guide BOLT eportfolio Student Guide Contents BOLT EPORTFOLIO STUDENT GUIDE... I BOLT EPORTFOLIO BASICS... 3 BOLT eportfolio user interface overview... 3 Dashboard... 3 My Items Page... 4 Explore Page... 5 Sharing

More information

PROFESSIONAL TUTORIAL. Trinity Innovations 2010 All Rights Reserved.

PROFESSIONAL TUTORIAL. Trinity Innovations 2010 All Rights Reserved. PROFESSIONAL TUTORIAL Trinity Innovations 2010 All Rights Reserved www.3dissue.com PART ONE Converting PDFs into the correct JPEG format To create a new digital edition from a PDF we are going to use the

More information

National College of Ireland BSc in Computing 2017/2018. Deividas Sevcenko X Multi-calendar.

National College of Ireland BSc in Computing 2017/2018. Deividas Sevcenko X Multi-calendar. National College of Ireland BSc in Computing 2017/2018 Deividas Sevcenko X13114654 X13114654@student.ncirl.ie Multi-calendar Technical Report Table of Contents Executive Summary...4 1 Introduction...5

More information

Joomla! extension JSN EasySlider User Manual

Joomla! extension JSN EasySlider User Manual Joomla! extension JSN EasySlider User Manual (for JSN EasySlider 2.0.x) www.facebook.com/joomlashine www.twitter.com/joomlashine www.youtube.com/joomlashine This documentation is release under Creative

More information

Liferay Portal 4 - Portal Administration Guide. Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer

Liferay Portal 4 - Portal Administration Guide. Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer Liferay Portal 4 - Portal Administration Guide Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer Liferay Portal 4 - Portal Administration Guide Joseph Shum Alexander Chow Redmond Mar Jorge Ferrer 1.1

More information

Virto SharePoint Forms Designer for Office 365. Installation and User Guide

Virto SharePoint Forms Designer for Office 365. Installation and User Guide Virto SharePoint Forms Designer for Office 365 Installation and User Guide 2 Table of Contents KEY FEATURES... 3 SYSTEM REQUIREMENTS... 3 INSTALLING VIRTO SHAREPOINT FORMS FOR OFFICE 365... 3 LICENSE ACTIVATION...

More information

TEACHER PAGES USER MANUAL CHAPTER 6 SHARPSCHOOL. For more information, please visit: Chapter 6 Teacher Pages

TEACHER PAGES USER MANUAL CHAPTER 6 SHARPSCHOOL. For more information, please visit:  Chapter 6 Teacher Pages SHARPSCHOOL USER MANUAL CHAPTER 6 TEACHER PAGES For more information, please visit: www.customernet.sharpschool.com 0 TABLE OF CONTENTS 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. INTRODUCTION... 1 I. TEACHER PAGE

More information

Static Webpage Development

Static Webpage Development Dear Student, Based upon your enquiry we are pleased to send you the course curriculum for PHP Given below is the brief description for the course you are looking for: - Static Webpage Development Introduction

More information

Microsite Overview. The Basics: How to build and manage your ISA Section microsite

Microsite Overview. The Basics: How to build and manage your ISA Section microsite Microsite Overview The Basics: How to build and manage your ISA Section microsite We are excited to work with you to build your microsites within the all-new www.isa.org. The website has state-of-the-art

More information

Senior Project: Calendar

Senior Project: Calendar Senior Project: Calendar By Jason Chin June 2, 2017 Contents 1 Introduction 1 2 Vision and Scope 2 2.1 Business Requirements...................... 2 2.1.1 Background........................ 2 2.1.2 Business

More information

Managing Your Website with Convert Community. My MU Health and My MU Health Nursing

Managing Your Website with Convert Community. My MU Health and My MU Health Nursing Managing Your Website with Convert Community My MU Health and My MU Health Nursing Managing Your Website with Convert Community LOGGING IN... 4 LOG IN TO CONVERT COMMUNITY... 4 LOG OFF CORRECTLY... 4 GETTING

More information

JSN Sun Framework User's Guide

JSN Sun Framework User's Guide JSN Sun Framework User's Guide Getting Started Layout Overview & Key concepts To start with layout configuration, Go to Extension Template JSN_template_default The first tab you see will be the Layout

More information

FileNET Guide for AHC PageMasters

FileNET Guide for AHC PageMasters PageMasters have the permissions necessary to perform the following tasks with Site Tools: ACADEMIC HEALTH CENTER 2 Application Requirements...3 Access FileNET...3 Log in to FileNET...3 Navigate the Site...3

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

eportfolio Support Guide

eportfolio Support Guide eportfolio Support Guide D2L Services West Chester University of Pennsylvania www.wcupa.edu/d2l 610-436-3350, option 2 Anderson Hall, room 20 d2l@wcupa.edu v10.3 September 2014 1 CONTENTS EPortfolio Basics

More information

Developing ASP.NET MVC 5 Web Applications. Course Outline

Developing ASP.NET MVC 5 Web Applications. Course Outline Developing ASP.NET MVC 5 Web Applications Course Outline Module 1: Exploring ASP.NET MVC 5 The goal of this module is to outline to the students the components of the Microsoft Web Technologies stack,

More information

Comparative Assessment

Comparative Assessment Danny Hussey IS: 590 Web Development using CMS University of Tennessee School of Information Science Hamilton Parks Public Library Comparative Assessment Content Management Systems Wordpress, Joomla, and

More information

This document contains information that will help you to create and send graphically-rich and compelling HTML s through the Create Wizard.

This document contains information that will help you to create and send graphically-rich and compelling HTML  s through the Create  Wizard. This document contains information that will help you to create and send graphically-rich and compelling HTML emails through the Create Email Wizard. or warranty by AT&T and is subject to change. 1 Contents

More information

Using the VMware vcenter Orchestrator Client. vrealize Orchestrator 5.5.1

Using the VMware vcenter Orchestrator Client. vrealize Orchestrator 5.5.1 Using the VMware vcenter Orchestrator Client vrealize Orchestrator 5.5.1 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have comments

More information

Administrative Training Mura CMS Version 5.6

Administrative Training Mura CMS Version 5.6 Administrative Training Mura CMS Version 5.6 Published: March 9, 2012 Table of Contents Mura CMS Overview! 6 Dashboard!... 6 Site Manager!... 6 Drafts!... 6 Components!... 6 Categories!... 6 Content Collections:

More information

EPHP a tool for learning the basics of PHP development. Nick Whitelegg School of Media Arts and Technology Southampton Solent University

EPHP a tool for learning the basics of PHP development. Nick Whitelegg School of Media Arts and Technology Southampton Solent University EPHP a tool for learning the basics of PHP development Nick Whitelegg School of Media Arts and Technology Southampton Solent University My background Lecturer at Southampton Solent University since 2003

More information

Developing ASP.NET MVC 5 Web Applications

Developing ASP.NET MVC 5 Web Applications Developing ASP.NET MVC 5 Web Applications Course 20486C; 5 days, Instructor-led Course Description In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework tools

More information

Contact: Systems Alliance, Inc. Executive Plaza III McCormick Road, Suite 1203 Hunt Valley, Maryland Phone: / 877.

Contact: Systems Alliance, Inc. Executive Plaza III McCormick Road, Suite 1203 Hunt Valley, Maryland Phone: / 877. Contact: Systems Alliance, Inc. Executive Plaza III 11350 McCormick Road, Suite 1203 Hunt Valley, Maryland 21031 Phone: 410.584.0595 / 877.SYSALLI Fax: 410.584.0594 http://www.systemsalliance.com http://www.siteexecutive.com

More information

CS Final Exam Review Suggestions - Spring 2018

CS Final Exam Review Suggestions - Spring 2018 CS 328 - Final Exam Review Suggestions p. 1 CS 328 - Final Exam Review Suggestions - Spring 2018 last modified: 2018-05-03 Based on suggestions from Prof. Deb Pires from UCLA: Because of the research-supported

More information

Developing ASP.NET MVC 4 Web Applications

Developing ASP.NET MVC 4 Web Applications Developing ASP.NET MVC 4 Web Applications Course 20486B; 5 days, Instructor-led Course Description In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5

More information

PHP & PHP++ Curriculum

PHP & PHP++ Curriculum PHP & PHP++ Curriculum CORE PHP How PHP Works The php.ini File Basic PHP Syntax PHP Tags PHP Statements and Whitespace Comments PHP Functions Variables Variable Types Variable Names (Identifiers) Type

More information

Website Management with the CMS

Website Management with the CMS Website Management with the CMS In Class Step-by-Step Guidebook Updated 12/22/2010 Quick Reference Links CMS Login http://staging.montgomerycollege.edu/cmslogin.aspx Sample Department Site URLs (staging

More information

Group Microsite Manual

Group Microsite Manual Group Microsite Manual A How-To Guide for the Management of SAA Component Group Microsites 2017-2018 Updated by Matt Black, SAA Web and Information Services Administrator Available online at http://www2.archivists.org/governance/leaderresources.

More information

SharePoint 2010 Tutorial

SharePoint 2010 Tutorial SharePoint 2010 Tutorial TABLE OF CONTENTS Introduction... 1 Basic Navigation... 2 Navigation Buttons & Bars... 3 Ribbon... 4 Library Ribbon... 6 Recycle Bin... 7 Permission Levels & Groups... 8 Create

More information

Manipulating Database Objects

Manipulating Database Objects Manipulating Database Objects Purpose This tutorial shows you how to manipulate database objects using Oracle Application Express. Time to Complete Approximately 30 minutes. Topics This tutorial covers

More information

FileNET Guide for AHC PageMasters

FileNET Guide for AHC PageMasters ACADEMIC HEALTH CENTER 2 PageMasters have the permissions necessary to perform the following tasks with Site Tools: Application Requirements...3 Access FileNET...3 Login to FileNET...3 Navigate the Site...3

More information

20486: Developing ASP.NET MVC 4 Web Applications

20486: Developing ASP.NET MVC 4 Web Applications 20486: Developing ASP.NET MVC 4 Web Applications Length: 5 days Audience: Developers Level: 300 OVERVIEW In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework

More information

20486: Developing ASP.NET MVC 4 Web Applications (5 Days)

20486: Developing ASP.NET MVC 4 Web Applications (5 Days) www.peaklearningllc.com 20486: Developing ASP.NET MVC 4 Web Applications (5 Days) About this Course In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework

More information

User Guide. Chapter 6. Teacher Pages

User Guide. Chapter 6. Teacher Pages User Guide Chapter 6 s Table of Contents Introduction... 5 Tips for s... 6 Pitfalls... 7 Key Information... 8 I. How to add a... 8 II. How to Edit... 10 SharpSchool s WYSIWYG Editor... 11 Publish a...

More information

WORDPRESS 101 A PRIMER JOHN WIEGAND

WORDPRESS 101 A PRIMER JOHN WIEGAND WORDPRESS 101 A PRIMER JOHN WIEGAND CONTENTS Starters... 2 Users... 2 Settings... 3 Media... 6 Pages... 7 Posts... 7 Comments... 7 Design... 8 Themes... 8 Menus... 9 Posts... 11 Plugins... 11 To find a

More information

BrandingUI (Basic, Advanced, Enterprise) Getting Started - Important First Steps

BrandingUI (Basic, Advanced, Enterprise) Getting Started - Important First Steps BrandingUI (Basic, Advanced, Enterprise) Getting Started - Important First Steps Step 1: Log into your BrandingUI Administrative site https:// yourclientid.brandingui.com/admin-signin.php Use the initial

More information

Drupal 8 THE VIDER ITY APPR OACH

Drupal 8 THE VIDER ITY APPR OACH Drupal 8 THE VIDER ITY APPROACH Introduction DR UPAL 8: THE VIDER ITY APPROACH Viderity focuses on designing the Total User Experience for Drupal sites, using a user-centered design approach Traditionally,

More information

Developing ASP.NET MVC 4 Web Applications

Developing ASP.NET MVC 4 Web Applications Developing ASP.NET MVC 4 Web Applications Duration: 5 Days Course Code: 20486B About this course In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5

More information

Theme System: It allows modifying the site view and functionality. It includes images, stylesheet, template files and custom pages.

Theme System: It allows modifying the site view and functionality. It includes images, stylesheet, template files and custom pages. WORDPRESS BASICS Contents WordPress - Overview... 2 WordPress - Dashboard... 4 WordPress - Categories... 6 WordPress - Posts... 7 WordPress - Media Library... 8 WordPress - Links... 9 Master Slider...

More information

Instructor User Guide Table Of Contents

Instructor User Guide Table Of Contents Instructor User Guide Table Of Contents Getting Started...1 Using myitlab...1 Getting Started in myitlab...1 Contacting myitlab Instructor Support...1 myitlab System Requirements...1 Logging in to myitlab...1

More information

WEB DESIGNING COURSE SYLLABUS

WEB DESIGNING COURSE SYLLABUS F.A. Computer Point #111 First Floor, Mujaddadi Estate/Prince Hotel Building, Opp: Okaz Complex, Mehdipatnam, Hyderabad, INDIA. Ph: +91 801 920 3411, +91 92900 93944 040 6662 6601 Website: www.facomputerpoint.com,

More information

COURSE 20486B: DEVELOPING ASP.NET MVC 4 WEB APPLICATIONS

COURSE 20486B: DEVELOPING ASP.NET MVC 4 WEB APPLICATIONS ABOUT THIS COURSE In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework 4.5 tools and technologies. The focus will be on coding activities that enhance the

More information

Web Site Documentation Eugene School District 4J

Web Site Documentation Eugene School District 4J Eugene School District 4J Using this Documentation Revision 1.3 1. Instruction step-by-step. The left column contains the simple how-to steps. Over here on the right is the color commentary offered to

More information

A Guide to Using WordPress + RAVEN5. v 1.4 Updated May 25, 2018

A Guide to Using WordPress + RAVEN5. v 1.4 Updated May 25, 2018 + v 1.4 Updated May 25, 2018 Table of Contents 1. Introduction...................................................................................3 2. Logging In.....................................................................................4

More information

IBM emessage Version 9 Release 1 February 13, User's Guide

IBM emessage Version 9 Release 1 February 13, User's Guide IBM emessage Version 9 Release 1 February 13, 2015 User's Guide Note Before using this information and the product it supports, read the information in Notices on page 471. This edition applies to version

More information

Product Overview. All text and design is copyright 2009 Seavus, All rights reserved

Product Overview. All text and design is copyright 2009 Seavus, All rights reserved Product Overview All text and design is copyright 2009 Seavus, All rights reserved TABLE OF CONTENT 1. WELCOME TO SEAVUS DROPMIND 2 1.1 INTRODUCTION... 2 2 SEAVUS DROPMIND FUNCTIONALITIES 4 2.1 BASIC FUNCTIONALITY...

More information

Web Development IB PRECISION EXAMS

Web Development IB PRECISION EXAMS PRECISION EXAMS Web Development IB EXAM INFORMATION Items 53 Points 73 Prerequisites COMPUTER TECHNOLOGY Grade Level 10-12 Course Length ONE YEAR Career Cluster INFORMATION TECHNOLOGY Performance Standards

More information

JSN EasySlider Configuration Manual

JSN EasySlider Configuration Manual JSN EasySlider Configuration Manual Introduction Product Overview JSN EasySlider JSN EasySlider is the cutting-edge way to present content on website: Informative - Impressive - Interactive. It helps you

More information

DreamFactory Security Guide

DreamFactory Security Guide DreamFactory Security Guide This white paper is designed to provide security information about DreamFactory. The sections below discuss the inherently secure characteristics of the platform and the explicit

More information

Co. Louth VEC & Co. Monaghan VEC. Programme Module for. Web Authoring. leading to. Level 5 FETAC. Web Authoring 5N1910

Co. Louth VEC & Co. Monaghan VEC. Programme Module for. Web Authoring. leading to. Level 5 FETAC. Web Authoring 5N1910 Co. Louth VEC & Co. Monaghan VEC Programme Module for Web Authoring leading to Level 5 FETAC Web Authoring 5N1910 Web Authoring 5N1910 1 Introduction This programme module may be delivered as a standalone

More information

Useful Google Apps for Teaching and Learning

Useful Google Apps for Teaching and Learning Useful Google Apps for Teaching and Learning Centre for Development of Teaching and Learning (CDTL) National University of Singapore email: edtech@groups.nus.edu.sg Table of Contents About the Workshop...

More information

Electronic Portfolio Manual

Electronic Portfolio Manual Electronic Portfolio Manual Kyle Richardson Thomas Rielly Rashid Salameh Adrian Schul 1 Contents Introduction...4 Parts list 5 Instructions... 6 Saving a template.6 Open a new page..7 Creating links...7

More information

08/10/2018. Istanbul Now Platform User Interface

08/10/2018. Istanbul Now Platform User Interface 08/10/2018 Contents Contents...5 UI16... 9 Comparison of UI16 and UI15 styles... 11 Activate UI16... 15 Switch between UI16 and UI15...15 UI16 application navigator... 16 System settings for the user

More information

28 JANUARY, Updating appearances. WordPress. Kristine Aa. Kristoffersen, based on slides by Tuva Solstad and Anne Tjørhom Frick

28 JANUARY, Updating appearances. WordPress. Kristine Aa. Kristoffersen, based on slides by Tuva Solstad and Anne Tjørhom Frick Updating appearances WordPress Kristine Aa. Kristoffersen, based on slides by Tuva Solstad and Anne Tjørhom Frick Agenda Brief talk about assessments Plan for WordPress lessons Installing themes Installing

More information

ADVANTA group.cz Strana 1 ze 24

ADVANTA group.cz Strana 1 ze 24 ADVANTA 2.0 System documentation How to configure the system Advanta Part 1. Quick Start Initial Set- up Document Version 1.2. (System version 2.2.2.h) Advanta allows companies using project management

More information

ArtfulBits Calendar Web Part

ArtfulBits Calendar Web Part ArtfulBits Calendar Web Part for Microsoft SharePoint 2010 User Guide Overview... 1 Feature List... 3 Why ArtfulBits Calendar Web Part?... 3 How to Use... 4 How to create new List View with ArtfulBits

More information

Oracle Eloqua s User Guide

Oracle Eloqua  s User Guide http://docs.oracle.com Oracle Eloqua Emails User Guide 2018 Oracle Corporation. All rights reserved 11-Jan-2018 Contents 1 Emails Overview 6 2 Examples of emails 7 3 Creating emails 19 4 Email authoring

More information

LEVEL 1 Site Administrator Grants permissions and manages access, manages main homepage.

LEVEL 1 Site Administrator Grants permissions and manages access, manages main homepage. USING JOOMLA LEVEL 2 (TRAINING) OVERVIEW This document is designed to provide guidance and training for incorporating your department s content into to the Joomla Content Management System (CMS). Each

More information

Vector Issue Tracker and License Manager - Administrator s Guide. Configuring and Maintaining Vector Issue Tracker and License Manager

Vector Issue Tracker and License Manager - Administrator s Guide. Configuring and Maintaining Vector Issue Tracker and License Manager Vector Issue Tracker and License Manager - Administrator s Guide Configuring and Maintaining Vector Issue Tracker and License Manager Copyright Vector Networks Limited, MetaQuest Software Inc. and NetSupport

More information

1. Setup a root folder for the website 2. Create a wireframe 3. Add content 4. Create hyperlinks between pages and to external websites

1. Setup a root folder for the website 2. Create a wireframe 3. Add content 4. Create hyperlinks between pages and to external websites A. Pre-Production of Webpage 1. Determine the specific software needed WYSIWYG- design software that manipulates components of the web page without the user writing or editing code Uses graphical layout

More information