diff --git a/Scripts/Functions/cli_printCopyrightInfo.sh b/Scripts/Functions/cli_printCopyrightInfo.sh index 14b6ee1..de2850c 100755 --- a/Scripts/Functions/cli_printCopyrightInfo.sh +++ b/Scripts/Functions/cli_printCopyrightInfo.sh @@ -1,18 +1,17 @@ #!/bin/bash # -# cli_printCopyrightInfo.sh -- This function outputs the copyright -# information of content produced by the centos-art command-line -# interface. +# cli_printCopyrightInfo.sh -- This function standardizes the +# copyright information used by centos-art.sh script. # -# As I understand, the copyright exists to make people create more. -# The copyright gives creators the legal power over their creations -# and so the freedom to distribute them under the ethical terms the -# creator considers better. -# -# At this moment I don't feel very sure about this legal affairs, but -# need to decide what copyright information the centos-art will -# output. So, I'm taking the wiki (wiki.centos.org) copyright -# information as reference. +# As far as I understand, the copyright exists to make people create +# more. The copyright gives creators the legal power over their +# creations and so the freedom to distribute them under the ethical +# terms the creator considers better. At this moment I don't feel +# very confident about this legal affairs and their legal +# implications, but I need to decide what copyright information the +# centos-art.sh script will print out. So, in that sake, I'll assume +# the same copyright information used by The CentOS Wiki +# (http://wiki.centos.org/) as reference. # # Copyright (C) 2009, 2010, 2011 The CentOS Project # @@ -36,75 +35,126 @@ function cli_printCopyrightInfo { - case "$1" in - - '--license' ) - - # Output default license name used by all image-based - # creations inside CentOS Artwork Repository. - echo "Creative Common Attribution-ShareAlike 3.0" - ;; - - '--license-url' ) - - # Ouput default license url used by all image-based - # creations inside the CentOS Artwork Repository. - cli_printUrl --cc-sharealike - ;; - - '--copyright-year-first' ) - - # The former year when I (as part of The CentOS Project) - # started to consolidate The CentOS Project Corporate - # Visual Identity through the CentOS Artwork Repository. - echo '2009' - ;; - - '--copyright-year' | '--copyright-year-last' ) - - # The last year when The CentOS Project stopped working in - # its Corporate Visual Identity through the CentOS Artwork - # Repository. That is something that I hope does never - # happen, so assume the current year as last working year. - date +%Y - ;; - - '--copyright-year-range' ) - - local FIRST_YEAR=$(cli_printCopyrightInfo '--copyright-year-first') - local LAST_YEAR=$(cli_printCopyrightInfo '--copyright-year-last') - echo "${FIRST_YEAR}-${LAST_YEAR}" - ;; - - '--copyright-year-list' ) - - local FIRST_YEAR=$(cli_printCopyrightInfo '--copyright-year-first') - local LAST_YEAR=$(cli_printCopyrightInfo '--copyright-year-last') - - # Define full copyright year string based on first and - # last year. - local FULL_YEAR=$(\ - while [[ ${FIRST_YEAR} -le ${LAST_YEAR} ]];do - echo -n "${FIRST_YEAR}, " - FIRST_YEAR=$(($FIRST_YEAR + 1)) - done) - - # Prepare full copyright year string and print it out. - echo "${FULL_YEAR}" | sed 's!, *$!!' - ;; + # Define short options. + local ARGSL='' + + # Define long options. + local ARGSL='license,license-url,coyright,copyright-year,copyright-year-last,copyright-year-first,copyright-year-list,copyright-year-range,copyright-holder' + + # Initialize arguments with an empty value and set it as local + # variable to this function scope. + local ARGUMENTS='' + + # Redefine ARGUMENTS variable using current positional parameters. + cli_doParseArgumentsReDef "$@" + + # Redefine ARGUMENTS variable using getopt output. + cli_doParseArguments + + # Redefine positional parameters using ARGUMENTS variable. + eval set -- "$ARGUMENTS" + + # Look for options passed through positional parameters. + while true; do + + case "$1" in + + --license ) + + # Print out the name of the license used by to release + # the content produced by centos-art.sh script, inside + # CentOS Artwork Repository. + echo "Creative Common Attribution-ShareAlike 3.0" + shift 2 + break + ;; + + --license-url ) + + # Print out the url of the license used by to release + # the content produced by centos-art.sh script, inside + # CentOS Artwork Repository. + cli_printUrl --cc-sharealike + shift 2 + break + ;; + + --copyright-year-first ) + + # The former year when I (as part of The CentOS + # Project) started to consolidate The CentOS Project + # Corporate Visual Identity through the CentOS Artwork + # Repository. + echo '2009' + shift 2 + break + ;; + + --copyright-year|--copyright-year-last ) + + # The last year when The CentOS Project stopped + # working in its Corporate Visual Identity through the + # CentOS Artwork Repository. That is something that I + # hope does never happen, so assume the current year + # as last working year. + date +%Y + shift 2 + break + ;; + + --copyright-year-range ) + + local FIRST_YEAR=$(cli_printCopyrightInfo '--copyright-year-first') + local LAST_YEAR=$(cli_printCopyrightInfo '--copyright-year-last') + echo "${FIRST_YEAR}-${LAST_YEAR}" + shift 2 + break + ;; + + --copyright-year-list ) + + local FIRST_YEAR=$(cli_printCopyrightInfo '--copyright-year-first') + local LAST_YEAR=$(cli_printCopyrightInfo '--copyright-year-last') + + # Define full copyright year string based on first and + # last year. + local FULL_YEAR=$(\ + while [[ ${FIRST_YEAR} -le ${LAST_YEAR} ]];do + echo -n "${FIRST_YEAR}, " + FIRST_YEAR=$(($FIRST_YEAR + 1)) + done) + + # Prepare full copyright year string and print it out. + echo "${FULL_YEAR}" | sed 's!, *$!!' + shift 2 + break + ;; - '--copyright-holder' ) + --copyright-holder ) - # Output default copyright holder. - echo "The CentOS Project" - ;; - - '--copyright' | * ) - local YEAR=$(cli_printCopyrightInfo '--copyright-year') - local HOLDER=$(cli_printCopyrightInfo '--copyright-holder') - echo "Copyright © $YEAR $HOLDER" - ;; - - esac + # Output default copyright holder. + echo "The CentOS Project" + shift 2 + break + ;; + + --copyright ) + + local YEAR=$(cli_printCopyrightInfo '--copyright-year-last') + local HOLDER=$(cli_printCopyrightInfo '--copyright-holder') + echo "Copyright © $YEAR $HOLDER" + shift 2 + break + ;; + + -- ) + cli_printMessage "`gettext "At least one option is required."`" --as-error-line + shift 1 + break + ;; + + esac + + done }