CVS edit link for Sepehr Lajevardi

Applying this to submit an "Ubercart Payment Method" module which provides both site admins and end-users to respectively configure their Parsian Bank gateway connection parameters and to pay via that gateway.

The module's code respects "Drupal coding standards" and "Secure code writing" docs, Also contains no 3rd-party code library and depends on soapclient and uc_payment module APIs to provide such a feature. It Also passed the coder module tests.

The module's functionality has been successfully tested and I'm sure that every payment through this module takes place correctly. But as a reviewer, If you want to test the module functionality you need to have a valid Parsian Bank Pin number and a registered Server IP address on their gateway. There's a live working demo available here at the moment: http://minyatoor.com/ubercart

In the future, there will be a few modules which I've planned to submit later, but they are not as completed as this one to be attached. Here is a small list:
- tmdb_api : Provides http://themoviedb.org/ API to Drupal.
- tmdb_content : Depending on "tmdb_api" and "content" modules, it provides us with the ability to have Movie and Person content types via TMDb API.
- uc_shetab : Provides Ubercart with a "Shetab Network" payment "method" which implements a dozen of "gateways" for Shetab network banks.
- sms_irantc : Depending on smsframework project it provides a SMS sending/recieving gateway for http://iran.tc/
- form_wizard : A simple JS based form wizard creator.

Reference Links:
Parsian Bank - http://parsian-bank.com/

Related Drupal projects & docs:
http://drupal.org/project/ubercart
http://drupal.org/project/soapclient
http://drupal.org/project/coder
http://drupal.org/project/smsframework
http://drupal.org/coding-standards
http://drupal.org/writing-secure-code
http://drupal.org/cvs-application/requirements
http://drupal.org/node/539608

Comments

sepla’s picture

Status: Postponed (maintainer needs more info) » Needs review
StatusFileSize
new6.93 KB

Here is the module code.
It's also available on git://github.com/sepehr/uc-parsian.git

avpaderno’s picture

Issue tags: +Ubercart, +Module review

Hello, and thank you for applying for a CVS account. I am adding the review tags, and some volunteers will review the code, pointing out what it needs to be changed.

sepla’s picture

Status: Needs review » Needs work

There are a few typos in the code, I'll update asap.

sepla’s picture

Status: Needs work » Needs review
StatusFileSize
new8.81 KB

The code and its git repo is now updated.

Farhang Darzi’s picture

Status: Needs review » Reviewed & tested by the community

module's functionality has been successfully tested by the community.

avpaderno’s picture

Status: Reviewed & tested by the community » Needs review
sepla’s picture

It's been more than a month and still there's no code review. I think it might be somehow impossible to review a module which has its particular requirements like a webservice private pin code, so I'm gonna add another simple module for review.

sepla’s picture

StatusFileSize
new3.92 KB

Module description from the README.txt:

The module tracks recently viewed nodes for both anonymous and authenticated users. It provides an API function for other modules to get a list of recently views items and also defines a configurable "recently viewed items" block. You might want to make use of the recently_viewed_views submodule which provides a customised default View to benefit the endless flexibility of Views.

The module code is attached. Also there are several other modules available at my github repos.

avpaderno’s picture

Status: Needs review » Needs work
Issue tags: -Ubercart

As per requirements, the description of the module features should be longer than two sentences, and it should include a comparison with the existing solutions.

sepla’s picture

Status: Needs work » Needs review
StatusFileSize
new4.77 KB

Thanks for the reply, Here is the description which I hardly tried to expand:

The module tracks recently viewed nodes for both anonymous and authenticated users using sessions. It provides an API function for other modules to get a list of recently views items and also defines a "recently viewed items" block which is configurable to set a track limit, trim item titles and exclude specific content types from the list.
In the other hand, You're able to make use of the recently_viewed_views submodule which provides a customized default View to benefit the endless flexibility of Views, so you can add more fields like thumbnails, filters, sort orders, etc.
Also if you have Ubercart module suite enabled, there's another submodule called recently_viewed_products which adds an another default view for ubercart specific products with the same functionality.

Comparison with existing solutions

As far as I know, there is no out of the box approach for this purpose, but two existing solutions/workarounds:

  • Using statistics module as discussed here:
    • It's only able to show the node titles, no other field.
    • The solution does not work for anonymous user tracking.
    • This solution is not configurable. e.g. We cannot filter specific content types.
    • It's a little bit tricky, since we have to search the accesslog entry for a word like 'node' or 'content' in the url to filter the list. So it will be useless if we had lots of content types with custom url aliases.
  • Using Flag/Rules/Views as described here:
    • Hard to implement/customize for an end-user/customer.
    • Relies on three different modules which might not be found on every installation.
    • As a difference, It's gathering the data in database via Flag, while recently_viewed module is doing it in sessions.

