!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/node-red/node_modules/jsdoc/plugins/   drwxr-xr-x
Free 13.28 GB of 57.97 GB (22.91%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     summarize.js (2.17 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/**
 * This plugin creates a summary tag, if missing, from the first sentence in the description.
 *
 * @module plugins/summarize
 */
exports.handlers = {
    /**
     * Autogenerate summaries, if missing, from the description, if present.
     */
    newDoclet({doclet}) {
        let endTag;
        let tags;
        let stack;

        // If the summary is missing, grab the first sentence from the description
        // and use that.
        if (doclet && !doclet.summary && doclet.description) {
            // The summary may end with `.$`, `. `, or `.<` (a period followed by an HTML tag).
            doclet.summary = doclet.description.split(/\.$|\.\s|\.</)[0];
            // Append `.` as it was removed in both cases, or is possibly missing.
            doclet.summary += '.';

            // This is an excerpt of something that is possibly HTML.
            // Balance it using a stack. Assume it was initially balanced.
            tags = doclet.summary.match(/<[^>]+>/g) || [];
            stack = [];

            tags.forEach(tag => {
                const idx = tag.indexOf('/');

                if (idx === -1) {
                    // start tag -- push onto the stack
                    stack.push(tag);
                } else if (idx === 1) {
                    // end tag -- pop off of the stack
                    stack.pop();
                }

                // otherwise, it's a self-closing tag; don't modify the stack
            });

            // stack should now contain only the start tags that lack end tags,
            // with the most deeply nested start tag at the top
            while (stack.length > 0) {
                // pop the unmatched tag off the stack
                endTag = stack.pop();
                // get just the tag name
                endTag = endTag.substring(1, endTag.search(/[ >]/));
                // append the end tag
                doclet.summary += `</${endTag}>`;
            }

            // and, finally, if the summary starts and ends with a <p> tag, remove it; let the
            // template decide whether to wrap the summary in a <p> tag
            doclet.summary = doclet.summary.replace(/^<p>(.*)<\/p>$/i, '$1');
        }
    }
};

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.005 ]--