CVS edit link for blainelang

Our company Nextide (www.nextide.ca) has recently signed up as an organization supporting Drupal. We have been in the OpenSource Development for nearly 10 years developing applications and have been exploring Drupal over the past year with the plan to migrate our applications. Over the past few months we have had time to focus on these projects and are getting close to be ready to release them in a beta state for peer review. I would like to create our module project pages and get our CVS access established.

Our initial contributions will be a Document Management Application called nexfile and a time management application called nextime. More detail on these two applications including a video introduction can be found on our site.

Site: www.nextide.ca
Nexfile Solution overview : https://www.nextide.ca/nc/index.php?page=nexfile_overview
Nexfile video overview: http://www.youtube.com/watch?v=U3dYJlXurMA

Regards,
Blaine

Comments

blainelang’s picture

I noticed the status is postponed. Are you looking for more information from me?

avpaderno’s picture

Hello, and thanks for applying for a CVS account.

As per http://drupal.org/cvs-application/requirements, the motivation message should be expanded to contain more details about the features of the proposed module, and it should include also a comparison with the existing solutions.

Then, the archive contained the proposed code needs to be uploaded here, in a comment.

blainelang’s picture

StatusFileSize
new161.13 KB

The NexFile Document Management module satisfies the need for a full featured document management module supporting role or user based security. Documents can be saved outside the Drupal public directory to protect corporate documents for safe access and distribution.

Some Key features:
Intuitive and convenient combination of features and modern Web 2.0 design provides the users with the familiar interface to organize and find their files. Cloud Tag and File tagging support to organize and search your files.

Flexible permission model allows you to delegate folder administration to other users. Setup, view, download and upload access for selected users or groups. Any combination of permissions can be setup per folder.

Integrated MS Windows desktop client to easily upload one or 100's of files directly to the remote web-based document repository. Simply drag and drop files and they are uploaded.

Document tagging allows users to search the repository by popular tags. Users can easily see what tags have been used and select one of multiple tags to display a filtered view of files in the document repository.

Users can upload new versions of files and the newer file will automatically be versioned. Previous versions are still available. Use with the desktop client to perform online editing.

Users can selectively receive notification of new files being added or changed. Subscribe to individual file updates or complete folders. File owner can use the Broadcast feature to send out a personalized notification.

Convenient reports to view latest files, most recent folders, bookmarked files, locked or un-read files.

Users can flag document as 'locked' to alert users that it is being updated.

This is a beta version and the installation procedure still requires a manual step as I've not been able to find a solution to have the CCK filefield added to my custom content type 'Nexfile Folder' as part of the install. Refer to this forum post http://drupal.org/node/722268 where I've documented what has been attempted with out success.

For now: Once the module is installed, edit the 'Nexfile Folder' content type and add the CCK filefield
Fieldname: field_nexfile_file
Fieldtype: File
Widget: File Upload
Settings: Allow all extension types, Set Number of fiiles to 'unlimited', List Field enabled by default.

You will be able to create folders and add files (attachments) from the Drupal Content Admin UI as well as within the Nexfile application. This integration can be further enhanced but is not meant to be the primary interface as users will primarily be using the native module interface.

Attached is the code for review.

avpaderno’s picture

Status: Postponed (maintainer needs more info) » Needs review

Thanks for your reply. Remember to change status when you upload new code.

blainelang’s picture

StatusFileSize
new168.43 KB

I've discovered that during my directory cleanup before creating the initial 0.5 archive that was submitted, there was a missing directory preventing you from being able to upload files using the nexfile interface.

Additionally, I have used the coder module to clean up some code formatting issues but the coder module is reporting that all my module includes and library PHP files have no issues but I know there are missing spaces before comma's and such. Even if I tell it to include specific files in the scan, they report back clean.

Attached is version 0.5.1 for your review. Following the noted install step about manually modifying the Nexfile Folder content type and it should work.

blainelang’s picture

StatusFileSize
new171.58 KB

I have attached a new version 0.5.3. Should just need to re-install the module after copying over the code, but some files have been removed and code has been restructured so may be best to remove the module code before updating.

The module admin page is taking shape and there is a hidden test feature to create test records.
It will by default create a new top level folder but all the defaults can be changed in nexfile.module at around line 20.

To activate the create test records feature: {siteurl}?q=nexfile_createtestrecords

There are no real files added but all the data records are there and features should work.
You can add your own folders and real files for testing as need.

We have a desktop client that is in testing and allows users to drag and drop 100's of files if needed to a desktop folder that is being monitored by the desktop client and it will transfer the files to nexfile in the background. The files can be of any size which is great for large media files. The files appear in a incoming folder in nexfile and the owner can then move them to their final directory in batches.