The module is updated:

  • Fixed a typo in recently_viewed_views default view.
  • Added recently_viewed_products module for ubercart. (The code is not Ubercart related, so i'm not gonna add the Ubercart tag again.)
brianV’s picture

Some notes:

  1. Please add a CVS $Id$ tag to README.txt.
  2. You may want to document that this module is incompatible with Varnish cache, which can't return cached Drupal pages when a session has been initiated.
  3. Please consider adding a hook_help implementation to the modules with documentation similar to your README.txt.

Looks like a useful little utility module.

sepla’s picture

StatusFileSize
new5.27 KB

Thank you for the review,
I considered your notes and here is the code.

sepla’s picture

Is it considered as reviewed ?

brianV’s picture

A reviewer will set the tag to 'Reviewed & Tested by the Community' when it has been reviewed and updated to our standards.

Thanks for making the corrections - we will re-review as soon as time allows.

sepla’s picture

The code is updated.

git clone git://github.com/sepehr/recently-viewed.git recently_viewed
sepla’s picture

Removed as the duplicate of #15.

brianV’s picture

Status: Needs review » Needs work

Please post code as .tar.gz archives into the thread. People aren't going to review your git tree.

sepla’s picture

Since a few hours ago it's impossible (for me at least) to attach files on d.o due to recent issues. I'll update asap.
Thanks for the reply.

avpaderno’s picture

Another user reported he got a validation error when attaching a file to this issue queue. It seems that clicking Save without first clicking Attach did the trick.

sepla’s picture

StatusFileSize
new5.2 KB

Thank you Alberto, the code is now attached.

sepla’s picture

Status: Needs work » Needs review

Updating the status..

sepla’s picture

I understand that it's a volunteer-driven process, but IMO it's discouraging contributions and we should rethink it by the happening of Git migration..

brianV’s picture

Trust me, it's being very heavily rethought. See http://groups.drupal.org/node/114264

zzolo’s picture

Component: Miscellaneous » miscellaneous
Status: Needs review » Postponed

Hi. Please read all the following and the links provided as this is very important information about your CVS Application:

Drupal.org has moved from CVS to Git! This is a very significant change for the Drupal community and for your application. Please read the following documentation on how this affects and benefits you and the application process:
Migrating from CVS Applications to (Git) Full Project Applications

  • The status of this application will be put to "postponed" and by following the instructions in the above link, you will be able to reopen it.
  • Or if your application has been "needs work" for more than 5 weeks, your application will be marked as "closed (won't fix)". You can still reopen it, by reading the instructions above.
sepla’s picture

Project: Drupal.org CVS applications » Drupal.org security advisory coverage applications
Component: miscellaneous » new project application
Status: Postponed » Needs review
Issue tags: -Module review

Moved from CVS applications queue to follow the new procedure.
Here is the module sandbox project: http://drupal.org/sandbox/sepehr/1073796
My appreciations for every single moment of the code reviewer time ;)

sepla’s picture

Since there were no interest for this second module as well, I would like to candidate third one in hope of getting some reviewer attention.
jQuery Calendars API brings the awesome jQuery World Calendars plugin to Drupal. Everything is well documented in the sandbox page as well as in the code itself, please take a look.

tim.plunkett’s picture

Title: Sepehr Lajevardi [sepehr] » Recently Viewed

updating title

sepla’s picture

Title: Recently Viewed » jQuery Calendars API

tim.plunkett, I'm reupdating the issue since it's about another project.

jthorson’s picture

Component: new project application » module

Sepehr Lajevardi,

I know this probably isn't what you want to hear, given how long your CVS/Full Project application has been outstanding ... but if you're changing what modules you want reviewed, I'd recommend re-opening a new issue for your jQuery World Calendar module application.

I suspect part of why your module is currently sitting idle is that your description for the project still discusses the UberCart Payment Gateway module ... while the 'obvious' sandbox link takes us to your 'Recently Viewed' sandbox page, and the 'title' of the application is for the jQuery World Calendar module. All in all, this leads to a lot of confusion - it took me quite a while to find the jQuery sandbox link.

Also, your jQuery project includes a disclaimer that "This module is in an early development stage, It is not intended to be used in production" ... while the new review process specifies that applicants should only submit a 'finished' module - this may also contribute to your application sitting idle.

In addition, I know that for me, when I see this many comments on an application I immediately assume that someone is already actively reviewing the application, and skip ahead to the next one ... Thus, the thread history (regarding your previous two module submissions) may be working against you.

Therefore, I'd suggest that you might have more luck creating a new project application specifically for the jQuery Calendars API submission ... but I would still mention having applied for CVS access back in October, and provide a link back to this thread so that potential reviewers can still go over the history of your application if they desire.

One thing that I would want to see in the new application to help move the jQuery Calendar API review forward would be a summary of existing jQuery calendar options, and an explanation of how this module provides functionality over and above those existing options ... especially since Keith Wood's jQuery Calendar code is already heavily used in a number of key drupal modules (such as date_popup). (Similarily, I suspect that your 'recently viewed' submission would have been heavily scrutinized under the 'duplicates existing module functionality' test, as well.)

Admittedly, this is somewhat frustrating advice to be hearing 6 months after an inital application ... but we are actively trying to deal with the queue backlog, and your continued patience is certainly appreciated!

jthorson’s picture

Also, if you do submit jQuery Calendars API as a new issue, respond with a link to the new issue here, so that those of us already on the thread can find the new application.

jthorson’s picture

Status: Needs review » Needs work
sepla’s picture

Status: Needs work » Closed (won't fix)

jthorson,

First of all, I apologize for my late reply. Secondly I would like you to know that I really appreciate your word and the time you spent writing this.

I completely agree with you.. every point. It took so long and I was thinking that candidating new modules might help to attract more reviewers, at least one! Anyway I'm gonna mark this as won't fix and I will file a new application regarding a brand new module, soon.

Thank you again ;)