martinmicunda/employee-scheduling-api

View on GitHub

Showing 87 of 87 total issues

Function html has 1303 lines of code (exceeds 25 allowed). Consider refactoring.
Open

function html(model, token) {
    return `
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
Severity: Major
Found in lib/api/emails/lib/templates/activation.js - About 6 days to fix

    Function html has 1285 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

    function html(model, token) {
        return `
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    Severity: Major
    Found in lib/api/emails/lib/templates/passwod-reset.js - About 6 days to fix

      Function html has 1237 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

      function html(model) {
          return `
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      Severity: Major
      Found in lib/api/emails/lib/templates/message.js - About 6 days to fix

        File activation.js has 1319 lines of code (exceeds 250 allowed). Consider refactoring.
        Open

        /**
         * @author    Martin Micunda {@link http://martinmicunda.com}
         * @copyright Copyright (c) 2015, Martin Micunda
         * @license   GPL-3.0
         */
        Severity: Major
        Found in lib/api/emails/lib/templates/activation.js - About 3 days to fix

          File passwod-reset.js has 1304 lines of code (exceeds 250 allowed). Consider refactoring.
          Open

          /**
           * @author    Martin Micunda {@link http://martinmicunda.com}
           * @copyright Copyright (c) 2015, Martin Micunda
           * @license   GPL-3.0
           */
          Severity: Major
          Found in lib/api/emails/lib/templates/passwod-reset.js - About 3 days to fix

            File message.js has 1254 lines of code (exceeds 250 allowed). Consider refactoring.
            Open

            /**
             * @author    Martin Micunda {@link http://martinmicunda.com}
             * @copyright Copyright (c) 2015, Martin Micunda
             * @license   GPL-3.0
             */
            Severity: Major
            Found in lib/api/emails/lib/templates/message.js - About 3 days to fix

              Similar blocks of code found in 3 locations. Consider refactoring.
              Open

              async function update(id, doc) {
                  let cas = doc.cas;
                  // do not store CAS(version) and document ID as Couchbase already keep these values in metadata for each document
                  doc = db.removeMetadataFromDoc(doc);
                  doc.type = DOC_TYPE; // map-reduces
              Severity: Major
              Found in lib/api/partners/lib/dao.js and 2 other locations - About 2 days to fix
              lib/api/locations/lib/dao.js on lines 138..185
              lib/api/positions/lib/dao.js on lines 134..181

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 388.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 3 locations. Consider refactoring.
              Open

              async function update(id, doc) {
                  let cas = doc.cas;
                  // do not store CAS(version) and document ID as Couchbase already keep these values in metadata for each document
                  doc = db.removeMetadataFromDoc(doc);
                  doc.type = DOC_TYPE; // map-reduces
              Severity: Major
              Found in lib/api/positions/lib/dao.js and 2 other locations - About 2 days to fix
              lib/api/locations/lib/dao.js on lines 138..185
              lib/api/partners/lib/dao.js on lines 185..232

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 388.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 3 locations. Consider refactoring.
              Open

              async function update(id, doc) {
                  let cas = doc.cas;
                  // do not store CAS(version) and document ID as Couchbase already keep these values in metadata for each document
                  doc = db.removeMetadataFromDoc(doc);
                  doc.type = DOC_TYPE; // map-reduces
              Severity: Major
              Found in lib/api/locations/lib/dao.js and 2 other locations - About 2 days to fix
              lib/api/partners/lib/dao.js on lines 185..232
              lib/api/positions/lib/dao.js on lines 134..181

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 388.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 6 locations. Consider refactoring.
              Open

              const routes = [
                  {
                      method: 'GET',
                      path: '/:id',
                      validate: validator.findByID,
              Severity: Major
              Found in lib/api/partners/index.js and 5 other locations - About 1 day to fix
              lib/api/currencies/index.js on lines 18..61
              lib/api/languages/index.js on lines 18..61
              lib/api/locations/index.js on lines 18..61
              lib/api/positions/index.js on lines 18..61
              lib/api/settings/index.js on lines 18..61

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 322.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 6 locations. Consider refactoring.
              Open

              const routes = [
                  {
                      method: 'GET',
                      path: '/:id',
                      validate: validator.findByID,
              Severity: Major
              Found in lib/api/positions/index.js and 5 other locations - About 1 day to fix
              lib/api/currencies/index.js on lines 18..61
              lib/api/languages/index.js on lines 18..61
              lib/api/locations/index.js on lines 18..61
              lib/api/partners/index.js on lines 18..61
              lib/api/settings/index.js on lines 18..61

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 322.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 6 locations. Consider refactoring.
              Open

              const routes = [
                  {
                      method: 'GET',
                      path: '/:id',
                      validate: validator.findByID,
              Severity: Major
              Found in lib/api/locations/index.js and 5 other locations - About 1 day to fix
              lib/api/currencies/index.js on lines 18..61
              lib/api/languages/index.js on lines 18..61
              lib/api/partners/index.js on lines 18..61
              lib/api/positions/index.js on lines 18..61
              lib/api/settings/index.js on lines 18..61

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 322.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 6 locations. Consider refactoring.
              Open

              const routes = [
                  {
                      method: 'GET',
                      path: '/:id',
                      validate: validator.findByID,
              Severity: Major
              Found in lib/api/currencies/index.js and 5 other locations - About 1 day to fix
              lib/api/languages/index.js on lines 18..61
              lib/api/locations/index.js on lines 18..61
              lib/api/partners/index.js on lines 18..61
              lib/api/positions/index.js on lines 18..61
              lib/api/settings/index.js on lines 18..61

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 322.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 6 locations. Consider refactoring.
              Open

              const routes = [
                  {
                      method: 'GET',
                      path: '/:id',
                      validate: validator.findByID,
              Severity: Major
              Found in lib/api/languages/index.js and 5 other locations - About 1 day to fix
              lib/api/currencies/index.js on lines 18..61
              lib/api/locations/index.js on lines 18..61
              lib/api/partners/index.js on lines 18..61
              lib/api/positions/index.js on lines 18..61
              lib/api/settings/index.js on lines 18..61

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 322.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 6 locations. Consider refactoring.
              Open

              const routes = [
                  {
                      method: 'GET',
                      path: '/:id',
                      validate: validator.findByID,
              Severity: Major
              Found in lib/api/settings/index.js and 5 other locations - About 1 day to fix
              lib/api/currencies/index.js on lines 18..61
              lib/api/languages/index.js on lines 18..61
              lib/api/locations/index.js on lines 18..61
              lib/api/partners/index.js on lines 18..61
              lib/api/positions/index.js on lines 18..61

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 322.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 2 locations. Consider refactoring.
              Open

              async function sendPasswordResetEmail(doc, token) {
                  const options = {
                      from: config.email.support,
                      to: doc.email,
                      subject: `${config.email.projectName} ${i18n.__('EMAIL_PASSWORD_RESET')}`,
              Severity: Major
              Found in lib/api/emails/lib/service.js and 1 other location - About 7 hrs to fix
              lib/api/emails/lib/service.js on lines 24..40

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 185.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 2 locations. Consider refactoring.
              Open

              async function sendAccountActivationEmail(doc, token) {
                  const options = {
                      from: config.email.support,
                      to: doc.email,
                      subject: `${config.email.projectName} ${i18n.__('EMAIL_ACCOUNT_ACTIVATION')}`,
              Severity: Major
              Found in lib/api/emails/lib/service.js and 1 other location - About 7 hrs to fix
              lib/api/emails/lib/service.js on lines 42..58

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 185.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 4 locations. Consider refactoring.
              Open

              const locationValidator = {
                  findByID: {
                      params: {
                          id: locationSchema.id
                      },
              Severity: Major
              Found in lib/api/locations/lib/validator.js and 3 other locations - About 7 hrs to fix
              lib/api/currencies/lib/validator.js on lines 18..51
              lib/api/languages/lib/validator.js on lines 18..51
              lib/api/positions/lib/validator.js on lines 18..51

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 175.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 4 locations. Consider refactoring.
              Open

              const positionValidator = {
                  findByID: {
                      params: {
                          id: positionSchema.id
                      },
              Severity: Major
              Found in lib/api/positions/lib/validator.js and 3 other locations - About 7 hrs to fix
              lib/api/currencies/lib/validator.js on lines 18..51
              lib/api/languages/lib/validator.js on lines 18..51
              lib/api/locations/lib/validator.js on lines 18..51

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 175.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Similar blocks of code found in 4 locations. Consider refactoring.
              Open

              const currencyValidator = {
                  findByID: {
                      params: {
                          id: currencySchema.id
                      },
              Severity: Major
              Found in lib/api/currencies/lib/validator.js and 3 other locations - About 7 hrs to fix
              lib/api/languages/lib/validator.js on lines 18..51
              lib/api/locations/lib/validator.js on lines 18..51
              lib/api/positions/lib/validator.js on lines 18..51

              Duplicated Code

              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

              Tuning

              This issue has a mass of 175.

              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

              Refactorings

              Further Reading

              Severity
              Category
              Status
              Source
              Language