cd sites/all/themes
git clone --branch 7.x-1.x git.drupal.org:sandbox/adam_bear/2324243.git cellular

* Requires the library at http://github.com/ablank/cellular.library

cd sites/all/libraries
git clone --branch master https://github.com/ablank/cellular.library.git cellular

Hi all,

The Cellular base theme for Drupal 7 simplifies front-end development of Drupal websites by using the theme layer to control functionality that doesn't require interaction with the database.It handles things like providing lightweight social media links, updating jQuery & jQueryUI (so we can both update jQuery AND admin Drupal), a custom front-end framework, and lots of other fun stuff useful to themers that Drupal makes a pain in the a$$ by default...

Bits of code were borrowed from AdaptiveTheme, Omega, and Tao, but this is original work and isn't similar to any theme I've seen. The project page is @ http://www.drupal.org/sandbox/adam_bear/2324243

All the best,
Adam

Comments

adam_bear’s picture

Issue summary: View changes
PA robot’s picture

Status: Needs review » Needs work

Timeout when invoking pareview.sh for http://git.drupal.org/sandbox/adam_bear/2324243.git at http://pareview.sh/pareview/httpgitdrupalorgsandboxadam_bear2324243git

Do you have any third-party files committed? 3rd party code is not generally allowed on Drupal.org and should be deleted. This policy is described in the getting involved handbook. It also appears in the terms and conditions you agreed to when you signed up for Git access.

We are currently quite busy with all the project applications and we prefer projects with a review bonus. Please help reviewing and put yourself on the high priority list, then we will take a look at your project right away :-)

Also, you should get your friends, colleagues or other community members involved to review this application. Let them go through the review checklist and post a comment that sets this issue to "needs work" (they found some problems with the project) or "reviewed & tested by the community" (they found no major flaws).

I'm a robot and this is an automated message from Project Applications Scraper.

adam_bear’s picture

Status: Needs work » Needs review
adam_bear’s picture

Issue summary: View changes
adam_bear’s picture

Issue summary: View changes
adam_bear’s picture

Issue summary: View changes
saniyat’s picture

Status: Needs review » Needs work

A lot of Drupal codding standard errors and warning found.
link: http://pareview.sh/pareview/httpgitdrupalorgsandboxadambear2324243git
Please fixed the standard problems first.

adam_bear’s picture

Status: Needs work » Needs review

Sharded functions from preprocess with various refinements & fixed comments.
All remaining errors/warnings on pareview are a result of minified images & scripts, sass not outputting multiple selectors on a single line (can't be helped!), or false positive.

joachim’s picture

Status: Needs review » Needs work
/**
 * Get path to current theme.
 */
function cellular_theme_path(&$theme_key = NULL) {
  $t_theme = isset($theme_key) ?
    $theme_key : $GLOBALS['theme'];
  $theme_path = drupal_get_path('theme', $t_theme);

  return $theme_path;
}

Can't you use https://api.drupal.org/api/drupal/includes!theme.inc/function/path_to_th... instead?

Also, this is polluting the global set by that function:

$GLOBALS['theme_path'] = cellular_theme_path();
$GLOBALS['cellular_lib'] = $GLOBALS['base_url'] . '/sites/all/libraries/cellular';

Use libraries module instead.

> * Integrated social media follow & share links with custom icons

This sort of functionality really belongs in a module rather than a theme -- and there are lots of modules that provide this already.

/**
 * Merge arrays & concat ' ' separated values to string.
 */
function cellular_merge(&$arr) {
  $output = '';
  foreach ($arr as $a) {
    $output .= (is_array($a)) ?
      implode_r(' ', $a) : " " . $a;
  }

  return $output;
}

use array_merge_recursive()!

Though really, if your classes array has both class strings and arrays of classes in it, then your code is messy and needs cleaning up!

I'll stop there as this project is huge...

adam_bear’s picture

Thank you Joachim- excellent points! To address the issues you've mentioned:

> Can't you use path_to_theme()
er... yeah...

>this is polluting the global set
$GLOBALS lib has been refactored as constant.

> Use libraries module instead.

Library functions are specific to modules, afaik.

> if your classes array has both class strings and arrays of classes in it, then your code is messy and needs cleaning up!

Does Drupal expect an array or a string? cellular_merge() addressed that as a matter of convenience, though it was only used twice (once to merge arrays, once to concat string) and has been factored out.

>> * Integrated social media follow & share links with custom icons
>This sort of functionality really belongs in a module rather than a theme -- and there are lots of modules that provide this already.

Does it? These links are basically static content, and therefore candidate for either module or theme layer imo.

> ...this project is huge...

Yes, it is.

Thanks for your insight!

adam_bear’s picture

Status: Needs work » Needs review
Mahima Prachandia’s picture

Hi Adam Blankenship ,
Thanks for your contribution in Drupal Community.

Here is the link for automated review by pareview.sh-
http://pareview.sh/pareview/httpgitdrupalorgsandboxadambear2324243git

There are still many issues found in the module. Please fix them.

adam_bear’s picture

Reformatted, branching development.

Poieo’s picture

Status: Needs review » Needs work
StatusFileSize
new9.89 KB
new10.59 KB

Hey @adam_bear,

Here is a manual review with some more comments at the bottom:

Manual Review

Individual user account
Yes: Follows the guidelines for individual user accounts.
No duplication
Not sure - See comment #1 below: Does not cause module duplication and fragmentation.
Master Branch
Yes: Follows the guidelines for master branch.
Licensing
Yes: Follows the licensing requirements
3rd party code
Yes: Follows the guidelines for 3rd party code.
README.txt/README.md
Yes: Follows the guidelines for in-project documentation and the README Template.
Code long/complex enough for review
Yes: Follows the guidelines for project length and complexity.
Secure code
Unsure. Not an expert in this area. If "no", list security issues identified.

Comments:

1. Perhaps you could explain the inclusion of your own jQuery update feature? The jQuery Update module allows for different versions for the front end vs. the backend. What does you system provide that isn't duplicating this module? Or, could perhaps be provided as a patch to this module?
2. I'm receive the following console error:

"NetworkError: 404 Not Found - http://mysite.com/sites/mysite.com/themes/cellular/subcellular/css/print.css?nc1v59"

3. It looks like your pager could use some styling:
Pager
4. I would check your dropdowns on your main menu. It looks like the padding/margins and borders aren't consistent:
Menu

Hope this helps!

adam_bear’s picture

@Poieo - THANK YOU =)

