{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":810215344,"defaultBranch":"master","name":"ResumeBuilderMAUI","ownerLogin":"sametcn99","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2024-06-04T09:13:35.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/57061347?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1717492419.0","currentOid":""},"activityList":{"items":[{"before":"1f702bb31191612be9742c860c541132932a2ec5","after":"bacbdcc3eb2ab0c91a6550d616e7c6b0fa087d71","ref":"refs/heads/master","pushedAt":"2024-06-11T17:49:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"sort persons","shortMessageHtmlLink":"sort persons"}},{"before":"e10338c20946a428c1d9c517e43f30d1cc77c138","after":"1f702bb31191612be9742c860c541132932a2ec5","ref":"refs/heads/master","pushedAt":"2024-06-11T17:11:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"questpdf debug","shortMessageHtmlLink":"questpdf debug"}},{"before":"c0125b5d58af7925e2e4d1b5e2ecd1e72cc0d293","after":"e10338c20946a428c1d9c517e43f30d1cc77c138","ref":"refs/heads/master","pushedAt":"2024-06-11T17:10:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"questpdf license","shortMessageHtmlLink":"questpdf license"}},{"before":"2bc0b077c27abd64e818a23401ee9423196723d9","after":"c0125b5d58af7925e2e4d1b5e2ecd1e72cc0d293","ref":"refs/heads/master","pushedAt":"2024-06-11T16:21:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"cleanup","shortMessageHtmlLink":"cleanup"}},{"before":"3003481989c758b6ccdd5b3b44565d556c7fbfc6","after":"2bc0b077c27abd64e818a23401ee9423196723d9","ref":"refs/heads/master","pushedAt":"2024-06-11T16:01:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"using datachanged event","shortMessageHtmlLink":"using datachanged event"}},{"before":"2657c62d7b60a40aa356d82ea0de4bc46707c859","after":"3003481989c758b6ccdd5b3b44565d556c7fbfc6","ref":"refs/heads/master","pushedAt":"2024-06-11T15:08:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"reorganize","shortMessageHtmlLink":"reorganize"}},{"before":"8d00278c0e682716caecab22015abb49876276b5","after":"2657c62d7b60a40aa356d82ea0de4bc46707c859","ref":"refs/heads/master","pushedAt":"2024-06-11T14:41:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"back to quest pdf","shortMessageHtmlLink":"back to quest pdf"}},{"before":"fef3f18803544a7aa487efc9f6b762ae7b1d1485","after":"8d00278c0e682716caecab22015abb49876276b5","ref":"refs/heads/master","pushedAt":"2024-06-11T00:07:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Switched from QuestPDF to PDFsharp due to lack of mobile platform support in QuestPDF.","shortMessageHtmlLink":"Switched from QuestPDF to PDFsharp due to lack of mobile platform sup…"}},{"before":"956ef70f6930d0071bb8c977641b62be7ebae7d9","after":"fef3f18803544a7aa487efc9f6b762ae7b1d1485","ref":"refs/heads/master","pushedAt":"2024-06-10T23:31:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"select directory to export","shortMessageHtmlLink":"select directory to export"}},{"before":"419b67652f780b5a4291d2c9a0962cfd0c96ca68","after":"956ef70f6930d0071bb8c977641b62be7ebae7d9","ref":"refs/heads/master","pushedAt":"2024-06-10T20:55:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Updated ResumeId handling and refactored ViewModel usage\n\nUpdated the `ResumeId` field in various classes in `Resume.cs` to be nullable and of type string. Refactored the `FillEntries` method in `FillEntriesInDebug.cs` to generate a unique `ResumeId`. Commented out the `MainViewModel` constructor in `MainViewModel.cs` used for debugging. Replaced `GetPersonsByName` method with `GetResumeByResumeId` in `LocalDbService.cs`. Updated constructors in `CreateResumePage.xaml.cs` and `MainPage.xaml.cs` to handle nullable `MainViewModel` and initialize `LoginViewModel` respectively. Updated `MainPage.xaml` to bind to `LoginViewModel` and replaced pickers and button events. Added `LoginViewModel.cs` with new methods. Updated `LocalDbService.cs`, `MainViewModel.cs`, `CreateResumePage.xaml.cs`, `MauiProgram.cs` files and various namespaces.","shortMessageHtmlLink":"Updated ResumeId handling and refactored ViewModel usage"}},{"before":"abf0210627e1a1e78898705c0246fc15bebeaf48","after":"419b67652f780b5a4291d2c9a0962cfd0c96ca68","ref":"refs/heads/master","pushedAt":"2024-06-10T01:05:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Added new features and updated UI elements\n\nAdded `ResumeDate` property to `Person` class in `Resume.cs` and set it to the current date in `MainViewModel.cs` when a new `Person` object is created. Two new methods, `GetAllPersons` and `GetPersonsByName`, have been added to `LocalDbService.cs` for retrieving persons from the database. Updated \"Continue\" and \"Create New Resume\" buttons with `x:Name` properties in `MainPage.xaml` for easier reference in code. Modified the constructor for `MainPage` in `MainPage.xaml.cs`.","shortMessageHtmlLink":"Added new features and updated UI elements"}},{"before":"7f500f4c00901f51bc72e3d4bc8a3a213d57f5b2","after":"abf0210627e1a1e78898705c0246fc15bebeaf48","ref":"refs/heads/master","pushedAt":"2024-06-10T00:17:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"reorganize project files","shortMessageHtmlLink":"reorganize project files"}},{"before":"1117bbeae43f7d01a308306753fc832c9d09839b","after":"7f500f4c00901f51bc72e3d4bc8a3a213d57f5b2","ref":"refs/heads/master","pushedAt":"2024-06-10T00:10:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"organize models","shortMessageHtmlLink":"organize models"}},{"before":"fe247eb21f8074b9acbad643c3ce30ad96c89b43","after":"1117bbeae43f7d01a308306753fc832c9d09839b","ref":"refs/heads/master","pushedAt":"2024-06-09T23:41:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Added nullable Title property and refactored MainViewModel\n\nIn the `Experience` class within `Resume.cs`, a new nullable property `Title` of type string has been added. In `MainViewModel.cs`, the creation of a new `Experience` object has been removed and instead, the `experienceData` object is directly added to the `Experiences` collection. The error check and alert display in the `Save` method have been removed. A new `ResumeId` is now generated using the `Generators.RandomNumber()` method when creating a new `Person` object. These changes are part of a refactoring process to simplify the code and improve the data structure.","shortMessageHtmlLink":"Added nullable Title property and refactored MainViewModel"}},{"before":"9b4c7a42dda65e8738d584d7c528d7181d5a2fbc","after":"fe247eb21f8074b9acbad643c3ce30ad96c89b43","ref":"refs/heads/master","pushedAt":"2024-06-09T23:34:05.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Refactor Resume class and enhance database operations\n\nThe `Resume` class has been refactored into multiple classes (`Person`, `Certification`, `Education`, `Experience`, `Project`, `Skill`) for better data structure. The `FillEntries` method in `FillEntriesInDebug.cs` is now asynchronous and generates a unique `ResumeId` for each resume. It also saves resume data to a local database using the `LocalDbService` class, with added error handling. The database initialization method in `LocalDbService.cs` now creates tables for each new class and includes methods to insert instances into the corresponding tables. The `AddExperience` method in `MainViewModel.cs` now creates an `Experience` object and adds it to the `Experiences` collection. The `Save` method has been updated to save the resume data to the local database using the new classes and methods, with added error handling. A new `Generators` class has been added to generate random numbers for `ResumeId`.","shortMessageHtmlLink":"Refactor Resume class and enhance database operations"}},{"before":"40c71550257d3a5e47291b6b6a586aed35215206","after":"9b4c7a42dda65e8738d584d7c528d7181d5a2fbc","ref":"refs/heads/master","pushedAt":"2024-06-09T16:56:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"added localdbservice","shortMessageHtmlLink":"added localdbservice"}},{"before":"970aaf22cb2c469ea06fd4f4c779b4bf2fe5e1cf","after":"40c71550257d3a5e47291b6b6a586aed35215206","ref":"refs/heads/master","pushedAt":"2024-06-09T14:24:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Updated ResumeBuilderMAUI with enhanced functionality and layout changes\n\nUpdated various files in the `ResumeBuilderMAUI.Helpers` and `ResumeBuilderMAUI.ViewModels` namespaces. In `ClearEntries.cs`, the `ClearAllEntries` method now uses the `Clear` method to empty the `Certifications` and `SkillList` collections. `FillEntriesInDebug.cs` has been updated with new properties and methods for `Certifications` and `SkillList`. `ClassicResumeLayout.cs` now uses the `Row` method to create a row in the header and includes updates to `Margin`, `DefaultTextStyle`, `Content`, and `Footer` methods.\n\nIn `MainViewModel.cs`, the `Certifications` property is now a collection and the `Certification` property has been added. The `ProjectStatus` property has been removed and the `AddProjectCommand` method no longer includes the `Status` property.\n\n`CreateResumePage.xaml` has been updated with a new section for certifications, removal of `ProjectStatus` entry, and relocation of the save button.","shortMessageHtmlLink":"Updated ResumeBuilderMAUI with enhanced functionality and layout changes"}},{"before":"d38904d89bf405b26425a6401d97093f6695da94","after":"970aaf22cb2c469ea06fd4f4c779b4bf2fe5e1cf","ref":"refs/heads/master","pushedAt":"2024-06-08T22:15:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Updated ViewModel, UI controls, and added debug data fill\n\nUpdated `ClearEntries.cs` to clear additional fields in the `viewModel` object, including the `Skill` field and project, education, and experience entries. Added a new constructor in `MainViewModel.cs` that calls the `FillEntries` method from the `FillEntriesInDebug` class for testing purposes. Replaced the `Entry` control for the `Summary` field with an `Editor` control in `CreateResumePage.xaml` for multi-line input. Added `FillEntriesInDebug.cs` to fill the `MainViewModel` object with default data in debug mode. Updated `MainViewModel.cs` with a new line of code after the `CreateResume.CreateResumePDF(this);` line.","shortMessageHtmlLink":"Updated ViewModel, UI controls, and added debug data fill"}},{"before":"5483451d217621e2be1c069b59f0af15b7e7436f","after":"d38904d89bf405b26425a6401d97093f6695da94","ref":"refs/heads/master","pushedAt":"2024-06-08T21:48:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"fix parameter","shortMessageHtmlLink":"fix parameter"}},{"before":"4de9f8436297fa4256802798f22724007342c648","after":"5483451d217621e2be1c069b59f0af15b7e7436f","ref":"refs/heads/master","pushedAt":"2024-06-08T21:44:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Updated `CreateResume.cs` and added `ClassicResumeLayout.cs`\n\nUpdated the `ClearEntriesHelper` class in `ClearEntries.cs` to remove its inheritance from `MainViewModel`. Modified the `CreateResumePDF` method in `CreateResume.cs` to accept a `MainViewModel` parameter and generate PDF content dynamically using the `GenerateClassicResumeLayout` method from the new `ClassicResumeLayout` class. Removed usage of `QuestPDF.Helpers` and `QuestPDF.Infrastructure` namespaces in `CreateResume.cs` and added `ResumeBuilderMAUI.ViewModels` namespace. Added a new file `ClassicResumeLayout.cs` with a method to generate a PDF document based on the provided `MainViewModel`.","shortMessageHtmlLink":"Updated CreateResume.cs and added ClassicResumeLayout.cs"}},{"before":"0cbda414ade7c5a554767a1392ecb50ad232928d","after":"4de9f8436297fa4256802798f22724007342c648","ref":"refs/heads/master","pushedAt":"2024-06-08T21:10:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"reorganize alert methods","shortMessageHtmlLink":"reorganize alert methods"}},{"before":"95b4c50a20b7e4bcbae84068dded4354ce486399","after":"0cbda414ade7c5a554767a1392ecb50ad232928d","ref":"refs/heads/master","pushedAt":"2024-06-08T20:46:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"quest pdf integration","shortMessageHtmlLink":"quest pdf integration"}},{"before":"e7fd997be416a67812150eb239a4950e51273d31","after":"95b4c50a20b7e4bcbae84068dded4354ce486399","ref":"refs/heads/master","pushedAt":"2024-06-08T19:47:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Update type casting in CreateResumePage and MainPage\n\nUpdated the `ClearAllEntries` method in `CreateResumePage.xaml.cs` and the `OnCreateResumeClicked` method in `MainPage.xaml.cs` to use explicit parameter naming and direct casting for `MainViewModel`. This change ensures type safety by throwing an exception if the conversion is not possible, rather than potentially returning null. Also, the `!` operator is used to suppress possible null reference warnings from the compiler.","shortMessageHtmlLink":"Update type casting in CreateResumePage and MainPage"}},{"before":"dc2f051efeb848727c6eddd059b35de0d8fb9ed9","after":"e7fd997be416a67812150eb239a4950e51273d31","ref":"refs/heads/master","pushedAt":"2024-06-08T18:05:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"reorganized project files","shortMessageHtmlLink":"reorganized project files"}},{"before":"d1b26005744c9c31dd92ab3aa429453768c17c83","after":"dc2f051efeb848727c6eddd059b35de0d8fb9ed9","ref":"refs/heads/master","pushedAt":"2024-06-08T14:39:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"update styles","shortMessageHtmlLink":"update styles"}},{"before":"5d88247668aca4a29cbfdd3530900c8820123ef5","after":"d1b26005744c9c31dd92ab3aa429453768c17c83","ref":"refs/heads/master","pushedAt":"2024-06-08T13:44:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Refactor code and update dependencies in ResumeBuilderMAUI project\n\nThis commit includes several changes to the ResumeBuilderMAUI project. The `ResumeServices` class and its namespace import have been removed from `MauiProgram.cs` and `ResumeServices.cs`, and the singleton service registration for `ResumeServices` has also been removed from `MauiProgram.cs`. The versions of `Microsoft.Maui.Controls` and `Microsoft.Maui.Controls.Compatibility` have been updated from a variable `$(MauiVersion)` to a fixed version `8.0.40` in `ResumeBuilderMAUI.csproj`. A new `Services` folder has been added to the project. In `MainViewModel.cs`, the initializations of `ObservableRangeCollection` for `Experiences`, `Educations`, `Projects`, and `Errors` have been changed to an empty array `[]`, and the same change has been made for the `ObservableCollection` initialization for `skillList`. Lastly, the `Educations` property has been added to the list of properties to be cleared in the `ClearAllEntries` method.","shortMessageHtmlLink":"Refactor code and update dependencies in ResumeBuilderMAUI project"}},{"before":"fd7a5a68a599dbeba3fe54ddede17818e58aaafe","after":"5d88247668aca4a29cbfdd3530900c8820123ef5","ref":"refs/heads/master","pushedAt":"2024-06-08T13:24:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"check nulls","shortMessageHtmlLink":"check nulls"}},{"before":"362b38c0b847ff4f4c020870a5965749c0e18091","after":"fd7a5a68a599dbeba3fe54ddede17818e58aaafe","ref":"refs/heads/master","pushedAt":"2024-06-08T13:13:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"Updated formatters, validators, and MainViewModel methods\n\nUpdated `FormatPhoneNumber`, `FormatUrl`, `FormatDate`, and `FormatTime` methods in `Formatters.cs` to accept nullable strings and return an empty string if null. Modified the regex in `IsValidPhoneNumber` method in `Validators.cs` to match any string of digits and added a new `IsValidUrl` method. In `MainViewModel.cs`, updated the `CheckForErrors` method to modify error checking conditions and removed `PhoneNumber` field check. Added a new `FormatData` method to format certain fields using `FormatUrl` method. Simplified the `Save` method by removing the `else` block and executing its code regardless of errors.","shortMessageHtmlLink":"Updated formatters, validators, and MainViewModel methods"}},{"before":"e115a35f09816f409d4ce46fa9d68824f09ea0c2","after":"362b38c0b847ff4f4c020870a5965749c0e18091","ref":"refs/heads/master","pushedAt":"2024-06-08T12:42:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"validate entries","shortMessageHtmlLink":"validate entries"}},{"before":"3aa3dece48b60ac24f2f917983cbb86837db0de1","after":"e115a35f09816f409d4ce46fa9d68824f09ea0c2","ref":"refs/heads/master","pushedAt":"2024-06-07T21:40:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"sametcn99","name":"samet","path":"/sametcn99","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57061347?s=80&v=4"},"commit":{"message":"added quest pdf","shortMessageHtmlLink":"added quest pdf"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEYoN9gQA","startCursor":null,"endCursor":null}},"title":"Activity · sametcn99/ResumeBuilderMAUI"}