mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 20:47:54 +00:00
pull made
This commit is contained in:
@@ -1,6 +1,95 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
|
<string>en</string>
|
||||||
|
<key>CFBundleDisplayName</key>
|
||||||
|
<string>Gabinete Digital</string>
|
||||||
|
<key>CFBundleExecutable</key>
|
||||||
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
|
<key>CFBundleIdentifier</key>
|
||||||
|
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||||
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
|
<string>6.0</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>$(PRODUCT_NAME)</string>
|
||||||
|
<key>CFBundlePackageType</key>
|
||||||
|
<string>APPL</string>
|
||||||
|
<key>CFBundleShortVersionString</key>
|
||||||
|
<string>$(MARKETING_VERSION)</string>
|
||||||
|
<key>CFBundleURLTypes</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CFBundleTypeRole</key>
|
||||||
|
<string>Editor</string>
|
||||||
|
<key>CFBundleURLName</key>
|
||||||
|
<string>com.gpr.gabinetedigital.teste</string>
|
||||||
|
<key>CFBundleURLSchemes</key>
|
||||||
|
<array>
|
||||||
|
<string>gabinetedigital</string>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>CFBundleVersion</key>
|
||||||
|
<string>$(CURRENT_PROJECT_VERSION)</string>
|
||||||
|
<key>LSApplicationCategoryType</key>
|
||||||
|
<string></string>
|
||||||
|
<key>LSRequiresIPhoneOS</key>
|
||||||
|
<true/>
|
||||||
|
<key>NSCameraUsageDescription</key>
|
||||||
|
<string>This app requires access to the camera.</string>
|
||||||
|
<key>NSMicrophoneUsageDescription</key>
|
||||||
|
<string>This app does not require access to the microphone.</string>
|
||||||
|
<key>NSPhotoLibraryAddUsageDescription</key>
|
||||||
|
<string>This app requires access to the photo library.</string>
|
||||||
|
<key>NSPhotoLibraryUsageDescription</key>
|
||||||
|
<string>This app requires access to the photo library.</string>
|
||||||
|
<key>UILaunchStoryboardName</key>
|
||||||
|
<string>LaunchScreen</string>
|
||||||
|
<key>UIMainStoryboardFile</key>
|
||||||
|
<string>Main</string>
|
||||||
|
<key>UIRequiredDeviceCapabilities</key>
|
||||||
|
<array>
|
||||||
|
<string>armv7</string>
|
||||||
|
</array>
|
||||||
|
<key>UISupportedInterfaceOrientations</key>
|
||||||
|
<array>
|
||||||
|
<string>UIInterfaceOrientationPortrait</string>
|
||||||
|
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||||
|
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||||
|
</array>
|
||||||
|
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||||
|
<array>
|
||||||
|
<string>UIInterfaceOrientationPortrait</string>
|
||||||
|
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||||
|
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||||
|
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||||
|
</array>
|
||||||
|
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||||
|
<true/>
|
||||||
|
<key>NSAppTransportSecurity</key>
|
||||||
|
<dict>
|
||||||
|
<key>NSAllowsArbitraryLoads</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
|
||||||
|
<!-- Firebase Push Notification Configurations -->
|
||||||
|
<key>FirebaseAppDelegateProxyEnabled</key>
|
||||||
|
<true/>
|
||||||
|
<key>UNUserNotificationCenterDelegate</key>
|
||||||
|
<string>YourApp.NotificationDelegate</string>
|
||||||
|
<key>UIBackgroundModes</key>
|
||||||
|
<array>
|
||||||
|
<string>remote-notification</string>
|
||||||
|
</array>
|
||||||
|
</dict>
|
||||||
|
</plist>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
|
<plist version="1.0">
|
||||||
<dict>
|
<dict>
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<string>en</string>
|
<string>en</string>
|
||||||
@@ -75,3 +164,4 @@
|
|||||||
</dict>
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
-->
|
||||||
@@ -6,6 +6,7 @@ import { ThemeService } from 'src/app/services/theme.service';
|
|||||||
import { ChatSystemService } from 'src/app/services/chat/chat-system.service';
|
import { ChatSystemService } from 'src/app/services/chat/chat-system.service';
|
||||||
import { SessionStore } from 'src/app/store/session.service';
|
import { SessionStore } from 'src/app/store/session.service';
|
||||||
import { ToastService } from 'src/app/services/toast.service';
|
import { ToastService } from 'src/app/services/toast.service';
|
||||||
|
import { catchError } from 'rxjs/operators';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-new-group',
|
selector: 'app-new-group',
|
||||||
@@ -66,6 +67,12 @@ export class NewGroupPage implements OnInit {
|
|||||||
let customFields = {}
|
let customFields = {}
|
||||||
let res: any;
|
let res: any;
|
||||||
|
|
||||||
|
if(!SessionStore.user?.ChatData?.data) {
|
||||||
|
this.toastService._successMessage("Chat temporariamente indisponível")
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
if (this.thedate) {
|
if (this.thedate) {
|
||||||
let customFields = {
|
let customFields = {
|
||||||
"countDownDate": this.thedate
|
"countDownDate": this.thedate
|
||||||
@@ -76,6 +83,7 @@ export class NewGroupPage implements OnInit {
|
|||||||
res = await this.ChatSystemService.createPrivateRoom(name, SessionStore.user.UserName, customFields);
|
res = await this.ChatSystemService.createPrivateRoom(name, SessionStore.user.UserName, customFields);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
this.isGroupCreated = true;
|
this.isGroupCreated = true;
|
||||||
this.addContacts(res.result);
|
this.addContacts(res.result);
|
||||||
this.ChatSystemService.getRoom([res.result]);
|
this.ChatSystemService.getRoom([res.result]);
|
||||||
@@ -84,6 +92,21 @@ export class NewGroupPage implements OnInit {
|
|||||||
this.ChatSystemService.subscribeToRoomUpdate(res.result.rid, res.result);
|
this.ChatSystemService.subscribeToRoomUpdate(res.result.rid, res.result);
|
||||||
}, 10)
|
}, 10)
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
await this.ChatSystemService.getUser();
|
||||||
|
await this.ChatSystemService.getAllRooms();
|
||||||
|
await this.ChatSystemService.subscribeToRoom();
|
||||||
|
|
||||||
|
this.isGroupCreated = true;
|
||||||
|
this.addContacts(res.result);
|
||||||
|
this.ChatSystemService.getRoom([res.result]);
|
||||||
|
|
||||||
|
setTimeout(() => {
|
||||||
|
this.ChatSystemService.subscribeToRoomUpdate(res.result.rid, res.result);
|
||||||
|
}, 10)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (res?.result?.rid) {
|
if (res?.result?.rid) {
|
||||||
@@ -108,6 +131,10 @@ export class NewGroupPage implements OnInit {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} catch(error) {
|
||||||
|
this.toastService._successMessage("Chat temporariamente indisponível")
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -65,6 +65,7 @@ export class NotificationsService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
requestPermissions() {
|
requestPermissions() {
|
||||||
|
console.log('init notificaton permission')
|
||||||
|
|
||||||
if (this.platform.is('mobile')) {
|
if (this.platform.is('mobile')) {
|
||||||
if (!this.isPushNotificationsAvailable) {
|
if (!this.isPushNotificationsAvailable) {
|
||||||
@@ -72,17 +73,22 @@ export class NotificationsService {
|
|||||||
}
|
}
|
||||||
PushNotifications.requestPermissions().then(async (result) => {
|
PushNotifications.requestPermissions().then(async (result) => {
|
||||||
if (result.receive === 'granted') {
|
if (result.receive === 'granted') {
|
||||||
|
console.log('permission granted')
|
||||||
// Register with Apple / Google to receive push via APNS/FCM
|
// Register with Apple / Google to receive push via APNS/FCM
|
||||||
try {
|
try {
|
||||||
PushNotifications.register().catch((error) => {
|
PushNotifications.register().then((value) => {
|
||||||
console.log("Register device", error)
|
console.log("Register device", value)
|
||||||
})
|
|
||||||
this.getAndpostToken("")
|
this.getAndpostToken("")
|
||||||
|
}) .catch((error) => {
|
||||||
|
console.log("Register device error", error)
|
||||||
|
})
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log("Granted permission error", error)
|
console.log("Granted permission error", error)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Show some error
|
// Show some error
|
||||||
|
console.log('permission notification erro')
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -27,7 +27,7 @@
|
|||||||
<div class="buttons width-100">
|
<div class="buttons width-100">
|
||||||
<button (click)="openAddNoteModal('Arquivo')" class="btn-cancel" shape="round" >Arquivar</button>
|
<button (click)="openAddNoteModal('Arquivo')" class="btn-cancel" shape="round" >Arquivar</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="buttons width-100" *ngIf="task.activityInstanceName != 'Assinar Diploma'">
|
<div class="buttons width-100" *ngIf="task.activityInstanceName != 'Assinar Diploma' && task.activityInstanceName != 'Revisar Diploma'">
|
||||||
<button (click)="openExpedientActionsModal('0',task)" class="btn-cancel" shape="round" >Efetuar despacho</button>
|
<button (click)="openExpedientActionsModal('0',task)" class="btn-cancel" shape="round" >Efetuar despacho</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -60,5 +60,5 @@
|
|||||||
|
|
||||||
.desk{
|
.desk{
|
||||||
text-align: left;
|
text-align: left;
|
||||||
background-color: white;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,5 +59,5 @@
|
|||||||
|
|
||||||
.desk{
|
.desk{
|
||||||
text-align: left;
|
text-align: left;
|
||||||
background-color: white;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -143,6 +143,7 @@ export class OptsExpedientePage implements OnInit {
|
|||||||
|
|
||||||
this.attachmentsService.AddAttachment(body).subscribe((res)=> {
|
this.attachmentsService.AddAttachment(body).subscribe((res)=> {
|
||||||
this.toastService._successMessage()
|
this.toastService._successMessage()
|
||||||
|
this.popoverController.dismiss()
|
||||||
}, (error) => {
|
}, (error) => {
|
||||||
this.httpErrorHanlde.httpStatusHandle(error)
|
this.httpErrorHanlde.httpStatusHandle(error)
|
||||||
},()=> {
|
},()=> {
|
||||||
@@ -151,7 +152,7 @@ export class OptsExpedientePage implements OnInit {
|
|||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
this.popoverController.dismiss()
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}, (error) => {
|
}, (error) => {
|
||||||
|
|||||||
@@ -181,7 +181,6 @@ export class NewPublicationPage implements OnInit {
|
|||||||
FileType: 'image'
|
FileType: 'image'
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
newAttachment.needUpload()
|
|
||||||
this.publicationFormMV.form.Files.push(newAttachment)
|
this.publicationFormMV.form.Files.push(newAttachment)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -357,8 +356,8 @@ export class NewPublicationPage implements OnInit {
|
|||||||
|
|
||||||
if(upload) {
|
if(upload) {
|
||||||
this.publicationFormMV.form.Files = this.publicationFormMV.form.Files.map((e:PublicationAttachmentEntity)=> {
|
this.publicationFormMV.form.Files = this.publicationFormMV.form.Files.map((e:PublicationAttachmentEntity)=> {
|
||||||
if(e.FileType == 'video' && e.toUpload) {
|
if(e.FileType == 'video' && e.blobFile && e.toUpload) {
|
||||||
e.OriginalFileName = e.chucksManager.path.replace(".mp4", "")
|
e.OriginalFileName = e?.chucksManager?.path?.replace(".mp4", "") || e.OriginalFileName
|
||||||
e.FileExtension = "mp4"
|
e.FileExtension = "mp4"
|
||||||
}
|
}
|
||||||
return e
|
return e
|
||||||
@@ -408,7 +407,7 @@ export class NewPublicationPage implements OnInit {
|
|||||||
|
|
||||||
if(upload) {
|
if(upload) {
|
||||||
this.publicationFormMV.form.Files = this.publicationFormMV.form.Files.map((e:PublicationAttachmentEntity) => {
|
this.publicationFormMV.form.Files = this.publicationFormMV.form.Files.map((e:PublicationAttachmentEntity) => {
|
||||||
if(e.FileType == 'video' && e.toUpload) {
|
if(e.FileType == 'video' && e.blobFile && e.toUpload) {
|
||||||
e.OriginalFileName = e.chucksManager.path.replace(".mp4", "")
|
e.OriginalFileName = e.chucksManager.path.replace(".mp4", "")
|
||||||
e.FileExtension = "mp4"
|
e.FileExtension = "mp4"
|
||||||
e.Base64 = ""
|
e.Base64 = ""
|
||||||
|
|||||||
@@ -303,7 +303,7 @@ export class PublicationFormMV {
|
|||||||
// this.ObjectMergeNotification.socket.registerWhenConnected(() => {
|
// this.ObjectMergeNotification.socket.registerWhenConnected(() => {
|
||||||
const videosFiles = this.getVideoFiles()
|
const videosFiles = this.getVideoFiles()
|
||||||
|
|
||||||
const videosFilesToUploads = videosFiles.filter( e => e.FileType == "video" && e.toUpload)
|
const videosFilesToUploads = videosFiles.filter( e => e.FileType == "video" && e.toUpload && e.blobFile)
|
||||||
|
|
||||||
const Promises: Promise<any>[] = []
|
const Promises: Promise<any>[] = []
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user