Giter VIP home page Giter VIP logo

pg67a-w's People

Contributors

pg6aw avatar

Stargazers

 avatar

Watchers

 avatar

pg67a-w's Issues

Project Library Management Updated to v.2.74

  1. Link to the Project File :

Project_Library_v2.74.zip

  1. Project Description :

(+ P.S: FOR THE MAIN LIBRARY, FEATURES ARE INDICATED ONE BY ONE USING THEIR WIDGET-GROUP NUMBER ON LEFT AS PER THEIR EXPLANATION)
*** The Very first step in which the database itself is created, is initiated in the MAINFILE__Book_Library.py
*** and that's where we create all the foundations and the infrastructure we need to build a true library
*** although it now exists in its pure simplistic form, we have established ideas that hence enabled us
*** to incorporate useful features into an all-in-one structure that works as intended as you immerse yourself
*** in it by just a hands-on experience with its GUI. We're proud of our first-ever work since it's easy for
*** everyone to get the hang of with just giving the tools the first go.
*** But despite this all, please also note that when you're going to borrow a book, you need to have its
*** ID. and in order to do that, you need to retrieve it from the database that's also fulfilled with just
*** typing down the book's title in the appropriate field and a single left-click on the button to submit
*** your request and get the specific book ID.
*** One other notable thing to add, is that you can update the added books by just inputting their exact name
*** and update the rest of their details simply by entering new data in their appropriate fields.

1 *** All in All, to put it short, the first 4 entries add a book to the database. one of which with the name
1 *** "Number of Instances" implies to the number of copies of the same book currently available. and ID is also
1 *** automatically generated for each book.
2 *** Next part is to singup a User by their Username and Password. Books can be updated So do Users by a new
2 *** password and the same Username.
3 *** Next part is designed to retrieve IDs from each Username or Book if further needed.
4 *** This part is used to remove or delete a book completely from the database. You can also go back to the 1st
4 *** part and do this alternatively by setting Number of Instances of the specific book you wish to remove, a "0"
4 *** value so that copies of it would no longer exist in the book repository.
5 *** The 5th part that contains four entries is engineered in order to be clearly intended to borrow a specific
5 *** book by their ID and they will be immediately assigned to a User profile once user is authenticated.
6 *** The 6th widgets are just as clear as the 5th part. as they do useful tasks but adversely similar. which
6 *** means they are designed to give a borrowed book back. Just like how the same book cannot be borrowed after
6 *** it's borrowed twice by a User, nor can it be returned twice by the User. rest assured same applies to all
6 *** users.
*** rest of it is all up to you to navigate through the GUI environment to further learn how to get the best
*** out of its functionalities.

*** And JUST IN CASE a book was completely purged from the database by "Delete a Book" feature, and a user had
*** previously borrowed it therefore owing it to the library and cannot give it back due to an issue that the
*** book no longer exists in database, manually refer to the "Free.py" Tool located in the "Free a user" Folder
*** in the "Additional Complementary Tools" Directory and receive the specific book from them and manually check
*** the date and time they had borrowed it by also using "Show.py" Tool in the "Show Database" directory under the
*** same parent directory "Additional Complementary Tools" and viewing the records using its full-fledged GUI.

  • Exit Button added
  • Exit Buttons have become more organized
  • Silenced some input errors
  • Implemented more data type sensitivity into Library
  • Subtly changed the way project looks
  • Center-aligned anything being typed into the entry fields
  • Runtime User-Guid pop-up mode added
  • Now the program is capable of generating event logs specific to every admin identifying them with their username that helps managers track the ongoing activities.
  • To prevent abuse, i have implemented an algorithm to limit the number of books each user can borrow.
  • Handled some type errors that had occured during dev-tests.
  • Users can extend their return duration up to 15 days tops.
  • Users cannot borrow more than 2 books in a row.
  • Book Deletion can be locked by admin.
  • If Book Deletion of a specific book has been locked by an admin, it cannot be deleted and the number of available instances of the book will reach to zero.
  • If a user borrows a book for a certain period of time and then decides to borrow another book immediately after, but for a shorter time, the duration for the second book is extended to include the remaining time from the previous book.
  • Library admins cannot update books when the book is on "Reserved" mode.
  • If a book is returned while the 'Reserved' mode is activated, the user who borrowed it has fulfilled their obligation, but the book has not been added back to the library.
  • Admin register applet added! Now admins must register to use the Library Management software.
  1. MIT LICENSE :

