Skip to main content

GSoC’17 Coding period | Week #3 | Drupal





With the conclusion of the third week of Google Summer of Code 2017, the initial phase of the coding period is coming to a closure. The conceptualization developed during the previous weeks have been of immense help, and has been of notable assistance for the completion of the ports for the first phase.
The previous week, as I had stated in my earlier blogpost, I had to port the following sub-modules regarding the UC Wish list framework:
As I had mentioned in the previous blogpost, till week 2 I had almost completed the first port by configuring the administrator wish list settings and completing a substantial portion of managing user wish lists. With the conclusion of week 3, I have completed the port of the administrator wish list settings. Moreover, I have also included the ‘Add to wish list’ feature as part of the second port.
Thereby I would briefly like to state the steps taken to port the above functionalities:
  • Manage user wish lists:
    • Implementing hook_menu by defining Routes, which are basically are the mappings between URL paths and their corresponding page and access callbacks, stored in the uc_wishlist.routing.yml file by the route name uc_wishlist.admin_wishlist. 
    • Creating database queries to query the user and related wish list information and retrieving them.
    • Creating a corresponding Controller class by implementing a function to retrieve a paged list of wish lists by querying the related database created in the /src/Controller directory.
    • Providing the required menu link associated with the port in YAML format in the uc_wishlist.links.menu.yml file.
As mentioned above, I was able to port the ‘Add administrator wish list settings’ and include ‘Add to wishlist’ & ‘Add to cart’ features as a part of the previous week’s regime. The associated bug fixes would be fixed as per schedule. The next week would include the final portion of the first phase of the coding period, wherein I intend to implement viewing/updating the user wish list after adding products to a specific wish list, by implementing Views Integration through the Views module. The code associated with the port can be found here.
Winding up, these were the objectives and concepts learned during the third week of coding phase in GSoC’17. Hope to learn many more new concepts in the coming weeks for the successful completion of the port.

Cheers!

Comments

Popular posts from this blog

GSoC'17 | Drupal

This year I had the utmost opportunity of getting selected for the prestigious Google Summer of Code 2017, as a part of Drupal, the open source organisation to which I contribute. Drupal, is a free and open source content-management framework written in PHP and distributed under the GNU General Public License, provides a back-end framework for at least 2.2% of all Web sites worldwide – ranging from personal blogs to corporate, political, and government sites. Systems also use Drupal for knowledge management and for business collaboration. The Google Summer of Code, often abbreviated to GSoC, is an international annual program, first held from May to August 2005, in which Google awards stipends, which depends on place of university of the student, to all students who successfully complete a requested free and open-source software coding project during the summer. The program is open to university students aged 18 or over. Students contact the mentor organization...

GSoC’17 Coding period | Week #7 | UC Wishlist

With the last week of the second phase of the Google Summer of Code 2017 underway, the seventh week has come to a close. The previous week saw the completion of the third port for the second regime, i.e., porting ‘View/Update wishlist’ . The earlier week I had summarised the implementation for the third port, i.e, porting ‘View/Update wishlist’ functionality. So, the work done the previous week for the implementation of the mentioned third port can be summarised below: The first thing I did was to define an interface my UcWishlist entity type class can implement and that extends the default ContentEntityInterface alongwith EntityOwnerInterface . So inside of the module's src/Entity folder, create a file called UcWishlistInterface.php . Next,  I focused on the crux of defining my own Content Entity class and created a folder inside the src/ directory called Entity , and within it, a file called UcWishlist.php . What we have here is a...

GSoC’17 Coding period | Week #1 | Drupal

The Coding phase of Google Summer of Code 2017 kicked off the previous week on May 30th, 16:00 UTC, marking the conclusion of the one-month long Community Bonding period. As stated earlier in my previous post , the Community Bonding term proffered the selected students an opportunity to build a rapport with their community, helping them in interacting with the respective mentors and fellow developers. Presently, I am working on porting the UC Wish list module to Drupal 8, under the guidance of Naveen Valecha , which would specifically allow customers to create and administer personalized wish lists of products in their Ubercart store, thereby enabling potential customers to get a better understanding by referring to those wishlists. During the community bonding phase, I had been asked to create a Plan issue for tracking the status of the port and sub-issues of the project goals, by my mentor. As per the implementation, for the first phase/month of the coding pe...