From 95dc670c17a81b34a10af4df7eb7a596fd01510b Mon Sep 17 00:00:00 2001 From: SahilDhillon21 Date: Wed, 13 Nov 2024 15:51:19 +0530 Subject: [PATCH] Apply fixes from pre-commit hooks --- .pre-commit-config.yaml | 2 +- README.md | 2 +- company/static/company/js/hunt_controller.js | 2 +- website/documents/BltAboutUs.md | 2 +- website/documents/BltBLTV.md | 2 +- website/documents/BltChangePassword.md | 2 +- website/documents/BltCommunityMembers.md | 2 +- website/documents/BltCompanyDashboard.md | 2 +- website/documents/BltCompanyListingPage.md | 2 +- website/documents/BltCompanyScoreboard.md | 2 +- website/documents/BltDetails.md | 2 +- website/documents/BltDetailsFromOwasp.md | 2 +- website/documents/BltGlobalLeaderboard.md | 2 +- website/documents/BltInvite.md | 2 +- website/documents/BltLoginPage.md | 2 +- website/documents/BltSignUpPage.md | 2 +- website/documents/BltStartaBughunt.md | 2 +- website/documents/BltStats.md | 2 +- website/documents/BltTerms.md | 2 +- website/documents/BltTrademarksSearch.md | 2 +- website/documents/BltTrademarksSearchResults.md | 2 +- website/documents/BltUserProfile.md | 2 +- website/documents/BltWeeklyActivityOfContributor.md | 2 +- website/management/commands/update_projects.py | 10 ++++++---- ...mentation_url_project_issue_tracker_url_and_more.py | 1 - website/static/img/tomato-svgrepo-com.svg | 2 +- website/static/js/jquery.sparkline.min.js | 2 +- 27 files changed, 31 insertions(+), 30 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 1e0dc1bb4..f02a85094 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -32,4 +32,4 @@ repos: - id: djlint args: - --reformat - - --lint \ No newline at end of file + - --lint diff --git a/README.md b/README.md index d7b4e9f11..5e8522bab 100644 --- a/README.md +++ b/README.md @@ -7,4 +7,4 @@ Views ------ -Everything is on our homepage \ No newline at end of file +Everything is on our homepage diff --git a/company/static/company/js/hunt_controller.js b/company/static/company/js/hunt_controller.js index 91efc4c78..86091b09c 100644 --- a/company/static/company/js/hunt_controller.js +++ b/company/static/company/js/hunt_controller.js @@ -349,4 +349,4 @@ function getCookie(name) { } } return cookieValue; -} \ No newline at end of file +} diff --git a/website/documents/BltAboutUs.md b/website/documents/BltAboutUs.md index 1fadf3cf2..bfe5152dd 100644 --- a/website/documents/BltAboutUs.md +++ b/website/documents/BltAboutUs.md @@ -73,4 +73,4 @@ Organizations We want everyone to love your website. You want to keep your customers happy by giving them a consistent bug-free user experience. BLT offers monthly Bug Bounties through 4 different subscription plans to help you achieve this. -BLT is 100% free to use, Open Source and a non-commercial, not for profit initiative. \ No newline at end of file +BLT is 100% free to use, Open Source and a non-commercial, not for profit initiative. diff --git a/website/documents/BltBLTV.md b/website/documents/BltBLTV.md index 9e9b4c3ef..b215ad674 100644 --- a/website/documents/BltBLTV.md +++ b/website/documents/BltBLTV.md @@ -40,4 +40,4 @@ The component is designed with several features to enhance performance and user - **Optimized Loading**: The page is optimized to load quickly, allowing users to browse and play videos without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices to ensure a consistent and accessible experience across desktops, tablets, and mobile devices. - **Lazy Loading**: Video thumbnails and other media elements are loaded as needed, reducing initial load times and improving overall performance. -- **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display video tutorials quickly, minimizing wait times and enhancing user satisfaction. \ No newline at end of file +- **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display video tutorials quickly, minimizing wait times and enhancing user satisfaction. diff --git a/website/documents/BltChangePassword.md b/website/documents/BltChangePassword.md index 34939e1a9..76cadb3f1 100644 --- a/website/documents/BltChangePassword.md +++ b/website/documents/BltChangePassword.md @@ -41,4 +41,4 @@ The layout is simple and focused, ensuring users can easily update their passwor - **Minimal Distractions**: The focused design ensures users can complete the task quickly without unnecessary distractions or elements. #### URL Mention -This detailed information pertains to the "Change Password" page of the BugLog tool, accessible at: [https://blt.owasp.org/accounts/password/change/](https://blt.owasp.org/accounts/password/change/). \ No newline at end of file +This detailed information pertains to the "Change Password" page of the BugLog tool, accessible at: [https://blt.owasp.org/accounts/password/change/](https://blt.owasp.org/accounts/password/change/). diff --git a/website/documents/BltCommunityMembers.md b/website/documents/BltCommunityMembers.md index 113961e80..5eb83a797 100644 --- a/website/documents/BltCommunityMembers.md +++ b/website/documents/BltCommunityMembers.md @@ -39,4 +39,4 @@ The component is designed with several features to enhance performance and user - **Optimized Loading**: The page is optimized to load quickly, allowing users to browse member profiles without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices to ensure a consistent and accessible experience across desktops, tablets, and mobile devices. - **Lazy Loading**: Member photos and other media elements are loaded as needed, reducing initial load times and improving overall performance. -- **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display member profiles quickly, minimizing wait times and enhancing user satisfaction. \ No newline at end of file +- **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display member profiles quickly, minimizing wait times and enhancing user satisfaction. diff --git a/website/documents/BltCompanyDashboard.md b/website/documents/BltCompanyDashboard.md index 05f63e499..f0e1ec77a 100644 --- a/website/documents/BltCompanyDashboard.md +++ b/website/documents/BltCompanyDashboard.md @@ -42,4 +42,4 @@ The dashboard is designed with several features to enhance performance and user - **Optimized Loading**: The page is optimized to load quickly, with asynchronous loading of non-critical elements to ensure that users can start interacting with the content without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices, ensuring a consistent and accessible experience across desktops, tablets, and mobile devices. - **Lazy Loading**: Bug report items and other media elements are loaded as needed, reducing initial load times and improving overall performance. -- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display bug reports quickly, minimizing wait times and enhancing user satisfaction. \ No newline at end of file +- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display bug reports quickly, minimizing wait times and enhancing user satisfaction. diff --git a/website/documents/BltCompanyListingPage.md b/website/documents/BltCompanyListingPage.md index ddfa7e32f..f64de5e17 100644 --- a/website/documents/BltCompanyListingPage.md +++ b/website/documents/BltCompanyListingPage.md @@ -39,4 +39,4 @@ The page is designed with several features to enhance performance and user exper - **Optimized Loading**: The page is optimized to load quickly, with asynchronous loading of non-critical elements to ensure that users can start interacting with the content without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices, ensuring a consistent and accessible experience across desktops, tablets, and mobile devices. - **Lazy Loading**: Company logos and other media elements are loaded as needed, reducing initial load times and improving overall performance. -- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display company details quickly, minimizing wait times and enhancing user satisfaction. \ No newline at end of file +- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display company details quickly, minimizing wait times and enhancing user satisfaction. diff --git a/website/documents/BltCompanyScoreboard.md b/website/documents/BltCompanyScoreboard.md index adcd88d51..ad1ceefcc 100644 --- a/website/documents/BltCompanyScoreboard.md +++ b/website/documents/BltCompanyScoreboard.md @@ -42,4 +42,4 @@ The scoreboard is designed with several features to enhance performance and user - **Optimized Loading**: The page is optimized to load quickly, with asynchronous loading of non-critical elements to ensure that users can start interacting with the content without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices, ensuring a consistent and accessible experience across desktops, tablets, and mobile devices. - **Lazy Loading**: Company logos and other media elements are loaded as needed, reducing initial load times and improving overall performance. -- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display company metrics quickly, minimizing wait times and enhancing user satisfaction. \ No newline at end of file +- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display company metrics quickly, minimizing wait times and enhancing user satisfaction. diff --git a/website/documents/BltDetails.md b/website/documents/BltDetails.md index e38a47eaa..6b05d258f 100644 --- a/website/documents/BltDetails.md +++ b/website/documents/BltDetails.md @@ -25,4 +25,4 @@ Anyone interested in contributing to the OWASP BLT project can: - **Participate in Bug Hunts**: Join company-sponsored bug hunts to earn rewards. - **Contribute to Development**: Follow the contribution guidelines available on the OWASP website to get started with development and enhancement of BLT. -BLT means Bug Logging Tool project from OWASP foundation . \ No newline at end of file +BLT means Bug Logging Tool project from OWASP foundation . diff --git a/website/documents/BltDetailsFromOwasp.md b/website/documents/BltDetailsFromOwasp.md index fcd2e652d..8bd0c5f5d 100644 --- a/website/documents/BltDetailsFromOwasp.md +++ b/website/documents/BltDetailsFromOwasp.md @@ -429,4 +429,4 @@ Corporate Supporters G@ surerowr Bloomberg’ Fa CUARDSQUARE BIONIC -4:SailPoint root \ No newline at end of file +4:SailPoint root diff --git a/website/documents/BltGlobalLeaderboard.md b/website/documents/BltGlobalLeaderboard.md index 1a79a3438..c80d646da 100644 --- a/website/documents/BltGlobalLeaderboard.md +++ b/website/documents/BltGlobalLeaderboard.md @@ -40,4 +40,4 @@ The leaderboard is designed with several features to enhance performance and use - **Optimized Loading**: The page is optimized to load quickly, with asynchronous loading of non-critical elements to ensure that users can start interacting with the content without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices, ensuring a consistent and accessible experience across desktops, tablets, and mobile devices. - **Lazy Loading**: User avatars and other media elements are loaded as needed, reducing initial load times and improving overall performance. -- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display user rankings quickly, minimizing wait times and enhancing user satisfaction. \ No newline at end of file +- **Efficient Data Retrieval**: The page uses efficient data retrieval techniques to fetch and display user rankings quickly, minimizing wait times and enhancing user satisfaction. diff --git a/website/documents/BltInvite.md b/website/documents/BltInvite.md index 8ab2048be..b1addf4bb 100644 --- a/website/documents/BltInvite.md +++ b/website/documents/BltInvite.md @@ -34,4 +34,4 @@ Users interact with this component by entering an email address in the provided ### Detailed Information for Chatbot To ensure the chatbot can assist users effectively, include details such as the URL of the invite page (https://blt.owasp.org/invite/) and descriptions of the error messages users might encounter. The chatbot should be able to guide users through the process of entering an email address and clicking the "Invite" button, as well as troubleshooting common issues like invalid email formats or server errors. -By understanding these detailed aspects of the invite page UI component, the chatbot can provide comprehensive assistance, ensuring users can easily invite others to the BugLog tool application. \ No newline at end of file +By understanding these detailed aspects of the invite page UI component, the chatbot can provide comprehensive assistance, ensuring users can easily invite others to the BugLog tool application. diff --git a/website/documents/BltLoginPage.md b/website/documents/BltLoginPage.md index 91b487ac1..4caa13bdd 100644 --- a/website/documents/BltLoginPage.md +++ b/website/documents/BltLoginPage.md @@ -44,4 +44,4 @@ The Login Page has robust error handling mechanisms to ensure that users provide Several features of the Login Page enhance performance and user experience: - **Optimized Loading**: The page is designed to load quickly, ensuring that users can start entering their credentials without waiting for all elements to load. - **Responsive Design**: The form is fully responsive, adapting to different screen sizes and devices. This ensures that users can easily log in on desktops, tablets, and mobile devices. -- **Form Persistence**: If users accidentally navigate away from the page, their entered credentials are temporarily saved, preventing data loss and enhancing the user experience by reducing the need to re-enter information. \ No newline at end of file +- **Form Persistence**: If users accidentally navigate away from the page, their entered credentials are temporarily saved, preventing data loss and enhancing the user experience by reducing the need to re-enter information. diff --git a/website/documents/BltSignUpPage.md b/website/documents/BltSignUpPage.md index f17720d89..8687042ca 100644 --- a/website/documents/BltSignUpPage.md +++ b/website/documents/BltSignUpPage.md @@ -41,4 +41,4 @@ The Sign Up Page includes robust error handling mechanisms to ensure that users Several features of the Sign Up Page enhance performance and user experience: - **Optimized Loading**: The page is designed to load quickly, allowing users to start entering their information without waiting for all elements to load. - **Responsive Design**: The form is fully responsive, adapting to different screen sizes and devices. This ensures that users can easily register on desktops, tablets, and mobile devices. -- **Form Persistence**: If users accidentally navigate away from the page, their entered information is temporarily saved, preventing data loss and enhancing the user experience by reducing the need to re-enter information. \ No newline at end of file +- **Form Persistence**: If users accidentally navigate away from the page, their entered information is temporarily saved, preventing data loss and enhancing the user experience by reducing the need to re-enter information. diff --git a/website/documents/BltStartaBughunt.md b/website/documents/BltStartaBughunt.md index ec6a3a7aa..d918d865b 100644 --- a/website/documents/BltStartaBughunt.md +++ b/website/documents/BltStartaBughunt.md @@ -43,4 +43,4 @@ Users interact with this component by filling out a form to start a new bug hunt - **Responsive Design**: The form is designed to be responsive, ensuring it works well on various devices, including desktops, tablets, and smartphones. - **Fast Load Time**: The component is optimized for fast load times, ensuring a smooth user experience even on slower internet connections. - **Client-Side Validation**: Basic form validation is performed on the client side, reducing the need for server round trips and enhancing performance. -- **Efficient File Upload**: The file upload mechanism is efficient, allowing users to drag and drop files or click to upload, with progress indicators for larger files. \ No newline at end of file +- **Efficient File Upload**: The file upload mechanism is efficient, allowing users to drag and drop files or click to upload, with progress indicators for larger files. diff --git a/website/documents/BltStats.md b/website/documents/BltStats.md index 8f5a9f6c1..27cbf8f35 100644 --- a/website/documents/BltStats.md +++ b/website/documents/BltStats.md @@ -43,4 +43,4 @@ The component is designed with several features to enhance performance and user - **Optimized Loading**: The page is optimized to load quickly, allowing users to access the statistics without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices to ensure a consistent and accessible experience across desktops, tablets, and mobile devices. - **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display statistics quickly, minimizing wait times and enhancing user satisfaction. -- **Scalability**: The component is designed to handle a large amount of statistical data, maintaining performance and user experience even with extensive content. \ No newline at end of file +- **Scalability**: The component is designed to handle a large amount of statistical data, maintaining performance and user experience even with extensive content. diff --git a/website/documents/BltTerms.md b/website/documents/BltTerms.md index 7665b8a9e..08e8a4fd2 100644 --- a/website/documents/BltTerms.md +++ b/website/documents/BltTerms.md @@ -91,4 +91,4 @@ You expressly understand and agree that BLT shall not be liable for any direct, The failure of BLT to exercise or enforce any right or provision of the Terms of Service shall not constitute a waiver of such right or provision. The Terms of Service constitutes the entire agreement between you and BLT and govern your use of the Service, superseding any prior agreements between you and BLT (including, but not limited to, any prior versions of the Terms of Service). You agree that these Terms of Service and Your use of the Service are governed under California law. -Questions about the Terms of Service should be sent to blt-support@owasp.org. \ No newline at end of file +Questions about the Terms of Service should be sent to blt-support@owasp.org. diff --git a/website/documents/BltTrademarksSearch.md b/website/documents/BltTrademarksSearch.md index 7f54cf57e..35da0ea57 100644 --- a/website/documents/BltTrademarksSearch.md +++ b/website/documents/BltTrademarksSearch.md @@ -36,4 +36,4 @@ The Trademarks Search component includes mechanisms to handle errors and provide The component is designed with several features to enhance performance and user experience: - **Optimized Loading**: The page is optimized to load quickly, allowing users to start searching without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices to ensure a consistent and accessible experience across desktops, tablets, and mobile devices. -- **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display trademark information quickly, minimizing wait times and enhancing user satisfaction. \ No newline at end of file +- **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display trademark information quickly, minimizing wait times and enhancing user satisfaction. diff --git a/website/documents/BltTrademarksSearchResults.md b/website/documents/BltTrademarksSearchResults.md index dbfdccca0..9f7c1eb4f 100644 --- a/website/documents/BltTrademarksSearchResults.md +++ b/website/documents/BltTrademarksSearchResults.md @@ -39,4 +39,4 @@ The component is designed with several features to enhance performance and user - **Optimized Loading**: The page is optimized to load quickly, allowing users to view search results without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices to ensure a consistent and accessible experience across desktops, tablets, and mobile devices. - **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display trademark information quickly, minimizing wait times and enhancing user satisfaction. -- **Pagination**: Ensures efficient navigation through multiple pages of results, maintaining performance and user experience even with large datasets. \ No newline at end of file +- **Pagination**: Ensures efficient navigation through multiple pages of results, maintaining performance and user experience even with large datasets. diff --git a/website/documents/BltUserProfile.md b/website/documents/BltUserProfile.md index cb165c8de..fc6820185 100644 --- a/website/documents/BltUserProfile.md +++ b/website/documents/BltUserProfile.md @@ -32,4 +32,4 @@ The layout is clean and straightforward, with a focus on usability. The profile 2. **Efficient Data Loading**: Data related to user activities and bug reports are fetched asynchronously to enhance page load performance. 3. **Responsive Design**: The profile page is designed to be responsive, ensuring it works well on both desktop and mobile devices. -Overall, the profile page on BLT is designed to provide users with a comprehensive and user-friendly interface for managing their bug reporting activities and personal information on the platform. The clean layout, accessibility features, and efficient performance optimizations contribute to a positive user experience. \ No newline at end of file +Overall, the profile page on BLT is designed to provide users with a comprehensive and user-friendly interface for managing their bug reporting activities and personal information on the platform. The clean layout, accessibility features, and efficient performance optimizations contribute to a positive user experience. diff --git a/website/documents/BltWeeklyActivityOfContributor.md b/website/documents/BltWeeklyActivityOfContributor.md index 252a08ed4..f8bae82a2 100644 --- a/website/documents/BltWeeklyActivityOfContributor.md +++ b/website/documents/BltWeeklyActivityOfContributor.md @@ -41,4 +41,4 @@ The component is designed with several features to enhance performance and user - **Optimized Loading**: The page is optimized to load quickly, allowing users to view their weekly activity summary without delay. - **Responsive Design**: The layout is fully responsive, adapting to different screen sizes and devices to ensure a consistent and accessible experience across desktops, tablets, and mobile devices. - **Efficient Data Retrieval**: Uses efficient data retrieval techniques to fetch and display activity data quickly, minimizing wait times and enhancing user satisfaction. -- **Scalability**: The table is designed to handle a large number of users and activity metrics, maintaining performance and user experience even with extensive data. \ No newline at end of file +- **Scalability**: The table is designed to handle a large number of users and activity metrics, maintaining performance and user experience even with extensive data. diff --git a/website/management/commands/update_projects.py b/website/management/commands/update_projects.py index 7fdcc84a4..168a516b0 100644 --- a/website/management/commands/update_projects.py +++ b/website/management/commands/update_projects.py @@ -1,6 +1,6 @@ import base64 + import requests -from django.conf import settings from django.core.management.base import BaseCommand from django.utils.dateparse import parse_datetime @@ -56,14 +56,16 @@ def handle(self, *args, **kwargs): response = requests.get(url, headers=headers) if response.status_code == 200: readme_data = response.json() - readme_content_encoded = readme_data.get("content", "") + readme_content_encoded = readme_data.get("content", "") # Decode the Base64 content try: readme_content = base64.b64decode(readme_content_encoded).decode("utf-8") - project.readme_content = readme_content + project.readme_content = readme_content except (base64.binascii.Error, UnicodeDecodeError) as e: - self.stdout.write(self.style.WARNING(f"Failed to decode README for {repo_name}: {e}")) + self.stdout.write( + self.style.WARNING(f"Failed to decode README for {repo_name}: {e}") + ) project.readme_content = "" else: self.stdout.write( diff --git a/website/migrations/0152_project_documentation_url_project_issue_tracker_url_and_more.py b/website/migrations/0152_project_documentation_url_project_issue_tracker_url_and_more.py index 717886673..18d1fac58 100644 --- a/website/migrations/0152_project_documentation_url_project_issue_tracker_url_and_more.py +++ b/website/migrations/0152_project_documentation_url_project_issue_tracker_url_and_more.py @@ -4,7 +4,6 @@ class Migration(migrations.Migration): - dependencies = [ ("website", "0151_remove_project_latest_release"), ] diff --git a/website/static/img/tomato-svgrepo-com.svg b/website/static/img/tomato-svgrepo-com.svg index 712519365..7a2bf8cc0 100644 --- a/website/static/img/tomato-svgrepo-com.svg +++ b/website/static/img/tomato-svgrepo-com.svg @@ -46,4 +46,4 @@ c10.539,30.543,29.891,59.756,55.963,84.479c1.451,1.375,3.307,2.058,5.159,2.058c1.986,0,3.969-0.784,5.444-2.339 c2.85-3.006,2.724-7.753-0.282-10.603C82.986,380.46,64.969,353.32,55.213,325.045z"/> - \ No newline at end of file + diff --git a/website/static/js/jquery.sparkline.min.js b/website/static/js/jquery.sparkline.min.js index fa616bf96..8dbfbc669 100644 --- a/website/static/js/jquery.sparkline.min.js +++ b/website/static/js/jquery.sparkline.min.js @@ -2,4 +2,4 @@ ** Licensed under the New BSD License - see above site for details */ (function(a,b,c){(function(a){typeof define=="function"&&define.amd?define(["jquery"],a):jQuery&&!jQuery.fn.sparkline&&a(jQuery)})(function(d){"use strict";var e={},f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L=0;f=function(){return{common:{type:"line",lineColor:"#00f",fillColor:"#cdf",defaultPixelsPerValue:3,width:"auto",height:"auto",composite:!1,tagValuesAttribute:"values",tagOptionsPrefix:"spark",enableTagOptions:!1,enableHighlight:!0,highlightLighten:1.4,tooltipSkipNull:!0,tooltipPrefix:"",tooltipSuffix:"",disableHiddenCheck:!1,numberFormatter:!1,numberDigitGroupCount:3,numberDigitGroupSep:",",numberDecimalMark:".",disableTooltips:!1,disableInteraction:!1},line:{spotColor:"#f80",highlightSpotColor:"#5f5",highlightLineColor:"#f22",spotRadius:1.5,minSpotColor:"#f80",maxSpotColor:"#f80",lineWidth:1,normalRangeMin:c,normalRangeMax:c,normalRangeColor:"#ccc",drawNormalOnTop:!1,chartRangeMin:c,chartRangeMax:c,chartRangeMinX:c,chartRangeMaxX:c,tooltipFormat:new h(' {{prefix}}{{y}}{{suffix}}')},bar:{barColor:"#3366cc",negBarColor:"#f44",stackedBarColor:["#3366cc","#dc3912","#ff9900","#109618","#66aa00","#dd4477","#0099c6","#990099"],zeroColor:c,nullColor:c,zeroAxis:!0,barWidth:4,barSpacing:1,chartRangeMax:c,chartRangeMin:c,chartRangeClip:!1,colorMap:c,tooltipFormat:new h(' {{prefix}}{{value}}{{suffix}}')},tristate:{barWidth:4,barSpacing:1,posBarColor:"#6f6",negBarColor:"#f44",zeroBarColor:"#999",colorMap:{},tooltipFormat:new h(' {{value:map}}'),tooltipValueLookups:{map:{"-1":"Loss",0:"Draw",1:"Win"}}},discrete:{lineHeight:"auto",thresholdColor:c,thresholdValue:0,chartRangeMax:c,chartRangeMin:c,chartRangeClip:!1,tooltipFormat:new h("{{prefix}}{{value}}{{suffix}}")},bullet:{targetColor:"#f33",targetWidth:3,performanceColor:"#33f",rangeColors:["#d3dafe","#a8b6ff","#7f94ff"],base:c,tooltipFormat:new h("{{fieldkey:fields}} - {{value}}"),tooltipValueLookups:{fields:{r:"Range",p:"Performance",t:"Target"}}},pie:{offset:0,sliceColors:["#3366cc","#dc3912","#ff9900","#109618","#66aa00","#dd4477","#0099c6","#990099"],borderWidth:0,borderColor:"#000",tooltipFormat:new h(' {{value}} ({{percent.1}}%)')},box:{raw:!1,boxLineColor:"#000",boxFillColor:"#cdf",whiskerColor:"#000",outlierLineColor:"#333",outlierFillColor:"#fff",medianColor:"#f00",showOutliers:!0,outlierIQR:1.5,spotRadius:1.5,target:c,targetColor:"#4a2",chartRangeMax:c,chartRangeMin:c,tooltipFormat:new h("{{field:fields}}: {{value}}"),tooltipFormatFieldlistKey:"field",tooltipValueLookups:{fields:{lq:"Lower Quartile",med:"Median",uq:"Upper Quartile",lo:"Left Outlier",ro:"Right Outlier",lw:"Left Whisker",rw:"Right Whisker"}}}}},E='.jqstooltip { position: absolute;left: 0px;top: 0px;visibility: hidden;background: rgb(0, 0, 0) transparent;background-color: rgba(0,0,0,0.6);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000);-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)";color: white;font: 10px arial, san serif;text-align: left;white-space: nowrap;padding: 5px;border: 1px solid white;z-index: 10000;}.jqsfield { color: white;font: 10px arial, san serif;text-align: left;}',g=function(){var a,b;return a=function(){this.init.apply(this,arguments)},arguments.length>1?(arguments[0]?(a.prototype=d.extend(new arguments[0],arguments[arguments.length-1]),a._super=arguments[0].prototype):a.prototype=arguments[arguments.length-1],arguments.length>2&&(b=Array.prototype.slice.call(arguments,1,-1),b.unshift(a.prototype),d.extend.apply(d,b))):a.prototype=arguments[0],a.prototype.cls=a,a},d.SPFormatClass=h=g({fre:/\{\{([\w.]+?)(:(.+?))?\}\}/g,precre:/(\w+)\.(\d+)/,init:function(a,b){this.format=a,this.fclass=b},render:function(a,b,d){var e=this,f=a,g,h,i,j,k;return this.format.replace(this.fre,function(){var a;return h=arguments[1],i=arguments[3],g=e.precre.exec(h),g?(k=g[2],h=g[1]):k=!1,j=f[h],j===c?"":i&&b&&b[i]?(a=b[i],a.get?b[i].get(j)||j:b[i][j]||j):(n(j)&&(d.get("numberFormatter")?j=d.get("numberFormatter")(j):j=s(j,k,d.get("numberDigitGroupCount"),d.get("numberDigitGroupSep"),d.get("numberDecimalMark"))),j)})}}),d.spformat=function(a,b){return new h(a,b)},i=function(a,b,c){return ac?c:a},j=function(a,c){var d;return c===2?(d=b.floor(a.length/2),a.length%2?a[d]:(a[d-1]+a[d])/2):a.length%2?(d=(a.length*c+c)/4,d%1?(a[b.floor(d)]+a[b.floor(d)-1])/2:a[d-1]):(d=(a.length*c+2)/4,d%1?(a[b.floor(d)]+a[b.floor(d)-1])/2:a[d-1])},k=function(a){var b;switch(a){case"undefined":a=c;break;case"null":a=null;break;case"true":a=!0;break;case"false":a=!1;break;default:b=parseFloat(a),a==b&&(a=b)}return a},l=function(a){var b,c=[];for(b=a.length;b--;)c[b]=k(a[b]);return c},m=function(a,b){var c,d,e=[];for(c=0,d=a.length;c0;h-=c)a.splice(h,0,e);return a.join("")},o=function(a,b,c){var d;for(d=b.length;d--;){if(c&&b[d]===null)continue;if(b[d]!==a)return!1}return!0},p=function(a){var b=0,c;for(c=a.length;c--;)b+=typeof a[c]=="number"?a[c]:0;return b},r=function(a){return d.isArray(a)?a:[a]},q=function(b){var c;a.createStyleSheet?a.createStyleSheet().cssText=b:(c=a.createElement("style"),c.type="text/css",a.getElementsByTagName("head")[0].appendChild(c),c[typeof a.body.style.WebkitAppearance=="string"?"innerText":"innerHTML"]=b)},d.fn.simpledraw=function(b,e,f,g){var h,i;if(f&&(h=this.data("_jqs_vcanvas")))return h;if(d.fn.sparkline.canvas===!1)return!1;if(d.fn.sparkline.canvas===c){var j=a.createElement("canvas");if(!j.getContext||!j.getContext("2d")){if(!a.namespaces||!!a.namespaces.v)return d.fn.sparkline.canvas=!1,!1;a.namespaces.add("v","urn:schemas-microsoft-com:vml","#default#VML"),d.fn.sparkline.canvas=function(a,b,c,d){return new J(a,b,c)}}else d.fn.sparkline.canvas=function(a,b,c,d){return new I(a,b,c,d)}}return b===c&&(b=d(this).innerWidth()),e===c&&(e=d(this).innerHeight()),h=d.fn.sparkline.canvas(b,e,this,g),i=d(this).data("_jqs_mhandler"),i&&i.registerCanvas(h),h},d.fn.cleardraw=function(){var a=this.data("_jqs_vcanvas");a&&a.reset()},d.RangeMapClass=t=g({init:function(a){var b,c,d=[];for(b in a)a.hasOwnProperty(b)&&typeof b=="string"&&b.indexOf(":")>-1&&(c=b.split(":"),c[0]=c[0].length===0?-Infinity:parseFloat(c[0]),c[1]=c[1].length===0?Infinity:parseFloat(c[1]),c[2]=a[b],d.push(c));this.map=a,this.rangelist=d||!1},get:function(a){var b=this.rangelist,d,e,f;if((f=this.map[a])!==c)return f;if(b)for(d=b.length;d--;){e=b[d];if(e[0]<=a&&e[1]>=a)return e[2]}return c}}),d.range_map=function(a){return new t(a)},u=g({init:function(a,b){var c=d(a);this.$el=c,this.options=b,this.currentPageX=0,this.currentPageY=0,this.el=a,this.splist=[],this.tooltip=null,this.over=!1,this.displayTooltips=!b.get("disableTooltips"),this.highlightEnabled=!b.get("disableHighlight")},registerSparkline:function(a){this.splist.push(a),this.over&&this.updateDisplay()},registerCanvas:function(a){var b=d(a.canvas);this.canvas=a,this.$canvas=b,b.mouseenter(d.proxy(this.mouseenter,this)),b.mouseleave(d.proxy(this.mouseleave,this)),b.click(d.proxy(this.mouseclick,this))},reset:function(a){this.splist=[],this.tooltip&&a&&(this.tooltip.remove(),this.tooltip=c)},mouseclick:function(a){var b=d.Event("sparklineClick");b.originalEvent=a,b.sparklines=this.splist,this.$el.trigger(b)},mouseenter:function(b){d(a.body).unbind("mousemove.jqs"),d(a.body).bind("mousemove.jqs",d.proxy(this.mousemove,this)),this.over=!0,this.currentPageX=b.pageX,this.currentPageY=b.pageY,this.currentEl=b.target,!this.tooltip&&this.displayTooltips&&(this.tooltip=new v(this.options),this.tooltip.updatePosition(b.pageX,b.pageY)),this.updateDisplay()},mouseleave:function(){d(a.body).unbind("mousemove.jqs");var b=this.splist,c=b.length,e=!1,f,g;this.over=!1,this.currentEl=null,this.tooltip&&(this.tooltip.remove(),this.tooltip=null);for(g=0;g