More work is yet to be done and then more extensive testing but this is 85% complete and I'd like to get the CVS account setup and provide access to Beta users and community feedback as soon as possible.

Regards,
Blaine

blainelang’s picture

StatusFileSize
new173.33 KB

I have attached the latest version v0.6, which now automatically extends the 'nexfile folder' content type to include the CCK field so there is no manual install step. Also the module admin interface continues to take shape. The notification feature is sending out email notifications to subscribed users when new files are added.

I have the coder module installed and will be making the recommended code formatting changes.

Can I please have an update as to what further is needed to get CVS access as I'd like to be making these updates to CVS. The module is very useable as is and is definitely beta quality and the community could be testing and providing feedback.

Note: My initial post included a link to a 5 min video that provides an overview of the module/application.

Regards,
Blaine

blainelang’s picture

StatusFileSize
new179.55 KB

Attached is an updated version which includes many of the changes reported by the coder module 'with minor reporting level on'.

The module files have all be modified to include:
- the cvs // $id$ placeholder
- @file doctype entry
- Added a consistent comment header and reviewed any licensing comments

I understand the module review and CVS submission approval is staffed with Volunteers. I would like to volunteer to assist - how can I help?

Cheers,
Blaine

dave reid’s picture

Status: Needs review » Needs work

When creating a node of type nexfile_folder, I was able to input XSS in the description and use a parent folder that had XSS in it. Both executed on node display. Really other than that I don't have any other concerns. Just make sure you try and stick to saving raw input, filter out output. Seems like there's a lot of the former going on, when the focus should be the latter.

dave reid’s picture

Also, double check that all your files are actually GPLv2 licensed otherwise they're forbidden (ouch, strong word) from the CVS repository. A few of the included files are questionable (php_serializer.js - no license).

blainelang’s picture

Status: Needs work » Needs review
StatusFileSize
new165.79 KB

Thanks Dave,

Attached is an updated version 0.7 which addresses the issues you have noted (hopefully).
- Removed the dependency on the PHP_serializer javascript library
- Changed the logic to filter on display instead of on input and have tested trying to enter a typical XSS attach JS script tag. Display fields are now using filter_xss on view. Tested creating/editing/viewing folders via the Drupal UI as well as the native module interface.

The encoder.js file is released by the author with no restrictions other then to include authors website in the code file. The plugins.js file is a GPL release jquery plugin.

The Module admin interface is now complete.

blainelang’s picture

StatusFileSize
new165.93 KB

Attached is version 0.7.1 which addresses an install issue resulted from the new admin settings that were added. Also, the uninstall routine removes the additional variables that were added.

Once you install it (same as any module), go to the module admin settings and do a reset to initialize the module variables. The module will work fine with out error if you don't as well.

Given the size of this module, the plan was to release it under Beta for a wider peer review but continue to actively address any issues and needed refinements. This is not a dump and run.

I appreciate the process and effort required by the team but can you outline what the next steps are with getting this module reviewed and CVS access granted?

Thanks!

blainelang’s picture

StatusFileSize
new170.57 KB

Attached is version 0.7.5 which includes a number of changes that address comments that I've seen in other applications over the past couple weeks that should help facilitate this CVS application approval.

- Added use of drupal l() and url() functions
- Use of the drupal string functions
- Removed all camelCase variables
- Removed use of the <b> tab in favor of the <strong> tag
- Added use of the db_query_range function where I used the LIMIT clause
- Refactored code to lessen the code load in nexfile.module and not include all module php libraries
- Added README.txt
- Completed the module notification logic
- Other module related bugs and code cleanup

This code should now be considered ready for site use as there are no remaining features to be added for this initial release. I will of course address any identified code issues as result of the peer review and once complete bump the rev to 1.0.

Thanks!,
Blaine

kbahey’s picture

Hello CVS maintainers. Any status on this? There are new versions that the author says should address the raised issues.

dave reid’s picture

Status: Needs review » Fixed

All my previous concerns were addressed, so I don't see any reason why this shouldn't take the next step. Congratulations blainelang! You're now the proud new owner of a shiny, brand-new Drupal.org CVS account. Always use it responsibly and don't hesitate to ask if you have any questions about Drupal.org project management or CVS.

blainelang’s picture

Hehe, thanks very much Dave. I will take her for a spin but be sure to treat her well.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

avpaderno’s picture

Component: Miscellaneous » new project application
Issue summary: View changes
avpaderno’s picture

Status: Closed (fixed) » Fixed

I am giving credits to the users who participated in this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.