MIT License

Copyright (c) 2023 Mohammad Dorri

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Project Modern User Authenticator App v1.38 (+ Password manager + Account manager)

* THIS PYTHON APP IS INTENDED TO SERVE AS A MODERN USER AUTHENTICATOR FOR ANYONE WHO WISH TO USE IT! *

Project's File ๐Ÿฅ‡ :
Modern User Authenticator v1.38.zip

  1. "login.py":

    The main file, the first file that must open and initiate the program is "login.py" !
    As you try to login but you can't, it suggests that you need an account!
    Try making one by using the "Register" button that leads right to the "register.py" file.

    *** Also keep in mind that you can always change the commented code portion of the "login.py" in order to make it do another task tailored to your need other than just opening a library manager App which has been set as its last resort by default! ***
    *** There has been just some empty comment tags around this portion that can be modified and it's only in the "login.py" file!

  2. "register.py":

    As you open this window, you're going to register a new account based on the username you'd like to set for yourself!
    Don't forget that you need to pass some strict security tests first along with just going in accordance with the visual instructions.
    There are some automatic checks that appear under the window and keep in mind to track your keyboard state and your Caps Lock key status!
    This thing ain't no joke! i'm serious man. It's a sophisticated, modern user authenticator that i think only lacks in the area of captcha management that can be voluntarily added by further modifying the code which steps up security for use on enterprise-level websites where security must be a priority.
    Once you've fulfilled your obligation and confirmed the registration process, only then you have indeed registered!

  3. "update_login_info.py":

    If you need to update or change your registration info, including your password, then hands down! as it's been made possible for users to update their registration info.
    For this purpose, you just need to remember your old password you had already set and without that, there's no alternative way to recover your password or regain access to your account!
    If you lost your password, reach out to Managers or Supervisors to simply have your password reset to the following literal: "12345678".
    Just don't forget to change your password to something strong as sequential numbers would serve no security for your account at all.

  4. "Pass_Reset.py" in "ONLY_MANAGERS_AND_SUPERVISORS__Password_Reset__" folder:

    This part is only used by managers and supervisors as it literally just resets your password to "12345678"!
    If you lost your password by any means, gently ask system managers or supervisors to reset it for you so that this way they'll be able to help you regain access to your account.
    DON'T FORGET TO LATER CHANGE YOUR PASSWORD YOURSELF!

  5. "Registry.py" in "Library_Registry" folder:

    This portion is a Legacy from our "LIBRARY MANAGEMENT SYSTEM" project! A project that possibly once made your day and is never gonna get old! (Good Old Days LOL at least for me i'd say ...)
    But please note that you can always replace it with anything that meets your requirements and this one little thing is nothing more than a sample!

  6. "login_window_basic_comprehensive_structure.py" which is located in the "Bonus Content - NOT USED" directory:

    This part was almost used in the latest LIBRARY MANAGEMENT SYSTEM project update (Version 2.74)
    You may want to consider this one too as a Legacy but seriously, you can do so as you wish LOL!
    But hell no!
    This one was just a prototypical form of the current project. The very first initiative phase where ideas sparkled one by one and everything started up to this!
    The reason i decided to include it in the project was because i wanted to indicate the project's transitioning breakpoints and somehow illustrate its growing timeline in a visual format and not just by using boring words. (Short and Concise is 99% of times more superior than such traditional notes, not?)

Library Management System Version 3.0 Beta

This is a beta release of the project library management system of mine and probably discontinues on its future updates.
Download from the link below and Always open from the "login.py" file :

Project_Library_v3.0 BETA.zip

Feel free to comment below and help us add anything that's worth adding to this project!
Cheers ;) ๐Ÿฅ‡ ๐Ÿฅ‚

Project Library UPDATED to V2.47

  1. Link to the Project File :

Project.Library.v2.47.zip

  1. Project Description :

