Chris Pollett >
Students > [Bio] [CS298 Progress Report Spring 2011- PDF] |
Deliverable 1GoalsThe goal of this deliverable was to perform a crawl using Yioop and make changes to its UI. Following two issues in UI were fixed
Installation of Yioop and making it to crawlThe machine used for installation of Yioop was a Windows XP Professional running on Intel Core2Duo with 2GB memory.
The machine has a latest XAMPP bundle for Apache and PHP. The latest version of Yioop was downloaded from www.Seekquarry.com and placed
in the document root of XAMPP installation. The one time configuration was done and data directory for the crawl was created.The steps for
crawl were followed from www.seekQuarry.com and the Queue_Server and Fetcher scripts were started using the php command line. However the
crawl was unsuccessful because fetcher was unable to send information about the crawl back to the queue_server. This information is sent to the
queue_server as POST data using curl. A careful observation and experimentation revealed that it was failing because the URL for queue_sever
in the configuration setting was incorrect. A / should be appended to the path of queue server in the configuartion. If / is not present at the end of URL for queue server, it causes the redirection of page and the posted data won't be sent once the redirect occurs. Description and Fix for First Issue in UIFor performing a crawl using Yioop a user logs into the application and navigates to the Manage crawl link of the main admin screen. The Option link next to the start new crawl button takes the user to the Edit crawl options page. The Restrict Sites By URL check box can be checked to dynamically dispaly a Allowed To Crawl Sites text area. This functionality was working in Mozilla firefox but not in Internet Explorer. To fix the issue crawloptions_element.php and basic.js were analyzed. This file contained the code for elements restrict-sites-by-url checkbox and allowed-sites text area. The check box element was using an onchange DOM event to invoke a javascript function which changed the visibility of text area element. The onchange event occurs when the content of a fileupload, select, text and textarea Javascript objects changes. Hence the event was not triggered in Internet explorer when the check box selected. To fix the issue the onchange DOM event was changed to onclick DOM event. This DOM event is supported by checkbox element and triggered when element is clicked to change its state. After the change was made the issue was fixed for IE and also worked fine for mozilla. The code fragment from Yioop for elements and Javascript function used to investigate the issue are in the file below. DOM test Description and Fix for Second Issue in UIA registered user can log into yioop and perform admin tasks. A logged in user can also return to the main yioop search page to use the search engine to get search results. When this user enters a query and hits the search button the search results are displayed for the query. However when this was done the user was automatically logged out of the system. To fix this issue the following files were investigated from the yioop source code
<input type="hidden" name="YIOOP_TOKEN" value="<?php e($data['YIOOP_TOKEN']); ?>" /> |