Wednesday, December 1, 2010
Documentary Video
http://www.youtube.com/watch?v=WrNkn9r9kaI
(The video was made using iMovie and Camtasia)
The last effort
Today we worked in the movie. We made the video more fun with songs of The Beatles, Vampire Weekend, Muse, Train, Phoenix and Justice.
Tuesday, November 30, 2010
Graphic Interface
Even though it may look simple a look of time was invested on details and functionality, we also wanted it to look simple and sleek since we are not trying to sell anything to anyone or trying to make people to come back, etc. the site is all about functionality and that was our main concern all along the way.
The tools used for the creation of the site were the Adobe Creative Suite for images and some css editing (the rest of it was made using TextWrangler), the site was mainly tested on Chrome and Firefox, but it was quite tricky to use tools that text the xhtml (to avoid tag soups) since we were using some django code here and there, but overall the site had no problems running in these two browsers.
Acceptance Testing.

Yesterday, I worked with my partner Sebastian Olivares in the acceptance test of our project. Sebastian is a member of @ESC (The student group to who we are developing the aplication). Since we have an almost finish version, we wanted to see it in action and also find some parts on which we can keep working during the final days.

Saturday, November 27, 2010
From logic to graphic.
The past week I have been working on the implementation of the Ticket seller logic into the graphic interface. I explained the logic of the ticket seller section in previous posts. In order to do this I had to do several points:
- Create the HTML file named assignSellers.hmtl.
- Create the showsTicketsSellers method in views.py.
The main changes were created in the assignSellers.html file.
The two parts of the code that are more important are the creation of the assignSellers button in the toolbar and the creation of the pop up of the assign sellers. In general, this two codes are the more relevant to make possible the graphic interface. There are some variables that I had to adjust. Those variables were width and height. Also, there is a mouseOver function, that is the responsible of changing the color of an icon when the mouse goes over it.
The name of the fields were changed in the table that can be found at the end of the archive:
Since I had all the logic ready, it was not so hard to finish the graphic interface. All I had to do was make the proper convertions and use those files that I had made in the last month.
The next step would be do the same (Converting from logic to graphic interface), but in the Incomes and Expenses sections.
Sunday, November 21, 2010
Programming day

First complete working version!
Saturday, November 20, 2010
Finances.
In the past week, I have been working in the finances part of the project. In this section, the users will be able to check the current statistics of a particular event. This statistics will be calculated based on the numbers of sold tickets and their price. There is another element that is taken into account when calculating the incomes and outcomes of an event. In every event, there could exist more incomes than only the sold tickets, and also, in this section the user should add the outcomes or the different costs of an event.
I have been focusing in three main functions. Add incomes and outcomes, modify incomes and outcomes and delete incomes and outcomes. In order to do this, I had to create the application of the financial module. Once this was done, I started to work in the model, forms and views.
Model: In the models I created income and outcome.
Forms: In this section I had to create some forms like AddIncomeForm, AddOutcomeForm, ModifyIncomeForm, ModifyOutcomeForm, DeleteIncomeForm, DeleteOutcomeForm. I had several problems in order to use the current event that the user selected (This happens because the JQuery functionality is not ready yet, so I had to simulate it by using a variable called eventId).
Views: I created the main methods here, those methods are: AddIncome, AddOutcome, ModifyIncome, ModifyOutcome, DeleteIncome, DeleteOutcome.
In general, I used some of the functions that were already created to guide me. To finish this part of the project, the stats section needs to be finished. This requires the use of JQuery.
Thursday, November 18, 2010
New functionalities
Popup -> Dialog
I was working on the method capable of join our applications with the system. This took some time because initially I wanted to use pop-up of J-QUERY. The pop up did not allow me to load URL. Unfortunately I realized that after a long research. Then I was told that there was another option to load URL. The option they gave me was to use the Dialogs, which have special characteristics to load URL. When I implemented the dialog in our system was necessary to combine it with iframe to exploit the features of both and present a friendly and easy design for the user
The combination helped me a lot because it enables us to upload any file we want. To load any file you only need to save the path in the variable this.href. We also have the option that each time you close the dialog, it refreshes the tabs.
I am currently researching how to every time you run a submit within this dialog, it closes automatically after a certain time.
Wednesday, November 17, 2010
Interface issues and popups
Tuesday, November 16, 2010
Sessions and event list
Thursday, November 11, 2010
Dynamic buttons for selling tickets
Nevertheless, I have found a problem. I have realized that when I move to the next pages of the table of Ticket sell module, none of these buttons appear to be configured with JQuery. This is why I haven't made a commit yet. I'll try to resolve this conflict tonight.
Sunday, November 7, 2010
Site Creation