(+ P.S: FOR THE MAIN LIBRARY, FEATURES ARE INDICATED ONE BY ONE USING THEIR WIDGET-GROUP NUMBER ON LEFT AS PER THEIR EXPLANATION)
*** The Very first step in which the database itself is created, is initiated in the MAINFILE__Book_Library.py
*** and that's where we create all the foundations and the infrastructure we need to build a true library
*** although it now exists in its pure simplistic form, we have established ideas that hence enabled us
*** to incorporate useful features into an all-in-one structure that works as intended as you immerse yourself
*** in it by just a hands-on experience with its GUI. We're proud of our first-ever work since it's easy for
*** everyone to get the hang of with just giving the tools the first go.
*** But despite this all, please also note that when you're going to borrow a book, you need to have its
*** ID. and in order to do that, you need to retrieve it from the database that's also fulfilled with just
*** typing down the book's title in the appropriate field and a single left-click on the button to submit
*** your request and get the specific book ID.
*** One other notable thing to add, is that you can update the added books by just inputting their exact name
*** and update the rest of their details simply by entering new data in their appropriate fields.

1 *** All in All, to put it short, the first 4 entries add a book to the database. one of which with the name
1 *** "Number of Instances" implies to the number of copies of the same book currently available. and ID is also
1 *** automatically generated for each book.
2 *** Next part is to singup a User by their Username and Password. Books can be updated So do Users by a new
2 *** password and the same Username.
3 *** Next part is designed to retrieve IDs from each Username or Book if further needed.
4 *** This part is used to remove or delete a book completely from the database. You can also go back to the 1st
4 *** part and do this alternatively by setting Number of Instances of the specific book you wish to remove, a "0"
4 *** value so that copies of it would no longer exist in the book repository.
5 *** The 5th part that contains four entries is engineered in order to be clearly intended to borrow a specific
5 *** book by their ID and they will be immediately assigned to a User profile once user is authenticated.
6 *** The 6th widgets are just as clear as the 5th part. as they do useful tasks but adversely similar. which
6 *** means they are designed to give a borrowed book back. Just like how the same book cannot be borrowed after
6 *** it's borrowed twice by a User, nor can it be returned twice by the User. rest assured same applies to all
6 *** users.
*** rest of it is all up to you to navigate through the GUI environment to further learn how to get the best
*** out of its functionalities.

*** And JUST IN CASE a book was completely purged from the database by "Delete a Book" feature, and a user had
*** previously borrowed it therefore owing it to the library and cannot give it back due to an issue that the
*** book no longer exists in database, manually refer to the "Free.py" Tool located in the "Free a user" Folder
*** in the "Additional Complementary Tools" Directory and receive the specific book from them and manually check
*** the date and time they had borrowed it by also using "Show.py" Tool in the "Show Database" directory under the 
*** same parent directory "Additional Complementary Tools" and viewing the records using its full-fledged GUI.
  • Exit Button added
  • Exit Buttons have become more organized
  • Silenced some input errors
  • Implemented more data type sensitivity into Library
  • Subtly changed the way project looks
  • Center-aligned anything being typed into the entry fields
  • Runtime User-Guid pop-up mode added
  • Now the program is capable of generating event logs specific to every admin identifying them with their username that helps managers track the ongoing activities.
  • To prevent abuse, i have implemented an algorithm to limit the number of books each user can borrow.
  • Handled some type errors that had occured during dev-tests.
  • Users can extend their return duration up to 15 days tops.
  • Users cannot borrow more than 2 books in a row.
  • Book Deletion can be locked by admin.
  • If Book Deletion of a specific book has been locked by an admin, it cannot be deleted and the number of available instances of the book will reach to zero.
  • If a user borrows a book for a certain period of time and then decides to borrow another book immediately after, but for a shorter time, the duration for the second book is extended to include the remaining time from the previous book.
  • Library admins cannot update books when the book is on "Reserved" mode.
  • If a book is returned while the 'Reserved' mode is activated, the user who borrowed it has fulfilled their obligation, but the book has not been added back to the library.
  1. MIT LICENSE :

MIT License

Copyright (c) 2023 Mohammad Dorri

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.