tipoff / reviews Goto Github PK
View Code? Open in Web Editor NEWLaravel Package for tracking Google reviews
License: MIT License
Laravel Package for tracking Google reviews
License: MIT License
Every Company (#4) and every Place (#6) will belong to an industry. I would like these to match up with the categories from Google Places so they can be automatically assigned when new Places are created and when Places are updated in GMB. Companies will just use the primary category, but I would also like to allow multiple Industry categories to be listed for Places just like in GMB, so it will have a Many to Many relationship.
Competitor (#19) needs to updated with a relationship to Domestic Address (TIPOFF/addresses#19).
Webpages are exact URL's in search results (Rankings #15) that will be stored in a different table, so their movement in the Rankings will be documented. They belong to a Domain (#11) but in many cases, the Domain will not have a Company (#4) as when TripAdvisor, Yelp, and other generic websites appear in the Rankings.
Create Permissions (TIPOFF/authorization#22) & assign to default Roles (TIPOFF/authorization#21) using the new PermissionMigration
and Helper in tipoff/authorization package:
Reviews are pulled from Google My Business daily for each Location (#5). There are additional fields for the review to allow positive reviews to be highlighted as testimonials on the Company's website.
Domains will have a One to One relationship with Companies (#4) and also contain additional fields from the Domain RDAP API and we will use a scraper to store the Domain's Favicon and other information.
Need to update the README file to keep it current with package features and document how to best utilize it in a Laravel project.
I prefer to have a separate table with each of the US timezones and allow them to have a readable field (EST, CST, etc.) In addition to the PHP timezone and any JavaScript equivalent we will need. Each Market (#3) and Place (#6) will have a timezone_id stored for it. I imagine there is a way to fetch the timezone somewhere with a zip code.
Companies will be either the company for the application or a competitor company. They will be used for Locations and for Places. They must have a unique website domain.
Accounts belong to a Company (#4) and are the social media accounts for that business. They include the main Facebook page, Twitter account, YouTube channel, Instagram account, etc.
Location-specific Facebook pages will just be saved on the Places (#6) model. Locations (#5) will all have Places as a One to One relationship, so we don't need to duplicate it in both tables.
Snapshots are taken on the first of each month and once a week (I prefer Wednesdays) for each active Place (#6) to get the review count and average rating. This allows changes to be tracked over time and comparisons to be made.
example from the Fees package:
public function up()
{
$permissions = [
'view fees' => ['Owner', 'Staff'],
'create fees' => ['Owner'],
'update fees' => ['Owner'],
'delete fees' => [], // Admin only
];
$this->createPermissions($permissions);
}
Need to implement tests for every feature of the package.
Places are the tracked Google Places that will require a Google Places ID and the remainder of the details will be pulled by the API. When these are pulled, a Company (#4) will be created for each new domain name. They will also belong to a Market (#3) and a State (#2) which will both need to computed based on the address.
PageSpeed Insights will be pulled for each Domain (#11) on the first of the month.
nova filters were not migrated in method filters() of nova resource
-add nova filters to nova resource in filterClassList[]
Need to implement tests for every feature of the package.
Insights will be pulled daily from Google My Business and stored for each Location (#5).
Need to update the README file to keep it current with package features and document how to best utilize it in a Laravel project.
Update composer.json also
The implementation of this reporting feature will include Markets, which are cities and greater city areas, but smaller than the Nielson DMA's (https://en.wikipedia.org/wiki/List_of_United_States_television_markets). I'll work on the definitions of them for a seeder, but it will allow better targeting for SEO purposes.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.