Re: jQuery Update
I've run into quite a few issues using jquery_update (https://www.drupal.org/node/1869988)... This is my solution that:

  • Doesn't break Views.
  • Updates from cdn with local fallbacks if you want.
    • jquerycdn provides cdn but no fallback.
    • jquery_update provides local source but no cdn.

  • Has more versions to choose from.
  • Loads jQuery.migrate for jquery > 1.9 to prevent legacy js from breaking.
  • Provides jQuery.ui themes (optionally cdn driven).
  • Updates jQuery plugins used by core to latest stable version (jquery.cookie, jquery.form, jquery.once, ).

Also, I want control over the entire front end to be controlled by the theme if possible- it just makes sense that it should work that way.

EDIT: There is some duplication, but preventing conflicts with admin modules is the primary reason this feature is included.

adam_bear’s picture

Status: Needs work » Needs review

Fixed the css janks.
Note that the pager won't display correctly unless system.theme.css is removed due to selector specificity.
Appearance > Settings > Style > Remove Drupal CSS > anything but leave CSS intact

PA robot’s picture

Status: Needs review » Closed (duplicate)
Multiple Applications
It appears that there have been multiple project applications opened under your username:

Project 1: https://www.drupal.org/node/2372249

Project 2: https://www.drupal.org/node/2325531

As successful completion of the project application process results in the applicant being granted the 'Create Full Projects' permission, there is no need to take multiple applications through the process. Once the first application has been successfully approved, then the applicant can promote other projects without review. Because of this, posting multiple applications is not necessary, and results in additional workload for reviewers ... which in turn results in longer wait times for everyone in the queue. With this in mind, your secondary applications have been marked as 'closed(duplicate)', with only one application left open (chosen at random).

If you prefer that we proceed through this review process with a different application than the one which was left open, then feel free to close the 'open' application as a duplicate, and re-open one of the project applications which had been closed.

I'm a robot and this is an automated message from Project Applications Scraper.

adam_bear’s picture

Status: Closed (duplicate) » Needs review

Drupal theming is dead. Long live Drupal theming.

PA robot’s picture

Status: Needs review » Closed (duplicate)
Multiple Applications
It appears that there have been multiple project applications opened under your username:

Project 1: https://www.drupal.org/node/2372249

Project 2: https://www.drupal.org/node/2325531

As successful completion of the project application process results in the applicant being granted the 'Create Full Projects' permission, there is no need to take multiple applications through the process. Once the first application has been successfully approved, then the applicant can promote other projects without review. Because of this, posting multiple applications is not necessary, and results in additional workload for reviewers ... which in turn results in longer wait times for everyone in the queue. With this in mind, your secondary applications have been marked as 'closed(duplicate)', with only one application left open (chosen at random).

If you prefer that we proceed through this review process with a different application than the one which was left open, then feel free to close the 'open' application as a duplicate, and re-open one of the project applications which had been closed.

I'm a robot and this is an automated message from Project Applications Scraper.

adam_bear’s picture

Status: Closed (duplicate) » Needs review
dimple_chandra’s picture

StatusFileSize
new112.51 KB

Hi adam_bear,

The content on the site is sticking on left and right side, so apply padding and the search image is slightly cutting from left and top side.

adam_bear’s picture

Status: Needs review » Closed (works as designed)