Even though we’ve been working on the site functionality for the past couple of weeks we didn’t really spend any time working on the site, so while some are working on functionality and integration I decided to start working on the main .html and css files and also modify the existing .html and css files we are using from JQuery.
The first step was to create the parent template, so according to the design we had planned I made an Index xhtml page trying to follow as much of w3c standards I could remember, after tweaking the css style page for a while I decided to give it a go and try it in the actual site, this is where I encounter a major “problem”, the content block wasn’t being displayed, I tried to change the pages as much as I could but I was getting the same error all the time, after an hour or so of wasting my time I realized that JQuery was only going to display the content if the div css tag was named content, and nothing else.
After making that work, I realized that a lot of the .html files we had had some css inside them, so my styles were being changed from different sources and everything was resulting in a big mess, I had to track down those .html files and change the style lines that were messing up my design, after achieving this, I tweaked the .css and html file a little more, changed some imaged and made some new ones, for now I think the site is looking good, but there’s still some room for improvement.
Unit Tests so far..
Unit tests in this kind of systems might be tricky to properly build, not because their difficult to create, but the real functionality of Unit test in dynamic web pages is yet to be seen clearly. The only thing we can really do so far is to "AssertTrue" values with the database, to check if the values are being correctly stored in the database. There is no way to check if our “modify or delete” events are performing correctly, since we can’t really change the database data using these methods from the test file.
This is mainly because Django has a lot of the functionality we need already built-in, so were just using those forms and relying on Django. We can probably test some Django API to see if the forms,etc. are working correctly, but I think this defies the purpose of using Django, so unless we start creating a more hierarchical structure (which I don’t think we will in this project) Unit Tests are becoming just a way to see if the methods are properly storing data in the database.
Ticket sell
Saturday, November 6, 2010
.jpg)
These days I have been working in the assign tickets to the person in charge section. To do this I had to make some methods:
AssignTicketsForm: This one goes in forms.py.
AssignTickets: This one goes in views.py.
In general, the function of these methods is to set the person in charge of selling these tickets. A screen with all the current tickets of the event will appear and a field where the user can write the name of the seller. This will be saved in the seller variable of the ticket. The user can select all the tickets that will be under his charge by using the Ctrl key.
Problems in the process of a better design
We improved the design to raise the experience of the user. We put much emphasis in this because we want the user doesn’t make too much effort to understand our system. We changed some files like: mainInterface.html, index.html, baseEventTabs.html, eventTabs.html and indexAux.htm. These files are those who assemble all the features that our system provides.
One of the things that we changed for previous versions is the way the index looks. We add some logos: the university (ITESM CEM), the computer science’s student group (AESC) and the entity responsible for coordinating all activities of the students group (AGE). We also gave a welcome message.
This changes took some time because all the problems that we had with css. We had some problems with the tags of the files because those tags have already been used by the css file of the libraries that we are using of jQuery. After some research on the official web page of jQuery and some blogs we finally resolved that problem. Actually we are having some problems with the library of dataTable of jQuery that we are adding to our system because this library is changing some tags that we have already defined.
Wednesday, November 3, 2010
Adding and deleting tickets
Saturday, October 30, 2010
Continuing with tickets.
Today, I followed the work that Iadir started in the tickets section. The main advance that I made was keep doing the translation from the Event code to the Ticket code. We can do this because in general both sections have the same functionality. That is why I worked in the views archive from Tickets. I did not test it yet, so it is only a beta of the final idea. The changes can be seen in the modifyTickets method. It is pretty similar to the modifyEvent method.
After doing this, I started to make a research for the next steps. These steps will be developing the creation of the range of the tickets. The user should be able to determine a range, and the system should create tickets taking in consideration this range. To make this possible, I look at some functions in Django and how to handle arrays or lists.
I found some interesting links:
- http://stackoverflow.com/questions/2322739/django-array-or-list-output (How to print or show arrays/lists).
- http://stackoverflow.com/questions/739942/how-to-pass-an-array-in-django-to-a-template-and-use-it-with-javascript (How to pass an array from Django to a template. This could be useful when using JavaScript).
- http://efreedom.com/Question/1-3636930/Data-Arrays-Django-Model (A question about using arrays, could be useful for doubts that could surge later).
Thursday, October 28, 2010
Creating tickets
Sunday, October 24, 2010
2nd iteration (part 2)
2nd iteration
Sunday, October 17, 2010
1st Iteration
Thats when we decided to develop the entire project using Windows, besides this way we wouldn't have to change some paths (like the templates path in settings.py) when changing from a Unix based machine to a Windows one, we also installed tortoise so we could simplify the use of subversion thus making us use it more.
After everything was set up we started creating the register and login instances, this ended up being quite straight forward by using django forms (even the validation was already made for us), we tried to customize this a little bit, but realized that it might take some work so we decided to leave this non-essential details for later. We also used Jquery to personalize the final results, this first week had its up and downs, but we were able to do everything we had to and even more.
Friday, September 24, 2010
A new start...
Due to I am the treasurer of this association, I have realized that is necessary to implement this kind of system so that we can speed up processes related to creating and managing those events. Although this project was initially thinked just for AESC, we have realized that it would be advantageous to expand its use to any association that requires it. We have already talked with the relevant people of Associations and Student Groups (AGE) and Program Direction, and they seem very interested in this proposal. This creates possible chances that they could support the project with sponsorships.
Some of the functionality that the system will include is the following:
-Event creation.
-Event data and characteristics.
-Event requirements.
-Ticket sell.
-Event audience.
-Incomes and outcomes.
-People responsible of the event.
-Schedule of ticket sell.